Esempio n. 1
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="fileName"></param>
        /// <param name="fileCategory"></param>
        /// <param name="mediaType"></param>
        /// <returns></returns>
        public static File GetFile(string fileName, FileCategory fileCategory, MediaType mediaType)
        {
            string path = "";

            switch (fileCategory)
            {
            case FileCategory.Profile:
                path = Profile.GetDirectoryPath(fileName);
                break;

            case FileCategory.Thumbnail:
                path = Profile.GetThumbnailPath(fileName);

                break;

            case FileCategory.Shared:
                Network.Server server = new Network.Server()
                {
                    LocalIP = "127.0.0.1",
                    Name    = "Current Server"
                };
                path = Shared.GetDirectoryPath(server.GetServerNetworkPath(), fileName, mediaType);
                break;

            case FileCategory.Group:
                path = Group.GetDirectoryPath(fileName);
                break;
            }
            return(File.GetFile(fileName, path));
        }
Esempio n. 2
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="fileName"></param>
        /// <param name="fileCategory"></param>
        /// <returns></returns>
        public static bool IsExist(string fileName, FileCategory fileCategory, MediaType mediaType = MediaType.Image)
        {
            bool isExist = false;

            switch (fileCategory)
            {
            case FileCategory.Profile:
                isExist = File.Exists(Path.Combine(Profile.GetDirectoryPath(fileName), MediaUtility.AddFileExtension(fileName, mediaType)));
                break;

            case FileCategory.Shared:
                Network.Server server = new Network.Server()
                {
                    LocalIP = "127.0.0.1",
                    Name    = "Current Server"
                };
                isExist = File.Exists(Path.Combine(Shared.GetDirectoryPath(server.GetServerNetworkPath(), fileName, mediaType), MediaUtility.AddFileExtension(fileName, mediaType)));
                break;

            case FileCategory.Group:

                isExist = File.Exists(Path.Combine(Group.GetDirectoryPath(fileName), MediaUtility.AddFileExtension(fileName, mediaType)));
                break;
            }
            return(isExist);
        }
Esempio n. 3
0
        static void Main(string[] args)
        {
            var mResetEvent = new ManualResetEvent(false);

            manager = new DefaultCommandManager <CommandName, CommandArgs, byte[]>(typeof(Program).Namespace + ".Commands");

            using (server = new Network.Server())
            {
                server.Start(IPAddress.Any, 4400);
                Console.CancelKeyPress   += (s, e) => mResetEvent.Reset();
                server.OnClientConnected += ServerOnClientConnected;
                Console.WriteLine("Server has started, waiting for clients");
                string command;
                do
                {
                    command = "";
                    command = Console.ReadLine();
                } while (command.ToLower() != "!start");

                Console.WriteLine("Game started.");
                GameManager.StartGame();
                mResetEvent.WaitOne();
                GameManager.StopGame();
            }
        }
Esempio n. 4
0
        static void Main(string[] args)
        {
            int ServerPort = -1;

            Network.Server MyServer;

            //Actual game stuff
            Deck          deck              = new Deck();          //Current deck to deal from
            List <Player> Players           = new List <Player>(); //List of players
            int           round             = 0;
            bool          dealt             = false;               //Have I dealt for this round?
            int           responsesReceived = 0;                   //Responses received this round.

            //Debug
            ServerPort = 3000;//Port I'm listening to

            Console.WriteLine("OpenCards Testing Server\n");

            MyServer = new Network.Server(ServerPort);


            while (true) //Main game loop
            {
                #region  //Check for and deal with messages
                Network.Message tempMessage = MyServer.GetNextMessage();
                if (tempMessage != null)
                {
                    //Console.WriteLine(tempMessage.Sender);
                    if (tempMessage.PayloadType == typeof(Deck))
                    {
                        Deck tempDeck = (Deck)tempMessage.Payload;
                        deck.Add(tempDeck);
                        Console.WriteLine("Got a deck from " + tempDeck.Sender.Name + " at " + tempDeck.Sender.IP);
                    }
                    else if (tempMessage.PayloadType == typeof(Player))
                    {
                        Player tempPlayer = (Player)tempMessage.Payload;
                        Players.Add(tempPlayer);
                        //Console.WriteLine(tempPlayer.ToString());
                    }
                    else if (tempMessage.PayloadType == typeof(Response))
                    {
                        Response tempResponse = (Response)tempMessage.Payload;
                        Console.WriteLine(tempResponse.ToString());
                    }
                }
                #endregion

                //If haven't dealt, deal

                //If all responses have come in, send responses to all players

                //If last Response came from Czar and all responses have been received, notify all players of the round winner, send Gamestate to all players
            }



            //End of Main
        }
