コード例 #1
0
        public CommonSettingsProvider(IServerApi serverApi, INPerson person)
        {
            INSettings personalSettings = serverApi.GetPersonalSettings();

            _person = person;
            ReloadSettings(personalSettings);
        }
コード例 #2
0
        public static async Task HandlePacketAsync(this IServerApi api, JObject packetObj)
        {
            var packetType = Enum.Parse <PacketType>(packetObj.Value <string>("Type"));

            if (packetType == PacketType.CS_Login)
            {
                var packet = packetObj.ToObject <CS_Login>();
                await api.Handle_CS_Login(packet);
            }
            else if (packetType == PacketType.CS_Start)
            {
                var packet = packetObj.ToObject <CS_Start>();
                await api.Handle_CS_Start(packet);
            }
            else if (packetType == PacketType.CS_GetNextPiece)
            {
                var packet = packetObj.ToObject <CS_GetNextPiece>();
                await api.Handle_CS_GetNextPiece(packet);
            }
            else if (packetType == PacketType.CS_Board)
            {
                var packet = packetObj.ToObject <CS_Board>();
                await api.Handle_CS_Board(packet);
            }
        }
コード例 #3
0
 public bool registerServer(string PID, string url)
 {
     try
     {
         lock (servers)
         {
             if (!servers.ContainsKey(PID))
             {
                 IServerApi server = (IServerApi)Activator.GetObject(typeof(IServerApi), url);
                 Task.Run(() => server.open());
                 servers.Add(PID, new Tuple <IServerApi, string, bool>(server, url, true));
                 server.sendClientsList(processClientsListToSend());
             }
         }
         return(true);
     }
     catch (RemotingException)
     {
         Console.WriteLine("Problems getting Object IServerApi from: " + url);
         return(false);
     }
     catch (ArgumentNullException)
     {
         Console.WriteLine("Problems trying to regist server on master server: " + url + " arguments null.");
         return(false);
     }
     catch (Exception e)
     {
         Console.WriteLine("Problems trying to regist server on master server: " + url + " exception: ");
         Console.WriteLine(e.ToString());
         return(false);
     }
 }
コード例 #4
0
        private void Configure()
        {
            configuration = new Configuration
            {
                Username = "******",
                Password = "******",
            };

            dcApi     = new DataCenterApi(configuration);
            serverApi = new ServerApi(configuration);
            nicApi    = new NetworkInterfacesApi(configuration);
            lbApi     = new LoadBalancerApi(configuration);

            //Create a datacenter.
            if (datacenter == null)
            {
                datacenter = new Datacenter
                {
                    Properties = new DatacenterProperties
                    {
                        Name        = ".Net V2 - Test " + DateTime.Now.ToShortTimeString(),
                        Description = "Unit test for .Net SDK PB REST V2",
                        Location    = "us/lasdev"
                    }
                };

                datacenter = dcApi.Create(datacenter);
            }

            if (server == null)
            {
                server = new Server
                {
                    Properties = new ServerProperties
                    {
                        Name  = ".Net V2 - Test " + DateTime.Now.ToShortTimeString(),
                        Cores = 1,
                        Ram   = 256
                    }
                };

                server = serverApi.Create(datacenter.Id, server);
                DoWait(server.Request);
            }

            if (lb == null)
            {
                lb = new Loadbalancer
                {
                    Properties = new LoadbalancerProperties {
                        Name = ".Net V2 - Test " + DateTime.Now.ToShortTimeString()
                    }
                };

                lb = lbApi.Create(datacenter.Id, lb);

                DoWait(lb.Request);
            }
        }
コード例 #5
0
        public Repository(IServerApi serverApi, ServerCallback serverCallback)
        {
            _serverApi = serverApi;
            var info = _serverApi.GetDatabaseInfo();

            _serverCallback = serverCallback;
            serverCallback.SetCallbackListener(this, this);
        }
コード例 #6
0
 public ServerListCommand(ILogger logger, IServerApi serversApi, IRepository <Server> serversRepository, IRepository <Credentials> credentialsRepository, IServerPresenter serversPresenter)
 {
     this.logger                = logger?.ForContext <ServerListCommand>() ?? throw new ArgumentNullException(nameof(logger));
     this.serversApi            = serversApi ?? throw new ArgumentNullException(nameof(serversApi));
     this.serversRepository     = serversRepository ?? throw new ArgumentNullException(nameof(serversRepository));
     this.credentialsRepository = credentialsRepository ?? throw new ArgumentNullException(nameof(credentialsRepository));
     this.serversPresenter      = serversPresenter ?? throw new ArgumentNullException(nameof(serversPresenter));
 }
