예제 #1
0
파일: Utils.cs 프로젝트: whiker/rDSN
 public RpcAddress()
 {
     addr      = new dsn_address_t();
     addr.ip   = 0;
     addr.port = 0;
     addr.name = "invalid";
 }
예제 #2
0
        public static dsn_task_t CopyRemoteDirectory(
            dsn_address_t remote,
            string source_dir,
            string dest_dir,
            bool overwrite,
            TaskCode callbackCode,
            Servicelet callbackOwner,
            AioHandler callback,
            int hash = 0
            )
        {
            int        idx  = GlobalInterOpLookupTable.Put(callback);
            dsn_task_t task = Native.dsn_file_create_aio_task(callbackCode, _c_aio_handler_holder, (IntPtr)idx, hash);

            Native.dsn_file_copy_remote_directory(remote, source_dir, dest_dir, overwrite, task, callbackOwner != null ? callbackOwner.tracker() : IntPtr.Zero);
            return(task);
        }
예제 #3
0
 public extern static void          dsn_rpc_call_one_way(dsn_address_t server, dsn_message_t request);
예제 #4
0
 public extern static void          dsn_rpc_call(dsn_address_t server, dsn_task_t rpc_call);
예제 #5
0
 public extern static bool dsn_group_is_leader(dsn_group_t g, dsn_address_t ep);
예제 #6
0
 public extern static bool dsn_group_remove(dsn_group_t g, dsn_address_t ep);
예제 #7
0
파일: NativeCalls.cs 프로젝트: zmyer/rDSN
 public static extern void         dsn_file_copy_remote_files(dsn_address_t remote, string source_dir, string[] source_files, string dest_dir, bool overwrite, dsn_task_t cb);
예제 #8
0
파일: NativeCalls.cs 프로젝트: zmyer/rDSN
 public static extern dsn_message_t dsn_rpc_call_wait(dsn_address_t server, dsn_message_t request); // returned msg must be explicitly msg_release_ref
예제 #9
0
 public extern static void          dsn_rpc_call(dsn_address_t server, dsn_task_t rpc_call, dsn_task_tracker_t tracker);
예제 #10
0
 public extern static void          dsn_msg_to_address(dsn_message_t msg, out dsn_address_t ep);
예제 #11
0
 public extern static void          dsn_primary_address2(out dsn_address_t addr);
예제 #12
0
 public extern static void          dsn_address_build(out dsn_address_t ep, string host, System.UInt16 port);
예제 #13
0
 public extern static void          dsn_address_get_invalid(out dsn_address_t addr);
예제 #14
0
파일: Utils.cs 프로젝트: asd1355215911/rDSN
 public RpcAddress()
 {
     addr = new dsn_address_t();
     addr.ip = 0;
     addr.port = 0;
     addr.name = "invalid";
 }
예제 #15
0
 public static SafeTaskHandle CopyRemoteFiles(
     dsn_address_t remote,
     string source_dir,
     string[] files,
     string dest_dir,
     bool overwrite, 
     TaskCode callbackCode,
     Clientlet callbackOwner,
     AioHandler callback,
     int hash = 0
     )
 {
     int idx = GlobalInterOpLookupTable.Put(callback);
     dsn_task_t task = Native.dsn_file_create_aio_task(callbackCode, _c_aio_handler_holder, (IntPtr)idx, hash, callbackOwner != null ? callbackOwner.tracker() : IntPtr.Zero);
     Native.dsn_file_copy_remote_files(remote, source_dir, files, dest_dir, overwrite, task);
     return new SafeTaskHandle(task, idx);
 }
예제 #16
0
 public static dsn_task_t CopyRemoteDirectory(
     dsn_address_t remote,
     string source_dir,
     string dest_dir,
     bool overwrite,
     TaskCode callbackCode,
     Servicelet callbackOwner,
     AioHandler callback,
     int hash = 0
     )
 {
     int idx = GlobalInterOpLookupTable.Put(callback);
     dsn_task_t task = Native.dsn_file_create_aio_task(callbackCode, _c_aio_handler_holder, (IntPtr)idx, hash);
     Native.dsn_file_copy_remote_directory(remote, source_dir, dest_dir, overwrite, task, callbackOwner != null ? callbackOwner.tracker() : IntPtr.Zero);
     return task;
 }
예제 #17
0
 public extern static void         dsn_file_copy_remote_directory(dsn_address_t remote, string source_dir, string dest_dir, bool overwrite, dsn_task_t cb, dsn_task_tracker_t tracker);
예제 #18
0
파일: NativeCalls.cs 프로젝트: zmyer/rDSN
 public static extern void          dsn_rpc_call(dsn_address_t server, dsn_task_t rpc_call);
예제 #19
0
 public static extern void dsn_address_build(out dsn_address_t ep, string host, System.UInt16 port);
예제 #20
0
파일: NativeCalls.cs 프로젝트: zmyer/rDSN
 public static extern void          dsn_rpc_call_one_way(dsn_address_t server, dsn_message_t request);
예제 #21
0
 public static extern void dsn_address_get_invalid(out dsn_address_t addr);
예제 #22
0
 public extern static string dsn_address_to_string(dsn_address_t addr);
예제 #23
0
 public static extern void dsn_file_copy_remote_directory(dsn_address_t remote, string source_dir, string dest_dir, bool overwrite, dsn_task_t cb, dsn_task_tracker_t tracker);
예제 #24
0
 public extern static void dsn_group_set_leader(dsn_group_t g, dsn_address_t ep);
예제 #25
0
 public static extern void dsn_msg_to_address(dsn_message_t msg, out dsn_address_t ep);
예제 #26
0
 public extern static dsn_address_t dsn_group_next(dsn_group_t g, dsn_address_t ep);
예제 #27
0
 public static extern void dsn_primary_address2(out dsn_address_t addr);
예제 #28
0
 public extern static dsn_message_t dsn_rpc_call_wait(dsn_address_t server, dsn_message_t request); // returned msg must be explicitly msg_release_ref
예제 #29
0
 public static extern void dsn_rpc_call(dsn_address_t server, dsn_task_t rpc_call, dsn_task_tracker_t tracker);
예제 #30
0
 public extern static void         dsn_file_copy_remote_files(dsn_address_t remote, string source_dir, string[] source_files, string dest_dir, bool overwrite, dsn_task_t cb);
예제 #31
0
 public static extern dsn_message_t dsn_rpc_call_wait(dsn_address_t server, dsn_message_t request);
예제 #32
0
 public static void primary_address(out dsn_address_t addr)
 {
     Native.dsn_primary_address2(out addr);
 }
예제 #33
0
 public static void primary_address(out dsn_address_t addr)
 {
     Native.dsn_primary_address2(out addr);
 }
예제 #34
0
 public RpcAddress(dsn_address_t ad)
 {
     addr = ad;
 }
예제 #35
0
파일: Utils.cs 프로젝트: whiker/rDSN
 public RpcAddress(dsn_address_t ad)
 {
     addr = ad;
 }