-#include "rpc/rpc.h"
+#include "lock_server.h"
#include <arpa/inet.h>
-#include <stdlib.h>
-#include <stdio.h>
#include <unistd.h>
-#include "lock_server_cache_rsm.h"
-#include "paxos.h"
-#include "rsm.h"
// Main loop of lock_server
-char tprintf_thread_prefix = 's';
-
-int
-main(int argc, char *argv[])
-{
- int count = 0;
+char log_thread_prefix = 's';
+int main(int argc, char *argv[]) {
setvbuf(stdout, NULL, _IONBF, 0);
setvbuf(stderr, NULL, _IONBF, 0);
- srandom(getpid());
+ srandom((uint32_t)getpid());
if(argc != 3){
- fprintf(stderr, "Usage: %s [master:]port [me:]port\n", argv[0]);
+ cerr << "Usage: " << argv[0] << " [master:]port [me:]port" << endl;
exit(1);
}
- char *count_env = getenv("RPC_COUNT");
- if(count_env != NULL){
- count = atoi(count_env);
- }
-
rsm rsm(argv[1], argv[2]);
- lock_server_cache_rsm ls(&rsm);
- rsm.set_state_transfer((rsm_state_transfer *)&ls);
- rsm.reg(lock_protocol::acquire, &ls, &lock_server_cache_rsm::acquire);
- rsm.reg(lock_protocol::release, &ls, &lock_server_cache_rsm::release);
- rsm.reg(lock_protocol::stat, &ls, &lock_server_cache_rsm::stat);
+ lock_server ls(&rsm);
+ rsm.set_state_transfer(&ls);
+
+ rsm.reg(lock_protocol::acquire, &lock_server::acquire, &ls);
+ rsm.reg(lock_protocol::release, &lock_server::release, &ls);
+ rsm.reg(lock_protocol::stat, &lock_server::stat, &ls);
while(1)
sleep(1000);