Esempio n. 5
0
 private static void Main(string[] args)
 {
     using (var server = new Network.Server())
     {
         Console.WriteLine("NanoGames Server running.");
         Console.ReadKey(false);
     }
 }
Esempio n. 6
0
        private void Initialize(int port, int timeout)
        {
            pendingAcks = new Dictionary <int, int>();

            Sockets = new List <Socket>();
            server  = new Network.Server(port, timeout);
            server.ClientConnected += Server_ClientConnected;
            Task.Run(server.StartListening).ConfigureAwait(true);
        }
Esempio n. 7
0
        protected Server(HostEndPoint endPeer)
        {
            Host = new Network.Server(endPeer);

#if USE_RAVENDB
            Database = new RavenDatabaseManager();
#else
            Database = new NullDatabaseManager();
#endif
        }
Esempio n. 8
0
        protected Server(HostEndPoint endPeer)
        {
            Host = new Network.Server(endPeer);

            #if USE_RAVENDB
            Database = new RavenDatabaseManager();
            #else
            Database = new NullDatabaseManager();
            #endif
        }
Esempio n. 9
0
        public WorldManager(Network.Server server)
        {
            this.Server = server;
            this.Users = new Dictionary<int, User>();
            this.eatenFood = new List<int>(100);

            Tuple<int, int> mapSize = Program.Settings["mapSize"];
            WorldValues.MapWidth = mapSize.Item1;
            WorldValues.MapHeight = mapSize.Item2;
            WorldValues.StartingMass = Program.Settings["pcellStartMass"];
            WorldValues.FoodMass = Program.Settings["foodMass"];
        }
Esempio n. 10
0
        public static void Initialize()
        {
            #region .NET Remoting Service Setup

            RemotingServer RemoteInterface = new RemotingServer(CONST_SERVER_NAME, CONST_REMOTE_PORT);
            RemoteInterface.RegisterType("RealmListServer", typeof(RemoteRealmListServer));

            RemoteInterface.Enabled = true;

            #endregion

            m_Server = new Network.Server();
        }