コード例 #7
0
ファイル: Backend.cs プロジェクト: kozintsev/Pilot.Web
 public Backend(IServerApi serverApi, DDatabaseInfo databaseInfo, IMessagesApi messagesApi, IChangesetUploader changesetUploader)
 {
     _serverApi         = serverApi;
     _databaseInfo      = databaseInfo;
     _messagesApi       = messagesApi;
     _changesetUploader = changesetUploader;
     _metadata          = _serverApi.GetMetadata(databaseInfo.MetadataVersion);
     _types             = _metadata.Types.ToDictionary(k => k.Id, v => v);
     _currentPerson     = databaseInfo.Person;
 }
コード例 #8
0
        public ServerApiService(IServerApi serverApi, DDatabaseInfo dbInfo, ISearchServiceFactory searchServiceFactory, IBackend backend)
        {
            _serverApi            = serverApi;
            _dbInfo               = dbInfo;
            _searchServiceFactory = searchServiceFactory;
            _currentPerson        = dbInfo.Person;
            _backend              = backend;

            LoadPeople();
            LoadOrganizationUnits();
            LoadMetadata(0);
        }
コード例 #9
0
 private static bool registAsSecundary()
 {
     try
     {
         server = (IServerApi)Activator.GetObject(typeof(IServerApi), RemoteServer.serversPossiblePrimary.First());
         Task.Run(() => server.open());
         server.registerServer(PID_init, URL_init);
         return(true);
     }
     catch (Exception)
     {
         return(false);
     }
 }
コード例 #10
0
        private void AddObjectsToArchive(IServerApi serverApi, List <DObject> objects, ZipArchive archive, IDictionary <int, MType> types, string currentPath)
        {
            foreach (var obj in objects)
            {
                if (!types[obj.TypeId].Children.Any())
                {
                    var dFile = obj.ActualFileSnapshot.Files.FirstOrDefault();
                    if (dFile == null)
                    {
                        continue;
                    }

                    var fileId   = dFile.Body.Id;
                    var fileSize = dFile.Body.Size;
                    var fileBody = serverApi.GetFileChunk(fileId, 0, (int)fileSize);

                    if (archive.Entries.Any(x => x.Name == dFile.Name))
                    {
                        dFile.Name += " Conflicted";
                    }
                    var zipEntry = archive.CreateEntry(Path.Combine(currentPath, dFile.Name), CompressionLevel.NoCompression);

                    //Get the stream of the attachment
                    using (var originalFileStream = new MemoryStream(fileBody))
                        using (var zipEntryStream = zipEntry.Open())
                        {
                            //Copy the attachment stream to the zip entry stream
                            originalFileStream.CopyTo(zipEntryStream);
                        }
                }
                else
                {
                    var name           = obj.GetTitle(types[obj.TypeId]);
                    var directoryPath  = Path.Combine(currentPath, name);
                    var objChildrenIds = obj.Children.Select(x => x.ObjectId).ToArray();
                    if (!objChildrenIds.Any())
                    {
                        continue;
                    }

                    var objChildren = serverApi.GetObjects(objChildrenIds);
                    AddObjectsToArchive(serverApi, objChildren, archive, types, directoryPath);
                }
            }
        }
コード例 #11
0
 public Repository(IServerApi serverApi, ServerCallback serverCallback)
 {
     _serverApi = serverApi;
     serverCallback.SetCallbackListener(this);
 }
コード例 #12
0
 public FlightSearch(IServerApi IServerApi, IConfiguration config, IMemoryCache memoryCache)
 {
     _IServerApi  = IServerApi;
     _config      = config;
     _memoryCache = memoryCache;
 }
コード例 #13
0
ファイル: Account.cs プロジェクト: AlpinistInfotech/Wing1
 public Account(IServerApi IServerApi)
 {
     _IServerApi = IServerApi;
 }
コード例 #14
0
ファイル: Api.cs プロジェクト: Fooxboy/Fooxboy.OldTanksServer
 public Api(Server server, IAccount account = null, IGarage garage = null, IBannedIPs bannedIps = null, IChatApi chat = null, IServerApi serverApi = null)
 {
     Account  = account ?? new Account();
     Garage   = garage ?? new Garage();
     BannedIP = bannedIps ?? new BannedIPs();
     Chat     = chat ?? new Chat(server.Lobbies, server.Logger, server.Api);
     Server   = serverApi ?? new ServerApi(server);
 }
コード例 #15
0
        /// <summary>
        /// Internal method for initializing the addon with the API.
        /// </summary>
        /// <param name="serverApi">The server API instance.</param>
        internal void InternalInitialize(IServerApi serverApi)
        {
            ServerApi = serverApi;

            Initialize(serverApi);
        }
