Example #1
0
 public IgnoreRelationshipsResponseResourceObjectBuilder(ILinkBuilder linkBuilder,
                                                         IIncludedResourceObjectBuilder includedBuilder, IEnumerable <IQueryConstraintProvider> constraintProviders,
                                                         IResourceContextProvider resourceContextProvider, IResourceDefinitionAccessor resourceDefinitionAccessor,
                                                         IResourceObjectBuilderSettingsProvider settingsProvider)
     : base(linkBuilder, includedBuilder, constraintProviders, resourceContextProvider,
            resourceDefinitionAccessor, settingsProvider)
 {
 }
        protected ResponseResourceObjectBuilder GetResponseResourceObjectBuilder(IEnumerable <IEnumerable <RelationshipAttribute> > inclusionChains = null,
                                                                                 ResourceLinks resourceLinks = null, RelationshipLinks relationshipLinks = null)
        {
            ILinkBuilder link = GetLinkBuilder(null, resourceLinks, relationshipLinks);
            IEnumerable <IQueryConstraintProvider> includeConstraints = GetIncludeConstraints(inclusionChains);
            IIncludedResourceObjectBuilder         includedBuilder    = GetIncludedBuilder();

            return(new ResponseResourceObjectBuilder(link, includedBuilder, includeConstraints, ResourceGraph, GetResourceDefinitionAccessor(),
                                                     GetSerializerSettingsProvider()));
        }
Example #3
0
 public ResponseResourceObjectBuilder(ILinkBuilder linkBuilder,
                                      IIncludedResourceObjectBuilder includedBuilder,
                                      IIncludeService includeService,
                                      IResourceContextProvider provider,
                                      IResourceObjectBuilderSettingsProvider settingsProvider)
     : base(provider, settingsProvider.Get())
 {
     _linkBuilder     = linkBuilder;
     _includedBuilder = includedBuilder;
     _includeService  = includeService;
 }
 public ResponseResourceObjectBuilder(ILinkBuilder linkBuilder,
                                      IIncludedResourceObjectBuilder includedBuilder,
                                      IEnumerable <IQueryConstraintProvider> constraintProviders,
                                      IResourceContextProvider provider,
                                      IResourceObjectBuilderSettingsProvider settingsProvider)
     : base(provider, settingsProvider.Get())
 {
     _linkBuilder         = linkBuilder;
     _includedBuilder     = includedBuilder;
     _constraintProviders = constraintProviders;
 }
Example #5
0
 public ResponseResourceObjectBuilder(ILinkBuilder linkBuilder,
                                      IIncludedResourceObjectBuilder includedBuilder,
                                      IEnumerable <IQueryConstraintProvider> constraintProviders,
                                      IResourceContextProvider resourceContextProvider,
                                      IResourceObjectBuilderSettingsProvider settingsProvider)
     : base(resourceContextProvider, settingsProvider.Get())
 {
     _linkBuilder         = linkBuilder ?? throw new ArgumentNullException(nameof(linkBuilder));
     _includedBuilder     = includedBuilder ?? throw new ArgumentNullException(nameof(includedBuilder));
     _constraintProviders = constraintProviders ?? throw new ArgumentNullException(nameof(constraintProviders));
 }
Example #6
0
 public ResponseSerializer(IMetaBuilder <TResource> metaBuilder,
                           ILinkBuilder linkBuilder,
                           IIncludedResourceObjectBuilder includedBuilder,
                           IFieldsToSerialize fieldsToSerialize,
                           IResourceObjectBuilder resourceObjectBuilder) :
     base(resourceObjectBuilder)
 {
     _fieldsToSerialize   = fieldsToSerialize;
     _linkBuilder         = linkBuilder;
     _metaBuilder         = metaBuilder;
     _includedBuilder     = includedBuilder;
     _primaryResourceType = typeof(TResource);
 }
