示例#1
0
        //public PackageCache ApplicationPackageCache {get;}


        public PhotonServer()
        {
            Http = new HttpServer(this);
            Projects = new ProjectManager();
            Sessions = new ServerSessionManager();
            MessageRegistry = new MessageProcessorRegistry();
            Variables = new VariableSetDocumentManager();
            HealthChecks = new HealthCheckService();
            UserMgr = new UserGroupManager();
            ProjectPackageCache = new ProjectPackageCache();
            ServerConfiguration = new ServerConfigurationManager();
            Agents = new ServerAgentManager();

            ProjectPackages = new ProjectPackageManager {
                PackageDirectory = Configuration.ProjectPackageDirectory,
            };

            ApplicationPackages = new ApplicationPackageManager {
                PackageDirectory = Configuration.ApplicationPackageDirectory,
            };

            Queue = new ScriptQueue {
                MaxDegreeOfParallelism = Configuration.Parallelism,
            };

            ProjectPackages.PackageAdded += ProjectPackages_OnPackageAdded;
        }
示例#2
0
        protected ServerSessionBase()
        {
            SessionId   = Guid.NewGuid().ToString("N");
            TimeCreated = DateTime.UtcNow;
            CacheSpan   = TimeSpan.FromHours(8);
            LifeSpan    = TimeSpan.FromHours(12);
            Output      = new ScriptOutput();

            _log     = new Lazy <ILog>(() => LogManager.GetLogger(GetType()));
            hostList = new ConcurrentDictionary <string, DomainAgentSessionHostBase>(StringComparer.Ordinal);
            PushedProjectPackageList = new List <PackageReference>();
            WorkDirectory            = Path.Combine(Configuration.WorkDirectory, SessionId);
            BinDirectory             = Path.Combine(WorkDirectory, "bin");
            ContentDirectory         = Path.Combine(WorkDirectory, "content");

            projectPackages = new ProjectPackageManager {
                PackageDirectory = Configuration.ProjectPackageDirectory,
            };

            applicationPackages = new ApplicationPackageManager {
                PackageDirectory = Configuration.ApplicationPackageDirectory,
            };

            ConnectionFactory = new DomainConnectionFactory();
            ConnectionFactory.OnConnectionRequest += ConnectionFactory_OnConnectionRequest;

            PackageClient = new DomainPackageClient();
            PackageClient.OnPushProjectPackage     += PackageClient_OnPushProjectPackage;
            PackageClient.OnPushApplicationPackage += PackageClient_OnPushApplicationPackage;
            PackageClient.OnPullProjectPackage     += PackageClient_OnPullProjectPackage;
            PackageClient.OnPullApplicationPackage += PackageClient_OnPullApplicationPackage;

            TokenSource = new CancellationTokenSource();
        }
示例#3
0
        public PackageHost()
        {
            PushedProjectPackageList     = new List <PackageReference>();
            PushedApplicationPackageList = new List <PackageReference>();

            projectPackages     = PhotonServer.Instance.ProjectPackages;
            applicationPackages = PhotonServer.Instance.ApplicationPackages;

            Client = new DomainPackageBoundary();
            Client.OnPushProjectPackage     += PackageClient_OnPushProjectPackage;
            Client.OnPushApplicationPackage += PackageClient_OnPushApplicationPackage;
            Client.OnPullProjectPackage     += PackageClient_OnPullProjectPackage;
            Client.OnPullApplicationPackage += PackageClient_OnPullApplicationPackage;
        }
示例#4
0
        public PhotonServer()
        {
            Projects        = new ProjectManager();
            Sessions        = new ServerSessionManager();
            MessageRegistry = new MessageProcessorRegistry();
            Variables       = new VariableSetDocumentManager();

            ProjectPackages = new ProjectPackageManager {
                PackageDirectory = Configuration.ProjectPackageDirectory,
            };

            ApplicationPackages = new ApplicationPackageManager {
                PackageDirectory = Configuration.ApplicationPackageDirectory,
            };

            Queue = new ScriptQueue {
                MaxDegreeOfParallelism = Configuration.Parallelism,
            };

            ServerConfiguration = new ServerConfigurationManager();
            Agents = new ServerAgentManager();
        }