Slowly working my way towards the elimination of IAssetServer and IAssetCache.
							parent
							
								
									a50904a68b
								
							
						
					
					
						commit
						024755d8b7
					
				| 
						 | 
				
			
			@ -35,14 +35,13 @@ namespace OpenSim.Framework
 | 
			
		|||
    /// <summary>
 | 
			
		||||
    /// Interface to the local asset cache.  This is the mechanism through which assets can be added and requested.
 | 
			
		||||
    /// </summary>    
 | 
			
		||||
    public interface IAssetCache : IAssetReceiver, IPlugin
 | 
			
		||||
    public interface IAssetCache :  IPlugin
 | 
			
		||||
    {
 | 
			
		||||
        /// <value>
 | 
			
		||||
        /// The 'server' from which assets can be requested and to which assets are persisted.
 | 
			
		||||
        /// </value>        
 | 
			
		||||
        IAssetServer AssetServer { get; }
 | 
			
		||||
        
 | 
			
		||||
        void Initialise(ConfigSettings cs, IAssetServer server);        
 | 
			
		||||
       
 | 
			
		||||
        void Initialise(ConfigSettings cs);        
 | 
			
		||||
 | 
			
		||||
        /// <summary>
 | 
			
		||||
        /// Report statistical data to the log.
 | 
			
		||||
| 
						 | 
				
			
			@ -112,21 +111,4 @@ namespace OpenSim.Framework
 | 
			
		|||
        void AddAssetRequest(IClientAPI userInfo, TransferRequestPacket transferRequest);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public class AssetCachePluginInitialiser : PluginInitialiserBase
 | 
			
		||||
    {
 | 
			
		||||
        private ConfigSettings config;
 | 
			
		||||
        private IAssetServer   server;
 | 
			
		||||
 | 
			
		||||
        public AssetCachePluginInitialiser (ConfigSettings p_sv, IAssetServer p_as)
 | 
			
		||||
        {
 | 
			
		||||
            config = p_sv;
 | 
			
		||||
            server = p_as;
 | 
			
		||||
        }
 | 
			
		||||
        public override void Initialise (IPlugin plugin)
 | 
			
		||||
        {
 | 
			
		||||
            IAssetCache p = plugin as IAssetCache;
 | 
			
		||||
            p.Initialise (config, server);
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -29,108 +29,10 @@ using OpenMetaverse;
 | 
			
		|||
 | 
			
		||||
namespace OpenSim.Framework
 | 
			
		||||
{
 | 
			
		||||
    /// <summary>
 | 
			
		||||
    /// Description of IAssetServer.
 | 
			
		||||
    /// </summary>
 | 
			
		||||
    ///// <summary>
 | 
			
		||||
    ///// Description of IAssetServer.
 | 
			
		||||
    ///// </summary>
 | 
			
		||||
    public interface IAssetServer : IPlugin
 | 
			
		||||
    {
 | 
			
		||||
        void Initialise(ConfigSettings settings);
 | 
			
		||||
        void Initialise(ConfigSettings settings, string url, string dir, bool test);
 | 
			
		||||
        void Initialise(ConfigSettings settings, string url);
 | 
			
		||||
        
 | 
			
		||||
        /// <summary>
 | 
			
		||||
        /// Start the asset server
 | 
			
		||||
        /// </summary>
 | 
			
		||||
        void Start();
 | 
			
		||||
        
 | 
			
		||||
        /// <summary>
 | 
			
		||||
        /// Stop the asset server
 | 
			
		||||
        /// </summary>
 | 
			
		||||
        void Stop();
 | 
			
		||||
        
 | 
			
		||||
        void SetReceiver(IAssetReceiver receiver);
 | 
			
		||||
        void RequestAsset(UUID assetID, bool isTexture);
 | 
			
		||||
        void StoreAsset(AssetBase asset);
 | 
			
		||||
        void UpdateAsset(AssetBase asset);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /// <summary>
 | 
			
		||||
    /// Implemented by classes which with to asynchronously receive asset data from the asset service
 | 
			
		||||
    /// </summary>
 | 
			
		||||
    /// <remarks>could change to delegate?</remarks>
 | 
			
		||||
    public interface IAssetReceiver
 | 
			
		||||
    {
 | 
			
		||||
        /// <summary>
 | 
			
		||||
        /// Call back made when a requested asset has been retrieved by an asset server
 | 
			
		||||
        /// </summary>
 | 
			
		||||
        /// <param name="asset"></param>
 | 
			
		||||
        /// <param name="IsTexture"></param>
 | 
			
		||||
        void AssetReceived(AssetBase asset, bool IsTexture);
 | 
			
		||||
 | 
			
		||||
        /// <summary>
 | 
			
		||||
        /// Call back made when an asset server could not retrieve a requested asset
 | 
			
		||||
        /// </summary>
 | 
			
		||||
        /// <param name="assetID"></param>
 | 
			
		||||
        /// <param name="IsTexture"></param>
 | 
			
		||||
        void AssetNotFound(UUID assetID, bool IsTexture);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public class AssetClientPluginInitialiser : PluginInitialiserBase
 | 
			
		||||
    {
 | 
			
		||||
        private ConfigSettings config;
 | 
			
		||||
 | 
			
		||||
        public AssetClientPluginInitialiser (ConfigSettings p_sv)
 | 
			
		||||
        {
 | 
			
		||||
            config = p_sv;
 | 
			
		||||
        }
 | 
			
		||||
        public override void Initialise (IPlugin plugin)
 | 
			
		||||
        {
 | 
			
		||||
            IAssetServer p = plugin as IAssetServer;
 | 
			
		||||
            p.Initialise (config);
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public class LegacyAssetClientPluginInitialiser : PluginInitialiserBase
 | 
			
		||||
    {
 | 
			
		||||
        private ConfigSettings config;
 | 
			
		||||
        private string assetURL;
 | 
			
		||||
 | 
			
		||||
        public LegacyAssetClientPluginInitialiser (ConfigSettings p_sv, string p_url)
 | 
			
		||||
        {
 | 
			
		||||
            config   = p_sv;
 | 
			
		||||
            assetURL = p_url;
 | 
			
		||||
        }
 | 
			
		||||
        public override void Initialise (IPlugin plugin)
 | 
			
		||||
        {
 | 
			
		||||
            IAssetServer p = plugin as IAssetServer;
 | 
			
		||||
            p.Initialise (config, assetURL);
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public class CryptoAssetClientPluginInitialiser : PluginInitialiserBase
 | 
			
		||||
    {
 | 
			
		||||
        private ConfigSettings config;
 | 
			
		||||
        private string assetURL;
 | 
			
		||||
        private string currdir;
 | 
			
		||||
        private bool   test;
 | 
			
		||||
 | 
			
		||||
        public CryptoAssetClientPluginInitialiser (ConfigSettings p_sv, string p_url, string p_dir, bool p_test)
 | 
			
		||||
        {
 | 
			
		||||
            config   = p_sv;
 | 
			
		||||
            assetURL = p_url;
 | 
			
		||||
            currdir  = p_dir;
 | 
			
		||||
            test     = p_test;
 | 
			
		||||
        }
 | 
			
		||||
        public override void Initialise (IPlugin plugin)
 | 
			
		||||
        {
 | 
			
		||||
            IAssetServer p = plugin as IAssetServer;
 | 
			
		||||
            p.Initialise (config, assetURL, currdir, test);
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public interface IAssetPlugin
 | 
			
		||||
    {
 | 
			
		||||
        IAssetServer GetAssetServer();
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in New Issue