Example #1
0
 /*********
 ** Public methods
 *********/
 /// <summary>Construct an instance.</summary>
 /// <param name="tokenManager">Manages loaded tokens.</param>
 /// <param name="patchManager">Manages loaded patches.</param>
 /// <param name="patchLoader">Manages loading and unloading patches.</param>
 /// <param name="monitor">Encapsulates monitoring and logging.</param>
 /// <param name="contentPacks">The loaded content packs.</param>
 /// <param name="getContext">Get the current token context.</param>
 /// <param name="updateContext">A callback which immediately updates the current condition context.</param>
 public CommandHandler(TokenManager tokenManager, PatchManager patchManager, PatchLoader patchLoader, IMonitor monitor, IList <RawContentPack> contentPacks, Func <string, IContext> getContext, Action updateContext)
 {
     this.TokenManager  = tokenManager;
     this.PatchManager  = patchManager;
     this.PatchLoader   = patchLoader;
     this.Monitor       = monitor;
     this.ContentPacks  = contentPacks;
     this.GetContext    = getContext;
     this.UpdateContext = updateContext;
 }
 public IndexGenerator(
     ILogger <IndexGenerator> logger,
     IndexerConfig config,
     PolygonLoader sourceLoader,
     PointLoader pointLoader,
     PatchLoader patchLoader,
     CrossReferenceLoader crossReferenceLoader)
 {
     _logger               = logger;
     _polygonLoader        = sourceLoader;
     _crossReferenceLoader = crossReferenceLoader;
     _pointLoader          = pointLoader;
     _patchLoader          = patchLoader;
     _config               = config;
 }
 /*********
 ** Public methods
 *********/
 /// <summary>Construct an instance.</summary>
 /// <param name="path">The path to the patch from the root content file.</param>
 /// <param name="assetName">The normalized asset name to intercept.</param>
 /// <param name="conditions">The conditions which determine whether this patch should be applied.</param>
 /// <param name="fromFile">The normalized asset key from which to load entries (if applicable), including tokens.</param>
 /// <param name="updateRate">When the patch should be updated.</param>
 /// <param name="contentPack">The content pack which requested the patch.</param>
 /// <param name="parentPatch">The parent patch for which this patch was loaded, if any.</param>
 /// <param name="normalizeAssetName">Normalize an asset name.</param>
 /// <param name="monitor">Encapsulates monitoring and logging.</param>
 /// <param name="patchLoader">Handles loading and unloading patches for content packs.</param>
 public IncludePatch(LogPathBuilder path, IManagedTokenString assetName, IEnumerable <Condition> conditions, IManagedTokenString fromFile, UpdateRate updateRate, RawContentPack contentPack, IPatch parentPatch, Func <string, string> normalizeAssetName, IMonitor monitor, PatchLoader patchLoader)
     : base(
         path: path,
         type: PatchType.Include,
         assetName: assetName,
         conditions: conditions,
         fromAsset: fromFile,
         updateRate: updateRate,
         parentPatch: parentPatch,
         contentPack: contentPack.ContentPack,
         normalizeAssetName: normalizeAssetName
         )
 {
     this.RawContentPack = contentPack;
     this.Monitor        = monitor;
     this.PatchLoader    = patchLoader;
 }