Ejemplo n.º 1
0
 public bool CreateConnector(ConnectorParam param)
 {
     this.DestroyConnector();
     if (param == null)
     {
         return(false);
     }
     this.initParam = param;
     this.connected = false;
     this.connector = IApollo.Instance.CreateApolloConnection(ApolloConfig.platform, (uint)0xffffff, param.url);
     if (this.connector == null)
     {
         return(false);
     }
     Console.WriteLine("Create Connect Entered!{0}  {1}", ApolloConfig.platform, param.url);
     this.connector.ConnectEvent    += new ConnectEventHandler(this.onConnectEvent);
     this.connector.DisconnectEvent += new DisconnectEventHandler(this.onDisconnectEvent);
     this.connector.ReconnectEvent  += new ReconnectEventHandler(this.onReconnectEvent);
     this.connector.ErrorEvent      += new ConnectorErrorEventHandler(this.onConnectError);
     this.connector.SetSecurityInfo(param.enc, param.keyMaking, ConnectorParam.DH);
     if (this.connector.Connect(connectTimeout) != ApolloResult.Success)
     {
         return(false);
     }
     return(true);
 }
Ejemplo n.º 2
0
        //MARK: Connect Operations
        public void Connect(string ip, uint port, ProtocolType type, string dhp = null)
        {
            _type = type;
            Log(string.Format("Connect ProtocolType.{0} ip:{1} port:{2} dhp:{3}", type, ip, port, dhp));

            _sequence = 0;
            _protocol = new ProtocolPackage();

            if (dhp == null)
            {
                dhp = _dhp;
            }

            if (type == ProtocolType.UDP)
            {
                _connector = IApollo.Instance.CreateApolloConnection(ApolloPlatform.None, "lwip://" + ip + ":" + port);
            }
            else
            {
                _connector = IApollo.Instance.CreateApolloConnection(ApolloPlatform.None, "tcp://" + ip + ":" + port);
            }

            _connector.ConnectEvent    += new ConnectEventHandler(ApolloConnectHandler);
            _connector.RecvedDataEvent += new RecvedDataHandler(ApolloRecievedDataEventHandler);
            _connector.ErrorEvent      += new ConnectorErrorEventHandler(ApolloErrorHandler);
            _connector.DisconnectEvent += new DisconnectEventHandler(ApolloDisconnectHandler);
            _connector.ReconnectEvent  += new ReconnectEventHandler(ApolloReconnectHandler);

            _connector.SetSecurityInfo(ApolloEncryptMethod.None, ApolloKeyMaking.None, dhp);
            ApolloResult r = _connector.Connect();

            Log(string.Format("Connect... ApolloResult.{0}", r));
        }
Ejemplo n.º 3
0
 public override IApolloTalker CreateTalker(IApolloConnector connector)
 {
     if (ApolloCommon.ApolloInfo == null)
     {
         throw new Exception("IApollo.Instance.Initialize must be called first!");
     }
     return(new ApolloTalker(connector));
 }
Ejemplo n.º 4
0
 public ApolloTalker(IApolloConnector connector) : base(false, true)
 {
     this.connector = connector;
     if (connector == null)
     {
         throw new Exception("Invalid Argument");
     }
     this.AutoUpdate = true;
 }
Ejemplo n.º 5
0
 public ApolloTalker(IApolloConnector connector) : base(false, true)
 {
     this.apolloMessageCollections = new CircularCollection <ApolloMessage>(100);
     this.connector = connector;
     if (connector == null)
     {
         throw new Exception("Invalid Argument");
     }
     this.AutoUpdate = true;
 }
Ejemplo n.º 6
0
 public ApolloHttpRequest(IApolloConnector connector)
 {
     this.connector = connector;
     if (connector == null)
     {
         throw new Exception("Invalid Argument");
     }
     this.talker = IApollo.Instance.CreateTalker(connector);
     this.SetMethod("GET");
     this.SetHeader("apollo-server-ip", "127.0.0.1");
 }
Ejemplo n.º 7
0
        public IApolloHttpRequest CreateRequest(IApolloConnector connector)
        {
            if (connector == null)
            {
                return(null);
            }
            IApolloHttpRequest item = new ApolloHttpRequest(connector);

            this.requestPool.Add(item);
            return(item);
        }