Esempio n. 11
0
        static void Main(string[] args)
        {
            int       ServerPort = -1;
            int       ClientPort = -1;
            IPAddress ServerIP   = null;

            Network.Client MyClient;
            Network.Server MyServer;

            //Debug
            ServerIP   = IPAddress.Parse("127.0.0.1");
            ServerPort = 3000; //Port I'm sending to
            ClientPort = 2001; //Port I'm listening

            Console.WriteLine("OpenCards Testing Client\n");

            while (ServerIP == null)
            {
                Console.Write("Please enter a the server IP: ");
                try
                {
                    ServerIP = IPAddress.Parse(Console.ReadLine());
                    break;
                }
                catch
                {
                    Console.WriteLine();
                    Console.WriteLine("ERROR. Failed to parse IP.");
                }
            }

            while (ServerPort <= 1 || ServerPort >= 49151)
            {
                Console.Write("Please enter the server's port number: ");
                try
                {
                    ServerPort = Convert.ToInt16(Console.ReadLine());
                    if (ServerPort > 1 && ServerPort < 49151)
                    {
                        break;
                    }
                }
                catch { }

                Console.WriteLine();
                Console.WriteLine("ERROR. Invalid port number.");
            }

            while (ClientPort <= 1 || ClientPort >= 49151)
            {
                Console.Write("Please enter a forwarded port number: ");
                try
                {
                    ClientPort = Convert.ToInt16(Console.ReadLine());
                    if (ClientPort > 1 && ClientPort < 49151)
                    {
                        break;
                    }
                }
                catch { }

                Console.WriteLine();
                Console.WriteLine("ERROR. Invalid port number.");
            }



            Console.Write("Connecting to server at ");
            Console.Write(ServerIP);
            Console.Write(":");
            Console.WriteLine(ServerPort + "\n");


            MyClient              = new Network.Client(ServerPort); //Port I'm sending to
            MyClient.ServerIP     = ServerIP.ToString();
            MyClient.ExternalPort = ClientPort;                     //Port I'm listening to
            MyServer              = new Network.Server(ClientPort); //Port I'm listening to

            Console.WriteLine("Sending greeting\n");
            Player MyPlayer = new Player("Cad'ika");

            MyPlayer.IP   = MyClient.ExternalIP;
            MyPlayer.Port = ClientPort;
            MyClient.SendMessage(MyPlayer);

            //Console.WriteLine("Sending 2 cards\n");
            //MyClient.SendMessage(new Card("Test card #1"));
            //MyClient.SendMessage(new Card("Test card #2"));

            //Console.WriteLine("Sending 2 black cards\n");
            //MyClient.SendMessage(new BlackCard("Black ______ #1", 1));
            //MyClient.SendMessage(new BlackCard("______ ______ #2", 2));

            Console.WriteLine("Sending a deck\n");
            Deck tempDeck = new Deck("TestingClient Deck");

            tempDeck.Add(new Card("Test deck card #1"));
            tempDeck.Add(new Card("Test deck card #2"));
            tempDeck.Add(new Card("Test deck card #3"));
            tempDeck.Add(new BlackCard("Testing a ______ card for _____.", 2));
            tempDeck.Sender = MyPlayer;
            MyClient.SendMessage(tempDeck);



            Console.ReadLine();
        }
Esempio n. 12
0
        /// <summary>
        /// Thread that is waiting for signals to perform checks.
        /// </summary>
        private void ExecutiveThread()
        {
            log.Info("()");

            executiveThreadFinished.Reset();

            List <WaitHandle> handleList = new List <WaitHandle>();

            handleList.Add(ShutdownSignaling.ShutdownEvent);
            foreach (CronJob job in jobs.Values)
            {
                handleList.Add(job.Event);
            }

            WaitHandle[] handles = handleList.ToArray();

            Data.Database database = (Data.Database)Base.ComponentDictionary["Data.Database"];
            Network.LocationBasedNetwork locationBasedNetwork = (Network.LocationBasedNetwork)Base.ComponentDictionary["Network.LocationBasedNetwork"];
            ImageManager imageManager = (ImageManager)Base.ComponentDictionary["Data.ImageManager"];

            Network.Server server = (Network.Server)Base.ComponentDictionary["Network.Server"];
            Network.NeighborhoodActionProcessor neighborhoodActionProcessor = (Network.NeighborhoodActionProcessor)Base.ComponentDictionary["Network.NeighborhoodActionProcessor"];
            Network.CAN.ContentAddressNetwork   contentAddressNetwork       = (Network.CAN.ContentAddressNetwork)Base.ComponentDictionary["Network.ContentAddressNetwork"];

            while (!ShutdownSignaling.IsShutdown)
            {
                log.Info("Waiting for event.");

                int index = WaitHandle.WaitAny(handles);
                if (handles[index] == ShutdownSignaling.ShutdownEvent)
                {
                    log.Info("Shutdown detected.");
                    break;
                }

                CronJob job = null;
                foreach (CronJob cronJob in jobs.Values)
                {
                    if (handles[index] == cronJob.Event)
                    {
                        job = cronJob;
                        break;
                    }
                }

                log.Trace("Job '{0}' activated.", job.Name);
                switch (job.Name)
                {
                case "checkFollowersRefresh":
                    database.CheckFollowersRefresh();
                    break;

                case "checkExpiredHostedIdentities":
                    database.CheckExpiredHostedIdentities();
                    break;

                case "checkExpiredNeighbors":
                    if (locationBasedNetwork.LocServerInitialized)
                    {
                        database.CheckExpiredNeighbors();
                    }
                    else
                    {
                        log.Debug("LOC component is not in sync with the LOC server yet, checking expired neighbors will not be executed now.");
                    }
                    break;

                case "deleteUnusedImages":
                    imageManager.ProcessImageDeleteList();
                    break;

                case "refreshLocData":
                    locationBasedNetwork.RefreshLoc();
                    break;

                case "checkInactiveClientConnections":
                    server.CheckInactiveClientConnections();
                    break;

                case "checkNeighborhoodActionList":
                    neighborhoodActionProcessor.CheckActionList();
                    break;

                case "ipnsRecordRefresh":
                    contentAddressNetwork.IpnsRecordRefresh().Wait();
                    break;
                }
            }

            executiveThreadFinished.Set();

            log.Info("(-)");
        }