コード例 #16
0
        private void Configure()
        {
            Configuration = new Configuration
            {
                Username = "******",
                Password = "******",

            };

            dcApi = new DataCenterApi(configuration);
            serverApi = new ServerApi(configuration);
            nicApi = new NetworkInterfacesApi(configuration);
            lbApi = new LoadBalancerApi(configuration);
            fwApi = new FirewallRuleApi(configuration);

            //Create a datacenter.
            if (datacenter == null)
            {
                datacenter = new Datacenter
                {
                    Properties = new DatacenterProperties
                    {
                        Name = ".Net V2 - Test " + DateTime.Now.ToShortTimeString(),
                        Description = "Unit test for .Net SDK PB REST V2",
                        Location = "us/lasdev"
                    }
                };

                datacenter = dcApi.Create(datacenter);
            }

            if (server == null)
            {
                server = new Server
                {
                    Properties = new ServerProperties
                    {
                        Name = ".Net V2 - Test " + DateTime.Now.ToShortTimeString(),
                        Cores = 1,
                        Ram = 256
                    }
                };

                server = serverApi.Create(datacenter.Id, server);
                DoWait(server.Request);
            }

            if (nic == null)
            {
                nic = new Nic { Properties = new NicProperties { Lan = 1 } };

                nic = nicApi.Create(datacenter.Id, server.Id, nic);

                DoWait(nic.Request);
            }

            bool isBusy = true;
            while (isBusy == true)
            {
                var temp = dcApi.FindById(datacenter.Id);
                if (temp.Metadata.State != "BUSY") isBusy = false;
                Thread.Sleep(5000);
            }
        }
コード例 #17
0
 /// <summary>
 /// Called when the addon is loaded and can be initialized.
 /// </summary>
 /// <param name="serverApi">The server API interface.</param>
 public abstract void Initialize(IServerApi serverApi);
コード例 #18
0
 public void connectServer(string url)
 {
     server = (IServerApi)Activator.GetObject(typeof(IServerApi), url);
     Task.Run(() => server.open());
 }
コード例 #19
0
        private void Configure()
        {
            Configuration = new Configuration
            {
                Username = "******",
                Password = "******",
            };

            dcApi     = new DataCenterApi(configuration);
            serverApi = new ServerApi(configuration);
            nicApi    = new NetworkInterfacesApi(configuration);
            lbApi     = new LoadBalancerApi(configuration);
            fwApi     = new FirewallRuleApi(configuration);

            //Create a datacenter.
            if (datacenter == null)
            {
                datacenter = new Datacenter
                {
                    Properties = new DatacenterProperties
                    {
                        Name        = ".Net V2 - Test " + DateTime.Now.ToShortTimeString(),
                        Description = "Unit test for .Net SDK PB REST V2",
                        Location    = "us/lasdev"
                    }
                };

                datacenter = dcApi.Create(datacenter);
            }

            if (server == null)
            {
                server = new Server
                {
                    Properties = new ServerProperties
                    {
                        Name  = ".Net V2 - Test " + DateTime.Now.ToShortTimeString(),
                        Cores = 1,
                        Ram   = 256
                    }
                };

                server = serverApi.Create(datacenter.Id, server);
                DoWait(server.Request);
            }

            if (nic == null)
            {
                nic = new Nic {
                    Properties = new NicProperties {
                        Lan = 1
                    }
                };

                nic = nicApi.Create(datacenter.Id, server.Id, nic);

                DoWait(nic.Request);
            }

            bool isBusy = true;

            while (isBusy == true)
            {
                var temp = dcApi.FindById(datacenter.Id);
                if (temp.Metadata.State != "BUSY")
                {
                    isBusy = false;
                }
                Thread.Sleep(5000);
            }
        }
コード例 #20
0
        private void Configure()
        {
            configuration = new Configuration
            {
                Username = "******",
                Password = "******",

            };

            dcApi = new DataCenterApi(configuration);
            serverApi = new ServerApi(configuration);
            nicApi = new NetworkInterfacesApi(configuration);
            lbApi = new LoadBalancerApi(configuration);

            //Create a datacenter.
            if (datacenter == null)
            {
                datacenter = new Datacenter
                {
                    Properties = new DatacenterProperties
                    {
                        Name = ".Net V2 - Test " + DateTime.Now.ToShortTimeString(),
                        Description = "Unit test for .Net SDK PB REST V2",
                        Location = "us/lasdev"
                    }
                };

                datacenter = dcApi.Create(datacenter);
            }

            if(server == null)
            {
                server = new Server
                {
                    Properties = new ServerProperties
                    {
                        Name = ".Net V2 - Test " + DateTime.Now.ToShortTimeString(),
                        Cores = 1,
                        Ram = 256
                    }
                };

                server = serverApi.Create(datacenter.Id, server);
                DoWait(server.Request);
            }

            if (lb == null)
            {
                lb = new Loadbalancer
                {
                    Properties = new LoadbalancerProperties { Name = ".Net V2 - Test " + DateTime.Now.ToShortTimeString() }
                };

                lb = lbApi.Create(datacenter.Id, lb);

                DoWait(lb.Request);
            }
        }