示例#1
0
        public bool Start()
        {
            Startup();
            m_log.Info("[ASSETINVENTORY]: Starting AssetInventory Server");

            try
            {
                ConfigFile = AssetInventoryConfig.LoadConfig(ConfigFile);
            }
            catch (Exception)
            {
                m_log.Error("[ASSETINVENTORY]: Failed to load the config.");
                return(false);
            }

            StorageProvider = LoadAssetInventoryServerPlugin("/OpenSim/AssetInventoryServer/AssetStorageProvider",
                                                             "asset_storage_provider", false) as IAssetStorageProvider;
            m_backends.Add(StorageProvider);

            InventoryProvider = LoadAssetInventoryServerPlugin("/OpenSim/AssetInventoryServer/InventoryStorageProvider",
                                                               "inventory_storage_provider", false) as IInventoryStorageProvider;
            m_backends.Add(InventoryProvider);

            MetricsProvider = LoadAssetInventoryServerPlugin("/OpenSim/AssetInventoryServer/MetricsProvider",
                                                             "metrics_provider", false) as IMetricsProvider;
            m_backends.Add(MetricsProvider);

            try
            {
                InitHttpServer((uint)ConfigFile.Configs["Config"].GetInt("listen_port"));
            }
            catch (Exception ex)
            {
                m_log.Error("[ASSETINVENTORY]: Initializing the HTTP server failed, shutting down: " + ex.Message);
                Shutdown();
                return(false);
            }

            LoadDefaultAssets();

            AuthenticationProvider = LoadAssetInventoryServerPlugin("/OpenSim/AssetInventoryServer/AuthenticationProvider",
                                                                    "authentication_provider", false) as IAuthenticationProvider;
            m_backends.Add(AuthenticationProvider);

            AuthorizationProvider = LoadAssetInventoryServerPlugin("/OpenSim/AssetInventoryServer/AuthorizationProvider",
                                                                   "authorization_provider", false) as IAuthorizationProvider;
            m_backends.Add(AuthorizationProvider);

            m_frontends.AddRange(LoadAssetInventoryServerPlugins("/OpenSim/AssetInventoryServer/Frontend", "frontends"));

            // Inform the user if we don't have any frontends at this point.
            if (m_frontends.Count == 0)
            {
                m_log.Info("[ASSETINVENTORY]: Starting with no frontends loaded, which isn't extremely useful. Did you set the 'frontends' configuration parameter?");
            }

            return(true);
        }
示例#2
0
        public bool Start()
        {
            Startup();
            m_log.Info("[ASSETINVENTORY]: Starting AssetInventory Server");

            try
            {
                ConfigFile = AssetInventoryConfig.LoadConfig(ConfigFile);
            }
            catch (Exception)
            {
                m_log.Error("[ASSETINVENTORY]: Failed to load the config.");
                return false;
            }

            StorageProvider = LoadAssetInventoryServerPlugin("/OpenSim/AssetInventoryServer/AssetStorageProvider",
                                                             "asset_storage_provider", false) as IAssetStorageProvider;
            m_backends.Add(StorageProvider);

            InventoryProvider = LoadAssetInventoryServerPlugin("/OpenSim/AssetInventoryServer/InventoryStorageProvider",
                                                               "inventory_storage_provider", false) as IInventoryStorageProvider;
            m_backends.Add(InventoryProvider);

            MetricsProvider = LoadAssetInventoryServerPlugin("/OpenSim/AssetInventoryServer/MetricsProvider",
                                                             "metrics_provider", false) as IMetricsProvider;
            m_backends.Add(MetricsProvider);

            try
            {
                InitHttpServer((uint) ConfigFile.Configs["Config"].GetInt("listen_port"));
            }
            catch (Exception ex)
            {
                m_log.Error("[ASSETINVENTORY]: Initializing the HTTP server failed, shutting down: " + ex.Message);
                Shutdown();
                return false;
            }

            LoadDefaultAssets(); 

            AuthenticationProvider = LoadAssetInventoryServerPlugin("/OpenSim/AssetInventoryServer/AuthenticationProvider",
                                                                    "authentication_provider", false) as IAuthenticationProvider;
            m_backends.Add(AuthenticationProvider);

            AuthorizationProvider = LoadAssetInventoryServerPlugin("/OpenSim/AssetInventoryServer/AuthorizationProvider",
                                                                   "authorization_provider", false) as IAuthorizationProvider;
            m_backends.Add(AuthorizationProvider);

            m_frontends.AddRange(LoadAssetInventoryServerPlugins("/OpenSim/AssetInventoryServer/Frontend", "frontends"));

            // Inform the user if we don't have any frontends at this point.
            if (m_frontends.Count == 0)
                m_log.Info("[ASSETINVENTORY]: Starting with no frontends loaded, which isn't extremely useful. Did you set the 'frontends' configuration parameter?");

            return true;
        }
 public AssetManager(
     IAssetStorageProvider assetStoragePRovider,
     IRepository <AssetRecord> assetRepository,
     IContentManager contentManager,
     IClock clock,
     IMimeTypeProvider mimeTypeProvider,
     ITempFileManager fileManager,
     IWamsClient wamsClient,
     IAssetFactory factory)
 {
     _assetStorageProvider = assetStoragePRovider;
     _assetRepository      = assetRepository;
     _contentManager       = contentManager;
     _clock            = clock;
     _mimeTypeProvider = mimeTypeProvider;
     _fileManager      = fileManager;
     _wamsClient       = wamsClient;
     _factory          = factory;
 }