Esempio n. 13
0
        /// <summary>
        /// Allows the game to run logic such as updating the world,
        /// checking for collisions, gathering input, and playing audio.
        /// </summary>
        /// <param name="gameTime">Provides a snapshot of timing values.</param>
        public void Update(GameTime gameTime)
        {
            // Read input.
            Vector2 screenDim = _spriteBatch.GetScreenDimensions();
            _input = Input.GetState(screenDim,  _renderer.RenderState.ScreenToWorldCoordinates);
            _renderer.RenderState.UpdateAspectRatio(screenDim);

            _tickTime = gameTime.ElapsedGameTime.TotalMilliseconds;

            if (_input.IsActive(Keys.LeftControl) && _input.IsActive(Keys.Q))
            {
                IsRunning = false;
                return;
            }
            if (_input.IsActive(Keys.LeftControl) && _input.IsActive(Keys.S) && !_startServer)
            {
                _startServer = true;
                _trollServer = new Network.Server(6667);
                _trollServer.start();
            }
            if (_input.IsActive(Keys.LeftShift) && _input.IsActive(Keys.S) && _startServer)
            {
                _trollServer.stop();
                _startServer = false;
            }
            if (_input.IsActive(Keys.LeftControl) && _input.IsActive(Keys.C) && !_startClient)
            {
                _startClient = true;
                _trollClient= new Network.Client("192.168.0.3",6667);
                _trollClient.start();
            }
            if (_input.IsActive(Keys.LeftShift) && _input.IsActive(Keys.C) && _startClient)
            {
                _trollClient.stop();
                _startClient = false;
            }
                
            // It is important that _worldDate is updated first of all,
            // since the other components depend on it being in sync.
            _worldDate.Update(gameTime);

            // We update the views in reverse order,
            // because if the input state gets updated by an entity,
            // enties behind (meaning draw before, meaning having a higher index in _views) it
            // should get notified, but not entities in front of it.
            foreach (IView view in _views.Reverse())
            {
                view.Update(_input);
            }

            foreach (IModel entity in _models)
            {
                entity.Update(_worldDate);
            }

            UpdateCamera();

            Debug.WriteToScreen("Slow"     , gameTime.IsRunningSlowly ? "Yes" : "No");
            Debug.WriteToScreen("Zoom"     , _renderer.RenderState.Camera.Zoom);
            Debug.WriteToScreen("Mouse"    , _input.ScreenMouse);
            Debug.WriteToScreen("Mouse rel", _input.MouseRelativeToCenter);
        }
Esempio n. 14
0
 void StartServer()
 {
     server = new Network.Server();
     server.Start();
 }