Example #7
0
 public ResponseResourceObjectBuilder(ILinkBuilder linkBuilder,
                                      IIncludedResourceObjectBuilder includedBuilder,
                                      IEnumerable <IQueryConstraintProvider> constraintProviders,
                                      IResourceContextProvider resourceContextProvider,
                                      IResourceDefinitionAccessor resourceDefinitionAccessor,
                                      IResourceObjectBuilderSettingsProvider settingsProvider)
     : base(resourceContextProvider, settingsProvider.Get())
 {
     _linkBuilder                = linkBuilder ?? throw new ArgumentNullException(nameof(linkBuilder));
     _includedBuilder            = includedBuilder ?? throw new ArgumentNullException(nameof(includedBuilder));
     _constraintProviders        = constraintProviders ?? throw new ArgumentNullException(nameof(constraintProviders));
     _resourceDefinitionAccessor = resourceDefinitionAccessor ?? throw new ArgumentNullException(nameof(resourceDefinitionAccessor));
     _sparseFieldSetCache        = new SparseFieldSetCache(constraintProviders, resourceDefinitionAccessor);
 }
 public ResponseSerializer(IMetaBuilder metaBuilder,
                           ILinkBuilder linkBuilder,
                           IIncludedResourceObjectBuilder includedBuilder,
                           IFieldsToSerialize fieldsToSerialize,
                           IResourceObjectBuilder resourceObjectBuilder,
                           IJsonApiOptions options)
     : base(resourceObjectBuilder)
 {
     _fieldsToSerialize   = fieldsToSerialize ?? throw new ArgumentNullException(nameof(fieldsToSerialize));
     _options             = options ?? throw new ArgumentNullException(nameof(options));
     _linkBuilder         = linkBuilder ?? throw new ArgumentNullException(nameof(linkBuilder));
     _metaBuilder         = metaBuilder ?? throw new ArgumentNullException(nameof(metaBuilder));
     _includedBuilder     = includedBuilder ?? throw new ArgumentNullException(nameof(includedBuilder));
     _primaryResourceType = typeof(TResource);
 }
 public ResponseResourceObjectBuilder(IFieldsToSerialize fieldsToSerialize,
                                      ILinkBuilder linkBuilder,
                                      IIncludedResourceObjectBuilder includedBuilder,
                                      IIncludeService includeService,
                                      IResourceContextProvider provider,
                                      IResourceObjectBuilderSettingsProvider settingsProvider,
                                      ILoggerFactory loggerFactory)
     : base(provider, settingsProvider.Get())
 {
     _logger            = loggerFactory.CreateLogger <ResponseResourceObjectBuilder>();
     _linkBuilder       = linkBuilder;
     _includedBuilder   = includedBuilder;
     _includeService    = includeService;
     _fieldsToSerialize = fieldsToSerialize;
 }
        protected ResponseSerializer <T> GetResponseSerializer <T>(IEnumerable <IEnumerable <RelationshipAttribute> > inclusionChains = null,
                                                                   Dictionary <string, object> metaDict = null, TopLevelLinks topLinks = null, ResourceLinks resourceLinks = null,
                                                                   RelationshipLinks relationshipLinks  = null)
            where T : class, IIdentifiable
        {
            IMetaBuilder meta = GetMetaBuilder(metaDict);
            ILinkBuilder link = GetLinkBuilder(topLinks, resourceLinks, relationshipLinks);
            IEnumerable <IQueryConstraintProvider> includeConstraints = GetIncludeConstraints(inclusionChains);
            IIncludedResourceObjectBuilder         includedBuilder    = GetIncludedBuilder();
            IFieldsToSerialize fieldsToSerialize = GetSerializableFields();

            var resourceObjectBuilder = new ResponseResourceObjectBuilder(link, includedBuilder, includeConstraints, ResourceGraph,
                                                                          GetResourceDefinitionAccessor(), GetSerializerSettingsProvider());

            return(new ResponseSerializer <T>(meta, link, includedBuilder, fieldsToSerialize, resourceObjectBuilder, new JsonApiOptions()));
        }
        public ResponseSerializer(IMetaBuilder metaBuilder, ILinkBuilder linkBuilder, IIncludedResourceObjectBuilder includedBuilder,
                                  IFieldsToSerialize fieldsToSerialize, IResourceObjectBuilder resourceObjectBuilder, IJsonApiOptions options)
            : base(resourceObjectBuilder)
        {
            ArgumentGuard.NotNull(metaBuilder, nameof(metaBuilder));
            ArgumentGuard.NotNull(linkBuilder, nameof(linkBuilder));
            ArgumentGuard.NotNull(includedBuilder, nameof(includedBuilder));
            ArgumentGuard.NotNull(fieldsToSerialize, nameof(fieldsToSerialize));
            ArgumentGuard.NotNull(options, nameof(options));

            _metaBuilder         = metaBuilder;
            _linkBuilder         = linkBuilder;
            _includedBuilder     = includedBuilder;
            _fieldsToSerialize   = fieldsToSerialize;
            _options             = options;
            _primaryResourceType = typeof(TResource);
        }
Example #12
0
        public ResponseResourceObjectBuilder(ILinkBuilder linkBuilder, IIncludedResourceObjectBuilder includedBuilder,
                                             IEnumerable <IQueryConstraintProvider> constraintProviders, IResourceContextProvider resourceContextProvider,
                                             IResourceDefinitionAccessor resourceDefinitionAccessor, IResourceObjectBuilderSettingsProvider settingsProvider,
                                             IEvaluatedIncludeCache evaluatedIncludeCache)
            : base(resourceContextProvider, settingsProvider.Get())
        {
            ArgumentGuard.NotNull(linkBuilder, nameof(linkBuilder));
            ArgumentGuard.NotNull(includedBuilder, nameof(includedBuilder));
            ArgumentGuard.NotNull(constraintProviders, nameof(constraintProviders));
            ArgumentGuard.NotNull(resourceDefinitionAccessor, nameof(resourceDefinitionAccessor));
            ArgumentGuard.NotNull(evaluatedIncludeCache, nameof(evaluatedIncludeCache));

            _linkBuilder                = linkBuilder;
            _includedBuilder            = includedBuilder;
            _resourceDefinitionAccessor = resourceDefinitionAccessor;
            _evaluatedIncludeCache      = evaluatedIncludeCache;
            _sparseFieldSetCache        = new SparseFieldSetCache(constraintProviders, resourceDefinitionAccessor);
        }