Ejemplo n.º 8
0
 public override void DestroyApolloConnector(IApolloConnector connector)
 {
     ADebug.Log("DestroyApolloConnector");
     if (connector != null)
     {
         ApolloConnector connector2 = connector as ApolloConnector;
         if (connector2 != null)
         {
             connector2.Destroy();
         }
     }
 }
Ejemplo n.º 9
0
 public void DestroyConnector()
 {
     if (this.connector != null)
     {
         this.connector.ConnectEvent    -= new ConnectEventHandler(this.onConnectEvent);
         this.connector.DisconnectEvent -= new DisconnectEventHandler(this.onDisconnectEvent);
         this.connector.ReconnectEvent  -= new ReconnectEventHandler(this.onReconnectEvent);
         this.connector.ErrorEvent      -= new ConnectorErrorEventHandler(this.onConnectError);
         this.connector.Disconnect();
         IApollo.Instance.DestroyApolloConnector(this.connector);
         this.connector = null;
         this.connected = false;
     }
 }
Ejemplo n.º 10
0
 public void DestroyConnector()
 {
     if (this.connector != null)
     {
         this.connector.remove_ConnectEvent(new ConnectEventHandler(this.onConnectEvent));
         this.connector.remove_DisconnectEvent(new DisconnectEventHandler(this.onDisconnectEvent));
         this.connector.remove_ReconnectEvent(new ReconnectEventHandler(this.onReconnectEvent));
         this.connector.remove_ErrorEvent(new ConnectorErrorEventHandler(this.onConnectError));
         this.connector.Disconnect();
         IApollo.get_Instance().DestroyApolloConnector(this.connector);
         this.connector = null;
         this.connected = false;
     }
 }
Ejemplo n.º 11
0
        public override void DestroyApolloConnector(IApolloConnector connector)
        {
            ADebug.Log("DestroyApolloConnector");
            if (connector == null)
            {
                return;
            }
            ApolloConnector apolloConnector = connector as ApolloConnector;

            if (apolloConnector != null)
            {
                apolloConnector.Destroy();
            }
        }
Ejemplo n.º 12
0
 public bool CreateConnector(ConnectorParam param)
 {
     this.DestroyConnector();
     if (param == null)
     {
         return(false);
     }
     this.initParam = param;
     this.connected = false;
     this.connector = IApollo.get_Instance().CreateApolloConnection(ApolloConfig.platform, 16777215u, param.url);
     if (this.connector == null)
     {
         return(false);
     }
     Console.WriteLine("Create Connect Entered!{0}  {1}", ApolloConfig.platform, param.url);
     this.connector.add_ConnectEvent(new ConnectEventHandler(this.onConnectEvent));
     this.connector.add_DisconnectEvent(new DisconnectEventHandler(this.onDisconnectEvent));
     this.connector.add_ReconnectEvent(new ReconnectEventHandler(this.onReconnectEvent));
     this.connector.add_ErrorEvent(new ConnectorErrorEventHandler(this.onConnectError));
     this.connector.SetSecurityInfo(param.enc, param.keyMaking, ConnectorParam.DH);
     return(this.connector.Connect(BaseConnector.connectTimeout) == null);
 }
Ejemplo n.º 13
0
        public void Close()
        {
            if (_connector != null)
            {
                _connector.ConnectEvent    -= new ConnectEventHandler(ApolloConnectHandler);
                _connector.RecvedDataEvent -= new RecvedDataHandler(ApolloRecievedDataEventHandler);
                _connector.ErrorEvent      -= new ConnectorErrorEventHandler(ApolloErrorHandler);
                _connector.DisconnectEvent -= new DisconnectEventHandler(ApolloDisconnectHandler);
                _connector.ReconnectEvent  -= new ReconnectEventHandler(ApolloReconnectHandler);
                if (_connector.Connected)
                {
                    _connector.Disconnect();
                }
                _connector = null;
            }

            if (_protocol != null)
            {
                _protocol.Clear();
                _protocol = null;
            }
        }
Ejemplo n.º 14
0
 public abstract IApolloTalker CreateTalker(IApolloConnector connector);
Ejemplo n.º 15
0
 public abstract void DestroyApolloConnector(IApolloConnector Connector);