/// <summary> /// Initializes a new instance of the <see cref="ComplexAnnotationReferenceCore"/> class. /// </summary> /// <param name="returnMatchedArtefact"> /// The return matched artefatc. /// </param> /// <param name="queryDetail"> /// The query detail. /// </param> /// <param name="referencesQueryDetail"> /// The references query detail. /// </param> /// <param name="referenceDetail"> /// The reference detail. /// </param> /// <param name="referenceSpecificStructures"> /// The reference specific structures. /// </param> public ComplexStructureQueryMetadataCore(bool returnMatchedArtefact, ComplexStructureQueryDetail queryDetail, ComplexMaintainableQueryDetail referencesQueryDetail, StructureReferenceDetail referenceDetail, IList<SdmxStructureType> referenceSpecificStructures) { this._returnMatchedArtefact = returnMatchedArtefact; if (queryDetail != null) { this._queryDetail = queryDetail; } if (referencesQueryDetail != null) this._referencesQueryDetail = referencesQueryDetail; if (referenceDetail == null) { throw new SdmxSemmanticException("Reference Detail cannot be null."); } this._referenceDetail = referenceDetail; this._referenceSpecificStructures = referenceSpecificStructures; }
/// <summary> /// Gets a set of maintainable objects which includes the maintainable being queried for, defined by the StructureQueryObject parameter. /// </summary> /// <param name="complexRef"> /// The complex Ref. /// </param> /// <param name="returnDetail"> /// The return Detail. /// </param> /// <param name="allowedDataflows"> /// The allowed Dataflow. /// </param> /// <returns> /// The <see cref="T:System.Collections.Generic.ISet`1"/> . /// </returns> public ISet<IMaintainableMutableObject> GetMutableMaintainables( IComplexStructureReferenceObject complexRef, ComplexStructureQueryDetail returnDetail, IList<IMaintainableRefObject> allowedDataflows) { throw new NotImplementedException(); }
/// <summary> /// Gets a single DataStructure. /// This expects the ref object either to contain a URN or all the attributes required to uniquely identify the object. /// If version information is missing then the latest version is assumed. /// </summary> /// <param name="complexRef"> /// The reference object defining the search parameters. /// </param> /// <param name="returnDetail"> /// The return Detail. /// </param> /// <returns> /// The <see cref="T:Org.Sdmxsource.Sdmx.Api.Model.Mutable.DataStructure.IDataStructureMutableObject"/> . /// </returns> public IDataStructureMutableObject GetMutableDataStructure(IComplexStructureReferenceObject complexRef, ComplexStructureQueryDetail returnDetail) { return this._retrievalManager.GetMutableDataStructure(complexRef, returnDetail); }
/// <summary> /// Gets DataflowObjects that match the parameters in the ref @object. If the ref @object is null or /// has no attributes set, then this will be interpreted as a search for all DataflowObjects /// </summary> /// <param name="complexRef"> /// The reference object defining the search parameters. /// </param> /// <param name="returnDetail"> /// The return Detail. /// </param> /// <param name="allowedDataflow"> /// The allowed Dataflow. /// </param> /// <returns> /// list of sdmxObjects that match the search criteria /// </returns> public ISet<IDataflowMutableObject> GetMutableDataflowObjects( IComplexStructureReferenceObject complexRef, ComplexStructureQueryDetail returnDetail, IList<IMaintainableRefObject> allowedDataflow) { var xref = complexRef.GetMaintainableRefObject(); return this._retrievalEngineContainer.DataflowRetrievalEngine.Retrieve(xref, returnDetail.EnumType, complexRef.GetVersionConstraints(), allowedDataflow); }
/// <summary> /// Returns a single Content Constraint, this expects the ref object either to contain /// a URN or all the attributes required to uniquely identify the object. If version information /// is missing then the latest version is assumed. /// </summary> /// <param name="complexRef"> /// The reference object defining the search parameters. /// </param> /// <param name="returnDetail"> /// The return Detail. /// </param> /// <returns> /// The Content constraint. /// </returns> public IContentConstraintMutableObject GetMutableContentConstraint(IComplexStructureReferenceObject complexRef, ComplexStructureQueryDetail returnDetail) { return this._retrievalManager.GetMutableContentConstraint(complexRef, returnDetail); }
/// <summary> /// Gets a single Categorisation, this expects the ref object either to contain /// a URN or all the attributes required to uniquely identify the object. If version information /// is missing then the latest version is assumed. /// </summary> /// <param name="complexRef"> /// The reference object defining the search parameters. /// </param> /// <param name="returnDetail"> /// The return Detail. /// </param> /// <param name="allowedDataflows"> /// The allowed Dataflows. /// </param> /// <returns> /// The <see cref="T:Org.Sdmxsource.Sdmx.Api.Model.Mutable.CategoryScheme.ICategorisationMutableObject"/> . /// </returns> public ICategorisationMutableObject GetMutableCategorisation( IComplexStructureReferenceObject complexRef, ComplexStructureQueryDetail returnDetail, IList<IMaintainableRefObject> allowedDataflows) { var xref = complexRef.GetMaintainableRefObject(); if (xref.HasVersion()) { return this._retrievalEngineContainer.CategorisationRetrievalEngine.Retrieve(xref, returnDetail.EnumType, complexRef.GetVersionConstraints(), allowedDataflows).FirstOrDefault(); } //// complexRef.GetVersionConstraints() Change this when mapping store is modified to host proper categorisation artefacts return this._retrievalEngineContainer.CategorisationRetrievalEngine.RetrieveLatest(xref, returnDetail.EnumType, allowedDataflows); }
/// <summary> /// Gets StructureSetObjects that match the parameters in the ref @object. If the ref @object is null or /// has no attributes set, then this will be interpreted as a search for all StructureSetObjects /// </summary> /// <param name="complexRef"> /// The reference object defining the search parameters. /// </param> /// <param name="returnDetail"> /// The return Detail. /// </param> /// <returns> /// list of sdmxObjects that match the search criteria /// </returns> public ISet<IStructureSetMutableObject> GetMutableStructureSetObjects(IComplexStructureReferenceObject complexRef, ComplexStructureQueryDetail returnDetail) { // 8.12 ISTAT ENHANCEMENT var xref = complexRef.GetMaintainableRefObject(); return this._retrievalEngineContainer.StructureSetRetrievalEngine.Retrieve(xref, returnDetail.EnumType, complexRef.GetVersionConstraints()); }
/// <summary> /// Gets ReportingTaxonomyObjects that match the parameters in the ref @object. If the ref @object is null or /// has no attributes set, then this will be interpreted as a search for all ReportingTaxonomyObjects /// </summary> /// <param name="complexRef"> /// The reference object defining the search parameters. /// </param> /// <param name="returnDetail"> /// The return Detail. /// </param> /// <returns> /// list of sdmxObjects that match the search criteria /// </returns> public ISet<IReportingTaxonomyMutableObject> GetMutableReportingTaxonomyObjects(IComplexStructureReferenceObject complexRef, ComplexStructureQueryDetail returnDetail) { return this._retrievalManager.GetMutableReportingTaxonomyObjects(complexRef, returnDetail); }
/// <summary> /// Gets a single organization scheme, this expects the ref object either to contain /// a URN or all the attributes required to uniquely identify the object. If version information /// is missing then the latest version is assumed. /// </summary> /// <param name="complexRef"> /// The reference object defining the search parameters. /// </param> /// <param name="returnDetail"> /// The return Detail. /// </param> /// <returns> /// The <see cref="T:Org.Sdmxsource.Sdmx.Api.Model.Mutable.Base.IOrganisationUnitSchemeMutableObject"/> . /// </returns> public IOrganisationUnitSchemeMutableObject GetMutableOrganisationUnitScheme(IComplexStructureReferenceObject complexRef, ComplexStructureQueryDetail returnDetail) { var xref = complexRef.GetMaintainableRefObject(); return(xref.HasVersion() ? this._retrievalEngineContainer.OrganisationUnitSchemeRetrievalEngine.Retrieve(xref, returnDetail.EnumType, complexRef.GetVersionConstraints()).FirstOrDefault() : this._retrievalEngineContainer.OrganisationUnitSchemeRetrievalEngine.RetrieveLatest(xref, returnDetail.EnumType)); }
/// <summary> /// Gets a single MetadataStructure , this expects the ref object either to contain /// a URN or all the attributes required to uniquely identify the object. If version information /// is missing then the latest version is assumed. /// </summary> /// <param name="complexRef"> /// The reference object defining the search parameters. /// </param> /// <param name="returnDetail"> /// The return Detail. /// </param> /// <returns> /// The <see cref="T:Org.Sdmxsource.Sdmx.Api.Model.Mutable.MetadataStructure.IMetadataStructureDefinitionMutableObject"/> . /// </returns> public IMetadataStructureDefinitionMutableObject GetMutableMetadataStructure(IComplexStructureReferenceObject complexRef, ComplexStructureQueryDetail returnDetail) { throw new NotImplementedException(); }
/// <summary> /// Gets MetadataFlowObjects that match the parameters in the ref @object. If the ref @object is null or /// has no attributes set, then this will be interpreted as a search for all MetadataFlowObjects /// </summary> /// <param name="complexRef"> /// The reference object defining the search parameters. /// </param> /// <param name="returnDetail"> /// The return Detail. /// </param> /// <returns> /// list of sdmxObjects that match the search criteria /// </returns> public ISet <IMetadataFlowMutableObject> GetMutableMetadataflowObjects(IComplexStructureReferenceObject complexRef, ComplexStructureQueryDetail returnDetail) { throw new NotImplementedException(); }
/// <summary> /// Gets a set of maintainable objects which includes the maintainable being queried for, defined by the StructureQueryObject parameter. /// </summary> /// <param name="complexRef"> /// The complex Ref. /// </param> /// <param name="returnDetail"> /// The return Detail. /// </param> /// <returns> /// The <see cref="T:System.Collections.Generic.ISet`1"/> . /// </returns> public ISet <IMaintainableMutableObject> GetMutableMaintainables(IComplexStructureReferenceObject complexRef, ComplexStructureQueryDetail returnDetail) { switch (complexRef.ReferencedStructureType.EnumType) { case SdmxStructureEnumType.AgencyScheme: return(new HashSet <IMaintainableMutableObject>(this.GetMutableAgencySchemeObjects(complexRef, returnDetail))); case SdmxStructureEnumType.DataConsumerScheme: return(new HashSet <IMaintainableMutableObject>(this.GetMutableDataConsumerSchemeObjects(complexRef, returnDetail))); case SdmxStructureEnumType.DataProviderScheme: return(new HashSet <IMaintainableMutableObject>(this.GetMutableDataProviderSchemeObjects(complexRef, returnDetail))); case SdmxStructureEnumType.Categorisation: return(new HashSet <IMaintainableMutableObject>(this.GetMutableCategorisationObjects(complexRef, returnDetail))); case SdmxStructureEnumType.CategoryScheme: return(new HashSet <IMaintainableMutableObject>(this.GetMutableCategorySchemeObjects(complexRef, returnDetail))); case SdmxStructureEnumType.CodeList: return(new HashSet <IMaintainableMutableObject>(this.GetMutableCodelistObjects(complexRef, returnDetail))); case SdmxStructureEnumType.ConceptScheme: return(new HashSet <IMaintainableMutableObject>(this.GetMutableConceptSchemeObjects(complexRef, returnDetail))); case SdmxStructureEnumType.Dataflow: return(new HashSet <IMaintainableMutableObject>(this.GetMutableDataflowObjects(complexRef, returnDetail))); case SdmxStructureEnumType.HierarchicalCodelist: return(new HashSet <IMaintainableMutableObject>(this.GetMutableHierarchicCodeListObjects(complexRef, returnDetail))); case SdmxStructureEnumType.Dsd: return(new HashSet <IMaintainableMutableObject>(this.GetMutableDataStructureObjects(complexRef, returnDetail))); case SdmxStructureEnumType.MetadataFlow: return(new HashSet <IMaintainableMutableObject>(this.GetMutableMetadataflowObjects(complexRef, returnDetail))); case SdmxStructureEnumType.Msd: return(new HashSet <IMaintainableMutableObject>(this.GetMutableMetadataStructureObjects(complexRef, returnDetail))); case SdmxStructureEnumType.OrganisationUnitScheme: return(new HashSet <IMaintainableMutableObject>(this.GetMutableOrganisationUnitSchemeObjects(complexRef, returnDetail))); case SdmxStructureEnumType.Process: return(new HashSet <IMaintainableMutableObject>(this.GetMutableProcessObjects(complexRef, returnDetail))); case SdmxStructureEnumType.ReportingTaxonomy: return(new HashSet <IMaintainableMutableObject>(this.GetMutableReportingTaxonomyObjects(complexRef, returnDetail))); case SdmxStructureEnumType.StructureSet: return(new HashSet <IMaintainableMutableObject>(this.GetMutableStructureSetObjects(complexRef, returnDetail))); case SdmxStructureEnumType.ProvisionAgreement: return(new HashSet <IMaintainableMutableObject>(this.GetMutableProvisionAgreementBeans(complexRef, returnDetail))); case SdmxStructureEnumType.ContentConstraint: return(new HashSet <IMaintainableMutableObject>(this.GetMutableContentConstraintObjects(complexRef, returnDetail))); default: throw new SdmxNotImplementedException(ExceptionCode.Unsupported, complexRef.ReferencedStructureType); } }
/// <summary> /// Gets HierarchicalCodelistObjects that match the parameters in the ref @object. If the ref @object is null or /// has no attributes set, then this will be interpreted as a search for all HierarchicalCodelistObjects /// </summary> /// <param name="complexRef"> /// The reference object defining the search parameters. /// </param> /// <param name="returnDetail"> /// The return Detail. /// </param> /// <returns> /// list of sdmxObjects that match the search criteria /// </returns> public ISet <IHierarchicalCodelistMutableObject> GetMutableHierarchicCodeListObjects(IComplexStructureReferenceObject complexRef, ComplexStructureQueryDetail returnDetail) { var xref = complexRef.GetMaintainableRefObject(); return(this._retrievalEngineContainer.HclRetrievalEngine.Retrieve(xref, returnDetail.EnumType, complexRef.GetVersionConstraints())); }
/// <summary> /// Gets a single HierarchicCodeList , this expects the ref object either to contain /// a URN or all the attributes required to uniquely identify the object. If version information /// is missing then the latest version is assumed. /// </summary> /// <param name="complexRef"> /// The reference object defining the search parameters. /// </param> /// <param name="returnDetail"> /// The return Detail. /// </param> /// <returns> /// The <see cref="T:Org.Sdmxsource.Sdmx.Api.Model.Mutable.Codelist.IHierarchicalCodelistMutableObject"/> . /// </returns> public IHierarchicalCodelistMutableObject GetMutableHierarchicCodeList(IComplexStructureReferenceObject complexRef, ComplexStructureQueryDetail returnDetail) { var xref = complexRef.GetMaintainableRefObject(); return(xref.HasVersion() ? this._retrievalEngineContainer.HclRetrievalEngine.Retrieve(xref, returnDetail.EnumType, complexRef.GetVersionConstraints()).FirstOrDefault() : this._retrievalEngineContainer.HclRetrievalEngine.RetrieveLatest(xref, returnDetail.EnumType)); }
/// <summary> /// Gets MetadataStructureObjects that match the parameters in the ref @object. If the ref @object is null or /// has no attributes set, then this will be interpreted as a search for all MetadataStructureObjects /// </summary> /// <param name="complexRef"> /// The reference object defining the search parameters. /// </param> /// <param name="returnDetail"> /// The return Detail. /// </param> /// <returns> /// list of sdmxObjects that match the search criteria /// </returns> public ISet<IMetadataStructureDefinitionMutableObject> GetMutableMetadataStructureObjects(IComplexStructureReferenceObject complexRef, ComplexStructureQueryDetail returnDetail) { return this._retrievalManager.GetMutableMetadataStructureObjects(complexRef, returnDetail); }
/// <summary> /// Gets a single CategoryScheme , this expects the ref object either to contain /// a URN or all the attributes required to uniquely identify the object. If version information /// is missing then the latest version is assumed. /// </summary> /// <param name="complexRef"> /// The reference object defining the search parameters. /// </param> /// <param name="returnDetail"> /// The return Detail. /// </param> /// <returns> /// The <see cref="T:Org.Sdmxsource.Sdmx.Api.Model.Mutable.CategoryScheme.ICategorySchemeMutableObject"/> . /// </returns> public ICategorySchemeMutableObject GetMutableCategoryScheme(IComplexStructureReferenceObject complexRef, ComplexStructureQueryDetail returnDetail) { var xref = complexRef.GetMaintainableRefObject(); return xref.HasVersion() ? this._retrievalEngineContainer.CategorySchemeRetrievalEngine.Retrieve(xref, returnDetail.EnumType, complexRef.GetVersionConstraints()).FirstOrDefault() : this._retrievalEngineContainer.CategorySchemeRetrievalEngine.RetrieveLatest(xref, returnDetail.EnumType); }
/// <summary> /// Gets a process @object, this expects the ref object either to contain /// a URN or all the attributes required to uniquely identify the object. If version information /// is missing then the latest version is assumed. /// </summary> /// <param name="complexRef"> /// The reference object defining the search parameters. /// </param> /// <param name="returnDetail"> /// The return Detail. /// </param> /// <returns> /// The <see cref="T:Org.Sdmxsource.Sdmx.Api.Model.Mutable.Process.IProcessMutableObject"/> . /// </returns> public IProcessMutableObject GetMutableProcessObject(IComplexStructureReferenceObject complexRef, ComplexStructureQueryDetail returnDetail) { return this._retrievalManager.GetMutableProcessObject(complexRef, returnDetail); }
/// <summary> /// Gets DataStructureObjects that match the parameters in the ref @object. If the ref @object is null or /// has no attributes set, then this will be interpreted as a search for all dataStructureObjects /// </summary> /// <param name="complexRef"> /// The reference object defining the search parameters. /// </param> /// <param name="returnDetail"> /// The return Detail. /// </param> /// <returns> /// list of sdmxObjects that match the search criteria /// </returns> public ISet<IDataStructureMutableObject> GetMutableDataStructureObjects(IComplexStructureReferenceObject complexRef, ComplexStructureQueryDetail returnDetail) { var xref = complexRef.GetMaintainableRefObject(); return this._retrievalEngineContainer.DSDRetrievalEngine.Retrieve(xref, returnDetail.EnumType, complexRef.GetVersionConstraints()); }
/// <summary> /// Gets DataflowObjects that match the parameters in the ref @object. If the ref @object is null or /// has no attributes set, then this will be interpreted as a search for all DataflowObjects /// </summary> /// <param name="complexRef"> /// The reference object defining the search parameters. /// </param> /// <param name="returnDetail"> /// The return Detail. /// </param> /// <returns> /// list of sdmxObjects that match the search criteria /// </returns> public ISet <IDataflowMutableObject> GetMutableDataflowObjects(IComplexStructureReferenceObject complexRef, ComplexStructureQueryDetail returnDetail) { var xref = complexRef.GetMaintainableRefObject(); return(this._retrievalEngineContainer.DataflowRetrievalEngine.Retrieve(xref, returnDetail.EnumType, complexRef.GetVersionConstraints())); }
/// <summary> /// Gets a single HierarchicCodeList , this expects the ref object either to contain /// a URN or all the attributes required to uniquely identify the object. If version information /// is missing then the latest version is assumed. /// </summary> /// <param name="complexRef"> /// The reference object defining the search parameters. /// </param> /// <param name="returnDetail"> /// The return Detail. /// </param> /// <returns> /// The <see cref="T:Org.Sdmxsource.Sdmx.Api.Model.Mutable.Codelist.IHierarchicalCodelistMutableObject"/> . /// </returns> public IHierarchicalCodelistMutableObject GetMutableHierarchicCodeList(IComplexStructureReferenceObject complexRef, ComplexStructureQueryDetail returnDetail) { var xref = complexRef.GetMaintainableRefObject(); return xref.HasVersion() ? this._retrievalEngineContainer.HclRetrievalEngine.Retrieve(xref, returnDetail.EnumType, complexRef.GetVersionConstraints()).FirstOrDefault() : this._retrievalEngineContainer.HclRetrievalEngine.RetrieveLatest(xref, returnDetail.EnumType); }
/// <summary> /// Initializes a new instance of the <see cref="ComplexAnnotationReferenceCore" /> class. /// </summary> /// <param name="returnMatchedArtefact">The return matched artefact.</param> /// <param name="processConstraints">if set to <c>true</c> [process constraints].</param> /// <param name="queryDetail">The query detail.</param> /// <param name="referencesQueryDetail">The references query detail.</param> /// <param name="referenceDetail">The reference detail.</param> /// <param name="referenceSpecificStructures">The reference specific structures.</param> public ComplexStructureQueryMetadataCore(bool returnMatchedArtefact, bool processConstraints, ComplexStructureQueryDetail queryDetail, ComplexMaintainableQueryDetail referencesQueryDetail, StructureReferenceDetail referenceDetail, IList<SdmxStructureType> referenceSpecificStructures) : this(returnMatchedArtefact, queryDetail, referencesQueryDetail, referenceDetail, referenceSpecificStructures) { this._processConstraints = processConstraints; }
/// <summary> /// Gets HierarchicalCodelistObjects that match the parameters in the ref @object. If the ref @object is null or /// has no attributes set, then this will be interpreted as a search for all HierarchicalCodelistObjects /// </summary> /// <param name="complexRef"> /// The reference object defining the search parameters. /// </param> /// <param name="returnDetail"> /// The return Detail. /// </param> /// <returns> /// list of sdmxObjects that match the search criteria /// </returns> public ISet<IHierarchicalCodelistMutableObject> GetMutableHierarchicCodeListObjects(IComplexStructureReferenceObject complexRef, ComplexStructureQueryDetail returnDetail) { var xref = complexRef.GetMaintainableRefObject(); return this._retrievalEngineContainer.HclRetrievalEngine.Retrieve(xref, returnDetail.EnumType, complexRef.GetVersionConstraints()); }
/// <summary> /// Gets a single CategoryScheme , this expects the ref object either to contain /// a URN or all the attributes required to uniquely identify the object. If version information /// is missing then the latest version is assumed. /// </summary> /// <param name="complexRef"> /// The reference object defining the search parameters. /// </param> /// <param name="returnDetail"> /// The return Detail. /// </param> /// <returns> /// The <see cref="T:Org.Sdmxsource.Sdmx.Api.Model.Mutable.CategoryScheme.ICategorySchemeMutableObject"/> . /// </returns> public ICategorySchemeMutableObject GetMutableCategoryScheme(IComplexStructureReferenceObject complexRef, ComplexStructureQueryDetail returnDetail) { return this._retrievalManager.GetMutableCategoryScheme(complexRef, returnDetail); }
/// <summary> /// Gets a set of maintainable objects which includes the maintainable being queried for, defined by the StructureQueryObject parameter. /// </summary> /// <param name="complexRef"> /// The complex Ref. /// </param> /// <param name="returnDetail"> /// The return Detail. /// </param> /// <returns> /// The <see cref="T:System.Collections.Generic.ISet`1"/> . /// </returns> public ISet<IMaintainableMutableObject> GetMutableMaintainables(IComplexStructureReferenceObject complexRef, ComplexStructureQueryDetail returnDetail) { switch (complexRef.ReferencedStructureType.EnumType) { case SdmxStructureEnumType.AgencyScheme: return new HashSet<IMaintainableMutableObject>(this.GetMutableAgencySchemeObjects(complexRef, returnDetail)); case SdmxStructureEnumType.DataConsumerScheme: return new HashSet<IMaintainableMutableObject>(this.GetMutableDataConsumerSchemeObjects(complexRef, returnDetail)); case SdmxStructureEnumType.DataProviderScheme: return new HashSet<IMaintainableMutableObject>(this.GetMutableDataProviderSchemeObjects(complexRef, returnDetail)); case SdmxStructureEnumType.Categorisation: return new HashSet<IMaintainableMutableObject>(this.GetMutableCategorisationObjects(complexRef, returnDetail)); case SdmxStructureEnumType.CategoryScheme: return new HashSet<IMaintainableMutableObject>(this.GetMutableCategorySchemeObjects(complexRef, returnDetail)); case SdmxStructureEnumType.CodeList: return new HashSet<IMaintainableMutableObject>(this.GetMutableCodelistObjects(complexRef, returnDetail)); case SdmxStructureEnumType.ConceptScheme: return new HashSet<IMaintainableMutableObject>(this.GetMutableConceptSchemeObjects(complexRef, returnDetail)); case SdmxStructureEnumType.Dataflow: return new HashSet<IMaintainableMutableObject>(this.GetMutableDataflowObjects(complexRef, returnDetail)); case SdmxStructureEnumType.HierarchicalCodelist: return new HashSet<IMaintainableMutableObject>(this.GetMutableHierarchicCodeListObjects(complexRef, returnDetail)); case SdmxStructureEnumType.Dsd: return new HashSet<IMaintainableMutableObject>(this.GetMutableDataStructureObjects(complexRef, returnDetail)); case SdmxStructureEnumType.MetadataFlow: return new HashSet<IMaintainableMutableObject>(this.GetMutableMetadataflowObjects(complexRef, returnDetail)); case SdmxStructureEnumType.Msd: return new HashSet<IMaintainableMutableObject>(this.GetMutableMetadataStructureObjects(complexRef, returnDetail)); case SdmxStructureEnumType.OrganisationUnitScheme: return new HashSet<IMaintainableMutableObject>(this.GetMutableOrganisationUnitSchemeObjects(complexRef, returnDetail)); case SdmxStructureEnumType.Process: return new HashSet<IMaintainableMutableObject>(this.GetMutableProcessObjects(complexRef, returnDetail)); case SdmxStructureEnumType.ReportingTaxonomy: return new HashSet<IMaintainableMutableObject>(this.GetMutableReportingTaxonomyObjects(complexRef, returnDetail)); case SdmxStructureEnumType.StructureSet: return new HashSet<IMaintainableMutableObject>(this.GetMutableStructureSetObjects(complexRef, returnDetail)); case SdmxStructureEnumType.ProvisionAgreement: return new HashSet<IMaintainableMutableObject>(this.GetMutableProvisionAgreementBeans(complexRef, returnDetail)); case SdmxStructureEnumType.ContentConstraint: return new HashSet<IMaintainableMutableObject>(this.GetMutableContentConstraintObjects(complexRef, returnDetail)); default: throw new SdmxNotImplementedException(ExceptionCode.Unsupported, complexRef.ReferencedStructureType); } }
/// <summary> /// Gets a single Dataflow , this expects the ref object either to contain /// a URN or all the attributes required to uniquely identify the object. If version information /// is missing then the latest version is assumed. /// </summary> /// <param name="complexRef"> /// The reference object defining the search parameters. /// </param> /// <param name="returnDetail"> /// The return Detail. /// </param> /// <param name="allowedDataflow"> /// The allowed Dataflow. /// </param> /// <returns> /// The <see cref="T:Org.Sdmxsource.Sdmx.Api.Model.Mutable.DataStructure.IDataflowMutableObject"/> . /// </returns> public IDataflowMutableObject GetMutableDataflow(IComplexStructureReferenceObject complexRef, ComplexStructureQueryDetail returnDetail, IList<IMaintainableRefObject> allowedDataflow) { var xref = complexRef.GetMaintainableRefObject(); return xref.HasVersion() ? this._retrievalEngineContainer.DataflowRetrievalEngine.Retrieve(xref, returnDetail.EnumType, complexRef.GetVersionConstraints(), allowedDataflow).FirstOrDefault() : this._retrievalEngineContainer.DataflowRetrievalEngine.RetrieveLatest(xref, returnDetail.EnumType, allowedDataflow); }
/// <summary> /// Gets a single MetadataStructure , this expects the ref object either to contain /// a URN or all the attributes required to uniquely identify the object. If version information /// is missing then the latest version is assumed. /// </summary> /// <param name="complexRef"> /// The reference object defining the search parameters. /// </param> /// <param name="returnDetail"> /// The return Detail. /// </param> /// <returns> /// The <see cref="T:Org.Sdmxsource.Sdmx.Api.Model.Mutable.MetadataStructure.IMetadataStructureDefinitionMutableObject"/> . /// </returns> public IMetadataStructureDefinitionMutableObject GetMutableMetadataStructure(IComplexStructureReferenceObject complexRef, ComplexStructureQueryDetail returnDetail) { throw new NotImplementedException(); }
/// <summary> /// Gets DataProviderSchemeMutableObjects that match the parameters in the ref @object. If the ref @object is null or /// has no attributes set, then this will be interpreted as a search for all CodelistObjects /// </summary> /// <param name="complexRef"> /// The reference object defining the search parameters. /// </param> /// <param name="returnDetail"> /// The return Detail. /// </param> /// <returns> /// list of sdmxObjects that match the search criteria /// </returns> public ISet<IDataProviderSchemeMutableObject> GetMutableDataProviderSchemeObjects(IComplexStructureReferenceObject complexRef, ComplexStructureQueryDetail returnDetail) { return this._retrievalManager.GetMutableDataProviderSchemeObjects(complexRef, returnDetail); }
/// <summary> /// Gets MetadataFlowObjects that match the parameters in the ref @object. If the ref @object is null or /// has no attributes set, then this will be interpreted as a search for all MetadataFlowObjects /// </summary> /// <param name="complexRef"> /// The reference object defining the search parameters. /// </param> /// <param name="returnDetail"> /// The return Detail. /// </param> /// <returns> /// list of sdmxObjects that match the search criteria /// </returns> public ISet<IMetadataFlowMutableObject> GetMutableMetadataflowObjects(IComplexStructureReferenceObject complexRef, ComplexStructureQueryDetail returnDetail) { throw new NotImplementedException(); }
/// <summary> /// Gets HierarchicalCodelistObjects that match the parameters in the ref @object. If the ref @object is null or /// has no attributes set, then this will be interpreted as a search for all HierarchicalCodelistObjects /// </summary> /// <param name="complexRef"> /// The reference object defining the search parameters. /// </param> /// <param name="returnDetail"> /// The return Detail. /// </param> /// <returns> /// list of sdmxObjects that match the search criteria /// </returns> public ISet<IHierarchicalCodelistMutableObject> GetMutableHierarchicCodeListObjects(IComplexStructureReferenceObject complexRef, ComplexStructureQueryDetail returnDetail) { return this._retrievalManager.GetMutableHierarchicCodeListObjects(complexRef, returnDetail); }
/// <summary> /// Gets a process @object, this expects the ref object either to contain /// a URN or all the attributes required to uniquely identify the object. If version information /// is missing then the latest version is assumed. /// </summary> /// <param name="complexRef"> /// The reference object defining the search parameters. /// </param> /// <param name="returnDetail"> /// The return Detail. /// </param> /// <returns> /// The <see cref="T:Org.Sdmxsource.Sdmx.Api.Model.Mutable.Process.IProcessMutableObject"/> . /// </returns> public IProcessMutableObject GetMutableProcessObject(IComplexStructureReferenceObject complexRef, ComplexStructureQueryDetail returnDetail) { throw new NotImplementedException(); }
/// <summary> /// Gets a single Metadataflow , this expects the ref object either to contain /// a URN or all the attributes required to uniquely identify the object. If version information /// is missing then the latest version is assumed. /// </summary> /// <param name="complexRef"> /// The reference object defining the search parameters. /// </param> /// <param name="returnDetail"> /// The return Detail. /// </param> /// <returns> /// The <see cref="T:Org.Sdmxsource.Sdmx.Api.Model.Mutable.MetadataStructure.IMetadataFlowMutableObject"/> . /// </returns> public IMetadataFlowMutableObject GetMutableMetadataflow(IComplexStructureReferenceObject complexRef, ComplexStructureQueryDetail returnDetail) { return this._retrievalManager.GetMutableMetadataflow(complexRef, returnDetail); }
/// <summary> /// Returns ProvisionAgreement beans that match the parameters in the ref bean. If the ref bean is null or /// has no attributes set, then this will be interpreted as a search for all ProvisionAgreement beans. /// </summary> /// <param name="complexRef"> /// the reference object defining the search parameters, can be empty or null /// </param> /// <param name="returnDetail"> /// The return Detail. /// </param> /// <returns> /// list of objects that match the search criteria /// </returns> public ISet<IProvisionAgreementMutableObject> GetMutableProvisionAgreementBeans(IComplexStructureReferenceObject complexRef, ComplexStructureQueryDetail returnDetail) { throw new NotImplementedException(); }
/// <summary> /// Gets OrganisationUnitSchemeMutableObject that match the parameters in the ref @object. If the ref @object is null or /// has no attributes set, then this will be interpreted as a search for all OrganisationUnitSchemeMutableObject /// </summary> /// <param name="complexRef"> /// The reference object defining the search parameters. /// </param> /// <param name="returnDetail"> /// The return Detail. /// </param> /// <returns> /// list of sdmxObjects that match the search criteria /// </returns> public ISet<IOrganisationUnitSchemeMutableObject> GetMutableOrganisationUnitSchemeObjects(IComplexStructureReferenceObject complexRef, ComplexStructureQueryDetail returnDetail) { return this._retrievalManager.GetMutableOrganisationUnitSchemeObjects(complexRef, returnDetail); }
/// <summary> /// Gets ReportingTaxonomyObjects that match the parameters in the ref @object. If the ref @object is null or /// has no attributes set, then this will be interpreted as a search for all ReportingTaxonomyObjects /// </summary> /// <param name="complexRef"> /// The reference object defining the search parameters. /// </param> /// <param name="returnDetail"> /// The return Detail. /// </param> /// <returns> /// list of sdmxObjects that match the search criteria /// </returns> public ISet<IReportingTaxonomyMutableObject> GetMutableReportingTaxonomyObjects(IComplexStructureReferenceObject complexRef, ComplexStructureQueryDetail returnDetail) { throw new NotImplementedException(); }
/// <summary> /// Returns ProvisionAgreement beans that match the parameters in the ref bean. If the ref bean is null or /// has no attributes set, then this will be interpreted as a search for all ProvisionAgreement beans. /// </summary> /// <param name="complexRef"> /// the reference object defining the search parameters, can be empty or null /// </param> /// <param name="returnDetail"> /// The return Detail. /// </param> /// <returns> /// list of objects that match the search criteria /// </returns> public ISet<IProvisionAgreementMutableObject> GetMutableProvisionAgreementBeans(IComplexStructureReferenceObject complexRef, ComplexStructureQueryDetail returnDetail) { return this._retrievalManager.GetMutableProvisionAgreementBeans(complexRef, returnDetail); }
/// <summary> /// Gets a structure set @object, this expects the ref object either to contain /// a URN or all the attributes required to uniquely identify the object. If version information /// is missing then the latest version is assumed. /// </summary> /// <param name="complexRef"> /// The reference object defining the search parameters. /// </param> /// <param name="returnDetail"> /// The return Detail. /// </param> /// <returns> /// The <see cref="T:Org.Sdmxsource.Sdmx.Api.Model.Mutable.Mapping.IStructureSetMutableObject"/> . /// </returns> public IStructureSetMutableObject GetMutableStructureSet(IComplexStructureReferenceObject complexRef, ComplexStructureQueryDetail returnDetail) { // 8.11 ISTAT ENHANCEMENT var xref = complexRef.GetMaintainableRefObject(); return xref.HasVersion() ? this._retrievalEngineContainer.StructureSetRetrievalEngine.Retrieve(xref, returnDetail.EnumType, complexRef.GetVersionConstraints()).FirstOrDefault() : this._retrievalEngineContainer.StructureSetRetrievalEngine.RetrieveLatest(xref, returnDetail.EnumType); }
/// <summary> /// Gets StructureSetObjects that match the parameters in the ref @object. If the ref @object is null or /// has no attributes set, then this will be interpreted as a search for all StructureSetObjects /// </summary> /// <param name="complexRef"> /// The reference object defining the search parameters. /// </param> /// <param name="returnDetail"> /// The return Detail. /// </param> /// <returns> /// list of sdmxObjects that match the search criteria /// </returns> public ISet<IStructureSetMutableObject> GetMutableStructureSetObjects(IComplexStructureReferenceObject complexRef, ComplexStructureQueryDetail returnDetail) { return this._retrievalManager.GetMutableStructureSetObjects(complexRef, returnDetail); }
/// <summary> /// Gets a single Categorisation, this expects the ref object either to contain /// a URN or all the attributes required to uniquely identify the object. If version information /// is missing then the latest version is assumed. /// </summary> /// <param name="complexRef"> /// The reference object defining the search parameters. /// </param> /// <param name="returnDetail"> /// The return Detail. /// </param> /// <returns> /// The <see cref="T:Org.Sdmxsource.Sdmx.Api.Model.Mutable.CategoryScheme.ICategorisationMutableObject"/> . /// </returns> public ICategorisationMutableObject GetMutableCategorisation(IComplexStructureReferenceObject complexRef, ComplexStructureQueryDetail returnDetail) { var xref = complexRef.GetMaintainableRefObject(); if (xref.HasVersion()) { return(this._retrievalEngineContainer.CategorisationRetrievalEngine.Retrieve(xref, returnDetail.EnumType, complexRef.GetVersionConstraints()).FirstOrDefault()); } //// TODO Change this when mapping store is modified to host proper categorisation artefacts return(this._retrievalEngineContainer.CategorisationRetrievalEngine.RetrieveLatest(xref, returnDetail.EnumType)); }