コード例 #1
0
 public ReplicationService(ICallbackHandler <IReplicationClientCallback <R> > clientCallbackHandler, ICallbackHandler <IReplicationServiceCallback <R> > serviceCallbackHandler, IReplicationServiceProxy <R> proxy)
 {
     this.clientCallbackHandler  = clientCallbackHandler;
     this.serviceCallbackHandler = serviceCallbackHandler;
     this.partnerServiceProxy    = proxy;
     state = State.Hot;
 }
コード例 #2
0
        public ReplicationService(State state)
        {
            this.state = state;

            clientCallbackHandler  = new CallbackHandler <IReplicationClientCallback <R> >();
            serviceCallbackHandler = new CallbackHandler <IReplicationServiceCallback <R> >();

            if (this.state == State.StandBy)
            {
                var partnerIpAddress = ConfigurationManager.AppSettings["partnerIpAddress"];
                var partnerPort      = ConfigurationManager.AppSettings["partnerPort"];
                var partnerEndpoint  = ConfigurationManager.AppSettings["endpoint"];

                partnerServiceProxy = new ReplicationServiceProxy <R>();
                partnerServiceProxy.ForwardReplicaEvent += DeliverReplica;
                partnerServiceProxy.Initialize(partnerIpAddress, partnerPort, partnerEndpoint);
                partnerServiceProxy.RegisterToPartner();
            }
        }