/// <summary> /// Initializes a new instance of the <see cref="ODataMissingOperationGenerator"/> class. /// </summary> /// <param name="resourceMetadataContext">The metadata context of the resource to generate the missing operations for.</param> /// <param name="metadataContext">The current resource metadata context.</param> internal ODataMissingOperationGenerator(IODataResourceMetadataContext resourceMetadataContext, IODataMetadataContext metadataContext) { Debug.Assert(resourceMetadataContext != null, "resourceMetadataContext != null"); Debug.Assert(metadataContext != null, "metadataContext != null"); this.resourceMetadataContext = resourceMetadataContext; this.metadataContext = metadataContext; }
/// <summary> /// Initializes a new instance of the <see cref="ODataMissingOperationGenerator"/> class. /// </summary> /// <param name="entryMetadataContext">The metadata context of the entry to generate the missing operations for.</param> /// <param name="metadataContext">The current entry metadata context.</param> internal ODataMissingOperationGenerator(IODataEntryMetadataContext entryMetadataContext, IODataMetadataContext metadataContext) { Debug.Assert(entryMetadataContext != null, "entryMetadataCotext != null"); Debug.Assert(metadataContext != null, "metadataContext != null"); this.entryMetadataContext = entryMetadataContext; this.metadataContext = metadataContext; }
/// <summary> /// Constructs an instance of <see cref="ODataResourceMetadataContextWithModel"/>. /// </summary> /// <param name="resource">The resource instance.</param> /// <param name="typeContext">The context object to answer basic questions regarding the type of the resource.</param> /// <param name="actualResourceType">The structured type of the resource.</param> /// <param name="metadataContext">The metadata context to use.</param> /// <param name="selectedProperties">The selected properties.</param> internal ODataResourceMetadataContextWithModel(ODataResource resource, IODataResourceTypeContext typeContext, IEdmStructuredType actualResourceType, IODataMetadataContext metadataContext, SelectedPropertiesNode selectedProperties) : base(resource, typeContext) { Debug.Assert(actualResourceType != null, "actualResourceType != null"); Debug.Assert(metadataContext != null, "metadataContext != null"); Debug.Assert(selectedProperties != null, "selectedProperties != null"); this.actualResourceType = actualResourceType; this.metadataContext = metadataContext; this.selectedProperties = selectedProperties; }
/// <summary> /// Constructor /// </summary> /// <param name="entryMetadataContext">The context to answer basic metadata questions about the entry.</param> /// <param name="metadataContext">The metadata context.</param> /// <param name="uriBuilder">The uri builder to use.</param> internal ODataConventionalEntityMetadataBuilder(IODataEntryMetadataContext entryMetadataContext, IODataMetadataContext metadataContext, ODataUriBuilder uriBuilder) { Debug.Assert(entryMetadataContext != null, "entryMetadataContext != null"); Debug.Assert(metadataContext != null, "metadataContext != null"); Debug.Assert(uriBuilder != null, "uriBuilder != null"); this.entryMetadataContext = entryMetadataContext; this.uriBuilder = uriBuilder; this.metadataContext = metadataContext; this.processedNavigationLinks = new HashSet <string>(StringComparer.Ordinal); }
/// <summary> /// Constructs an instance of <see cref="ODataEntryMetadataContextWithModel"/>. /// </summary> /// <param name="entry">The entry instance.</param> /// <param name="typeContext">The context object to answer basic questions regarding the type of the entry.</param> /// <param name="actualEntityType">The entity type of the entry.</param> /// <param name="metadataContext">The metadata context to use.</param> /// <param name="selectedProperties">The selected properties.</param> internal ODataEntryMetadataContextWithModel(ODataEntry entry, IODataFeedAndEntryTypeContext typeContext, IEdmEntityType actualEntityType, IODataMetadataContext metadataContext, SelectedPropertiesNode selectedProperties) : base(entry, typeContext) { Debug.Assert(actualEntityType != null, "actualEntityType != null"); Debug.Assert(metadataContext != null, "metadataContext != null"); Debug.Assert(selectedProperties != null, "selectedProperties != null"); this.actualEntityType = actualEntityType; this.metadataContext = metadataContext; this.selectedProperties = selectedProperties; }
/// <summary> /// Constructor /// </summary> /// <param name="entryMetadataContext">The context to answer basic metadata questions about the entry.</param> /// <param name="metadataContext">The metadata context.</param> /// <param name="uriBuilder">The uri builder to use.</param> internal ODataConventionalEntityMetadataBuilder(IODataEntryMetadataContext entryMetadataContext, IODataMetadataContext metadataContext, ODataUriBuilder uriBuilder) { Debug.Assert(entryMetadataContext != null, "entryMetadataContext != null"); Debug.Assert(metadataContext != null, "metadataContext != null"); Debug.Assert(uriBuilder != null, "uriBuilder != null"); this.entryMetadataContext = entryMetadataContext; this.uriBuilder = uriBuilder; this.metadataContext = metadataContext; this.processedNavigationLinks = new HashSet<string>(StringComparer.Ordinal); }
/// <summary> /// Constructor /// </summary> /// <param name="resourceMetadataContext">The context to answer basic metadata questions about the resource.</param> /// <param name="metadataContext">The metadata context.</param> /// <param name="uriBuilder">The uri builder to use.</param> internal ODataConventionalResourceMetadataBuilder(IODataResourceMetadataContext resourceMetadataContext, IODataMetadataContext metadataContext, ODataUriBuilder uriBuilder) { Debug.Assert(resourceMetadataContext != null, "resourceMetadataContext != null"); Debug.Assert(metadataContext != null, "metadataContext != null"); Debug.Assert(uriBuilder != null, "uriBuilder != null"); this.ResourceMetadataContext = resourceMetadataContext; this.UriBuilder = uriBuilder; this.MetadataContext = metadataContext; this.ProcessedNestedResourceInfos = new HashSet <string>(StringComparer.Ordinal); this.resource = resourceMetadataContext.Resource; }
/// <summary> /// Creates an instance of <see cref="ODataResourceMetadataContext"/>. /// </summary> /// <param name="resource">The resource instance.</param> /// <param name="typeContext">The context object to answer basic questions regarding the type of the resource.</param> /// <param name="serializationInfo">The serialization info of the resource for writing without model.</param> /// <param name="actualResourceType">The structured type of the resource.</param> /// <param name="metadataContext">The metadata context to use.</param> /// <param name="selectedProperties">The selected properties.</param> /// <returns>A new instance of <see cref="ODataResourceMetadataContext"/>.</returns> internal static ODataResourceMetadataContext Create( ODataResource resource, IODataResourceTypeContext typeContext, ODataResourceSerializationInfo serializationInfo, IEdmStructuredType actualResourceType, IODataMetadataContext metadataContext, SelectedPropertiesNode selectedProperties) { if (serializationInfo != null) { return(new ODataResourceMetadataContextWithoutModel(resource, typeContext, serializationInfo)); } return(new ODataResourceMetadataContextWithModel(resource, typeContext, actualResourceType, metadataContext, selectedProperties)); }
/// <summary> /// Creates an instance of <see cref="ODataEntryMetadataContext"/>. /// </summary> /// <param name="entry">The entry instance.</param> /// <param name="typeContext">The context object to answer basic questions regarding the type of the entry.</param> /// <param name="serializationInfo">The serialization info of the entry for writing without model.</param> /// <param name="actualEntityType">The entity type of the entry.</param> /// <param name="metadataContext">The metadata context to use.</param> /// <param name="selectedProperties">The selected properties.</param> /// <returns>A new instance of <see cref="ODataEntryMetadataContext"/>.</returns> internal static ODataEntryMetadataContext Create( ODataEntry entry, IODataFeedAndEntryTypeContext typeContext, ODataFeedAndEntrySerializationInfo serializationInfo, IEdmEntityType actualEntityType, IODataMetadataContext metadataContext, SelectedPropertiesNode selectedProperties) { if (serializationInfo != null) { return(new ODataEntryMetadataContextWithoutModel(entry, typeContext, serializationInfo)); } return(new ODataEntryMetadataContextWithModel(entry, typeContext, actualEntityType, metadataContext, selectedProperties)); }
/// <summary> /// Creates an instance of <see cref="ODataResourceMetadataContext"/>. /// </summary> /// <param name="resource">The resource instance.</param> /// <param name="typeContext">The context object to answer basic questions regarding the type of the resource.</param> /// <param name="serializationInfo">The serialization info of the resource for writing without model.</param> /// <param name="actualResourceType">The structured type of the resource.</param> /// <param name="metadataContext">The metadata context to use.</param> /// <param name="selectedProperties">The selected properties.</param> /// <param name="metadataSelector">Informs the metadata builder which properties, functions, actions, links to omit.</param> /// <param name="requiresId">True if the resource requires an id, false if it is a non-deleted resource in a delta request payload.</param> /// <returns>A new instance of <see cref="ODataResourceMetadataContext"/>.</returns> internal static ODataResourceMetadataContext Create( ODataResourceBase resource, IODataResourceTypeContext typeContext, ODataResourceSerializationInfo serializationInfo, IEdmStructuredType actualResourceType, IODataMetadataContext metadataContext, SelectedPropertiesNode selectedProperties, ODataMetadataSelector metadataSelector, bool requiresId = true) { if (serializationInfo != null) { return(new ODataResourceMetadataContextWithoutModel(resource, typeContext, serializationInfo, requiresId) { ActualResourceType = actualResourceType }); } return(new ODataResourceMetadataContextWithModel(resource, typeContext, actualResourceType, metadataContext, selectedProperties, metadataSelector, requiresId) { ActualResourceType = actualResourceType }); }
/// <summary> /// Creates an instance of <see cref="ODataEntryMetadataContext"/>. /// </summary> /// <param name="entry">The entry instance.</param> /// <param name="typeContext">The context object to answer basic questions regarding the type of the entry.</param> /// <param name="serializationInfo">The serialization info of the entry for writing without model.</param> /// <param name="actualEntityType">The entity type of the entry.</param> /// <param name="metadataContext">The metadata context to use.</param> /// <param name="selectedProperties">The selected properties.</param> /// <returns>A new instance of <see cref="ODataEntryMetadataContext"/>.</returns> internal static ODataEntryMetadataContext Create( ODataEntry entry, IODataFeedAndEntryTypeContext typeContext, ODataFeedAndEntrySerializationInfo serializationInfo, IEdmEntityType actualEntityType, IODataMetadataContext metadataContext, SelectedPropertiesNode selectedProperties) { if (serializationInfo != null) { return new ODataEntryMetadataContextWithoutModel(entry, typeContext, serializationInfo); } return new ODataEntryMetadataContextWithModel(entry, typeContext, actualEntityType, metadataContext, selectedProperties); }
/// <summary> /// Constructor /// </summary> /// <param name="resourceMetadataContext">The context to answer basic metadata questions about the resource.</param> /// <param name="metadataContext">The metadata context.</param> /// <param name="uriBuilder">The uri builder to use.</param> internal ODataConventionalEntityMetadataBuilder(IODataResourceMetadataContext resourceMetadataContext, IODataMetadataContext metadataContext, ODataUriBuilder uriBuilder) : base(resourceMetadataContext, metadataContext, uriBuilder) { this.isResourceEnd = true; // Keep default behavior }
/// <summary> /// Constructor /// </summary> /// <param name="resourceMetadataContext">The context to answer basic metadata questions about the resource.</param> /// <param name="metadataContext">The metadata context.</param> /// <param name="uriBuilder">The uri builder to use.</param> internal ODataConventionalIdMetadataBuilder(IODataResourceMetadataContext resourceMetadataContext, IODataMetadataContext metadataContext, ODataUriBuilder uriBuilder) : base(resourceMetadataContext, metadataContext, uriBuilder) { }