public RemoveContentController(IPrimaryKeyConverter primaryKeyConverter, IContentDeleter contentDeleter, IContentTypeProvider contentTypeProvider, IContentGetter contentGetter)
 {
     PrimaryKeyConverter = primaryKeyConverter;
     ContentDeleter      = contentDeleter;
     ContentTypeProvider = contentTypeProvider;
     ContentGetter       = contentGetter;
 }
示例#2
0
 public SingletonInserter(ISingletonProvider singletonProvider, IContentTypeProvider contentTypeProvider, IContentGetter contentGetter, IContentInserter contentInserter)
 {
     SingletonProvider   = singletonProvider;
     ContentTypeProvider = contentTypeProvider;
     ContentGetter       = contentGetter;
     ContentInserter     = contentInserter;
 }
示例#3
0
 public ContentItemProvider(IContentTypeProvider contentTypeProvider, IContentFinder contentFinder, IContentGetter contentGetter, IAncestorProvider ancestorProvider, IPrimaryKeyGetter primaryKeyGetter)
 {
     ContentTypeProvider = contentTypeProvider;
     ContentFinder       = contentFinder;
     ContentGetter       = contentGetter;
     AncestorProvider    = ancestorProvider;
     PrimaryKeyGetter    = primaryKeyGetter;
 }
示例#4
0
 public GetUrlController(IContentTypeProvider contentTypeProvider, IPrimaryKeyConverter primaryKeyConverter, IContentGetter contentGetter, IUrlProvider urlProvider, IContentRouteMatcher contentRouteMatcher)
 {
     ContentTypeProvider = contentTypeProvider;
     PrimaryKeyConverter = primaryKeyConverter;
     ContentGetter       = contentGetter;
     UrlProvider         = urlProvider;
     ContentRouteMatcher = contentRouteMatcher;
 }
示例#5
0
 public SingletonInserter(ISingletonProvider singletonProvider, IContentTypeProvider contentTypeProvider, IContentGetter contentGetter, IContentInserter contentInserter, IContentInstanceCreator contentInstanceCreator, IPrimaryKeySetter primaryKeySetter)
 {
     PrimaryKeySetter       = primaryKeySetter;
     SingletonProvider      = singletonProvider;
     ContentTypeProvider    = contentTypeProvider;
     ContentGetter          = contentGetter;
     ContentInserter        = contentInserter;
     ContentInstanceCreator = contentInstanceCreator;
 }
 public SaveContentController(IContentTypeProvider contentTypeProvider, IPrimaryKeyGetter primaryKeyGetter, IPrimaryKeyConverter primaryKeyConverter, IContentGetter contentGetter, IContentTypeCoreInterfaceProvider contentTypeCoreInterfaceProvider, IPropertyDefinitionProvider propertyDefinitionProvider, IContentUpdater contentUpdater, IContentCreator contentCreator, PolymorphicFormConverter polymorphicFormConverter)
 {
     ContentTypeProvider = contentTypeProvider;
     PrimaryKeyGetter    = primaryKeyGetter;
     PrimaryKeyConverter = primaryKeyConverter;
     ContentGetter       = contentGetter;
     ContentTypeCoreInterfaceProvider = contentTypeCoreInterfaceProvider;
     PropertyDefinitionProvider       = propertyDefinitionProvider;
     ContentUpdater           = contentUpdater;
     ContentCreator           = contentCreator;
     PolymorphicFormConverter = polymorphicFormConverter;
 }
示例#7
0
        /// <summary>
        /// If a resource can be gotten, given its URI.
        /// </summary>
        /// <param name="Uri">URI of resource.</param>
        /// <param name="Grade">How well the decoder decodes the object.</param>
        /// <param name="Getter">Best getter for the URI.</param>
        /// <returns>If a resource with the given URI can be gotten.</returns>
        public static bool CanGet(Uri Uri, out Grade Grade, out IContentGetter Getter)
        {
            if (Uri is null)
            {
                throw new ArgumentNullException("URI cannot be null.", nameof(Uri));
            }

            if (getters is null)
            {
                BuildGetters();
            }

            IContentGetter[] Getters;

            lock (gettersByScheme)
            {
                if (Uri is null || !gettersByScheme.TryGetValue(Uri.Scheme, out Getters))
                {
                    Getter = null;
                    Grade  = Grade.NotAtAll;
                    return(false);
                }
            }

            Grade  = Grade.NotAtAll;
            Getter = null;

            foreach (IContentGetter Getter2 in Getters)
            {
                if (Getter2.CanGet(Uri, out Grade Grade2) && Grade2 > Grade)
                {
                    Grade  = Grade2;
                    Getter = Getter2;
                }
            }

            return(Getter != null);
        }
示例#8
0
 public SingletonGetter(ISingletonProvider singletonProvider, IContentGetter contentGetter)
 {
     SingletonProvider = singletonProvider;
     ContentGetter     = contentGetter;
 }
示例#9
0
 public UrlProvider(IAncestorLinkProvider ancestorsRepository, IContentGetter contentGetter)
 {
     AncestorsRepository = ancestorsRepository;
     ContentGetter       = contentGetter;
 }
 public DevopsWeeklyParser(IContentGetter <string> cg, ITextSanitizer ts)
 {
     htmlContentGetter = cg;
     textSanitizer     = ts;
 }
 public ChangelogParser(IContentGetter <string> cg, IContentNormalizer cn, ITextSanitizer ts)
 {
     htmlContentGetter = cg;
     contentNormalizer = cn;
     textSanitizer     = ts;
 }
 public DenseDiscoveryParser(IContentGetter <string> cg, IContentNormalizer cn, ITextSanitizer ts)
 {
     htmlContentGetter = cg;
     contentNormalizer = cn;
     textSanitizer     = ts;
 }
示例#13
0
 public UrlProvider(IAncestorProvider ancestorProvider, IContentGetter contentGetter)
 {
     AncestorProvider = ancestorProvider;
     ContentGetter    = contentGetter;
 }
 public ContentGetterController(IContentGetter contentGetter)
 {
     ContentGetter = contentGetter;
 }
示例#15
0
 public TheProtocolParser(IContentGetter <string> cg, IContentNormalizer cn, ITextSanitizer ts)
 {
     htlmContentGetter = cg;
     contentNormalizer = cn;
     textSanitizer     = ts;
 }