public StitchInstanceManager(StitchesConfiguration configuration, StitchFileSystem fileSystem)
 {
     _fileSystem = fileSystem;
     // TODO: We need a way to get the unique string name of the node at this point.
     _adaptorFactory = new StitchAdaptorFactory(configuration, _fileSystem);
     _adaptors       = new StitchAdaptorCollection();
 }
        public static StitchesConfiguration GetDefault()
        {
            var config = ConfigurationLoader.TryGetConfiguration <StitchesConfiguration>("stitches.json");

            if (config == null)
            {
                System.Console.WriteLine("COULD NOT FIND STITCHES CONFIG");
                config = new StitchesConfiguration();
                config.ValidateAndSetDefaults();
            }
            return(config);
        }
示例#3
0
        public StitchesModule(CrossStitchCore core, StitchesConfiguration configuration = null)
        {
            _messageBus   = core.MessageBus;
            configuration = configuration ?? StitchesConfiguration.GetDefault();
            var fileSystem = new StitchFileSystem(configuration, new DateTimeVersionManager());
            var manager    = new StitchInstanceManager(configuration, fileSystem);
            var log        = new ModuleLog(_messageBus, Name);
            var observer   = new StitchEventObserver(_messageBus, log);
            var data       = new DataHelperClient(core.MessageBus);
            var notifier   = new StitchEventNotifier(_messageBus);

            _service = new StitchesService(core, data, fileSystem, manager, observer, log, notifier);
        }
示例#4
0
        public StitchesModule(CrossStitchCore core, StitchesConfiguration configuration = null)
        {
            configuration = configuration ?? StitchesConfiguration.GetDefault();
            var log  = new ModuleLog(core.MessageBus, Name);
            var data = new DataHelperClient(core.MessageBus);

            var observer       = new StitchEventObserver(core.MessageBus, data, log);
            var fileSystem     = new StitchFileSystem(configuration, new DateTimeVersionManager());
            var adaptorFactory = new StitchAdaptorFactory(core, configuration, fileSystem, log, observer);
            var manager        = new StitchInstanceManager(fileSystem, adaptorFactory);

            var notifier = new StitchEventNotifier(core.MessageBus);

            _service       = new StitchesService(core, data, fileSystem, manager, log, notifier);
            _subscriptions = new SubscriptionCollection(core.MessageBus);
        }
示例#5
0
 public StitchFileSystem(StitchesConfiguration config, IVersionManager versions)
 {
     _config   = config;
     _versions = versions;
 }