/// <summary>
        /// initializes the correct class for the ICategoriesManager interface
        /// </summary>
        /// <param name="_parsingObject">the <see cref="ISdmxParsingObject"/></param>
        /// <param name="_versionTypeResp">Sdmx Version</param>
        /// <returns><see cref="ICategoriesManager"/> Instance</returns>
        public ICategoriesManager InstanceCategoriesManager(ISdmxParsingObject _parsingObject, SdmxSchemaEnumType _versionTypeResp)
        {
            //if (string.IsNullOrEmpty(FlyConfiguration.ConnectionStringCategory))
            //    return new FlyDotStat_implementation.Manager.Metadata.CategoriesManagerSP(_parsingObject, _versionTypeResp);
            //else
            //    return new FlyDotStat_implementation.Manager.Metadata.CategoriesManager(_parsingObject, _versionTypeResp);

            return(new CategoriesManager(_parsingObject, _versionTypeResp));
        }
예제 #2
0
        /// <summary>
        /// initializes the correct class for the IDataflowsManager interface
        /// </summary>
        /// <param name="_parsingObject">the <see cref="ISdmxParsingObject"/></param>
        /// <param name="_versionTypeResp">Sdmx Version</param>
        /// <returns><see cref="IDataflowsManager"/> Instance</returns>
        public IDataflowsManager InstanceDataflowsManager(ISdmxParsingObject _parsingObject, SdmxSchemaEnumType _versionTypeResp)
        {
            IDataflowsManager dfManager = new DatasetsManager(_parsingObject, _versionTypeResp);

            if (dfManager.DbAccess.CheckExistStoreProcedure(DBOperationEnum.GetDataflows))
            {
                return(new DataflowsManager(_parsingObject, _versionTypeResp));
            }
            return(dfManager);
        }
예제 #3
0
 /// <summary>
 /// initializes the correct class for the ICategoriesManager interface
 /// </summary>
 /// <param name="_parsingObject">the <see cref="ISdmxParsingObject"/></param>
 /// <param name="_versionTypeResp">Sdmx Version</param>
 /// <returns><see cref="ICategoriesManager"/> Instance</returns>
 public ICategoriesManager InstanceCategoriesManager(ISdmxParsingObject _parsingObject, SdmxSchemaEnumType _versionTypeResp)
 {
     if (string.IsNullOrEmpty(FlyConfiguration.ConnectionStringCategory))
     {
         return(new CategoriesManagerSP(_parsingObject, _versionTypeResp));
     }
     else
     {
         return(new CategoriesManager(_parsingObject, _versionTypeResp));
     }
 }
예제 #4
0
        /// <summary>
        /// Entrypoint of class FlyEngine that processes the request
        /// and produces a response or an error
        /// </summary>
        /// <param name="_parsingObject">Processed request</param>
        /// <param name="_versionType">Sdmx Version</param>
        public void Engine(ISdmxParsingObject _parsingObject, SdmxSchemaEnumType _versionType)
        {
            try
            {
                this.VersionTypeResp = _versionType;

                //IDBAccess DbAccess = new DWHAccess(FlyConfiguration.ConnectionString);


                _parsingObject.PreliminarCheck();
                FlyLog.WriteLog(this, FlyLog.LogTypeEnum.All, "Query Preliminar Check passed. Start creation of SDMXObject");

                Builder = CreateBuilder(_parsingObject, _versionType);

                if (Builder == null)
                {
                    throw new SdmxException(this, FlyExceptionObject.FlyExceptionTypeEnum.NotSupportedRegistryType, new Exception(_parsingObject.SdmxStructureType.ToString()));
                }
                FlyLog.WriteLog(this, FlyLog.LogTypeEnum.All, "Parsing Metadata: {0}", _parsingObject.SdmxStructureType.ToString());

                Builder.Build();

                ParseOtherRegistry(_parsingObject);

                Builder.AddReferences();
            }
            catch (SdmxException sdmxerr)
            {
                HaveError    = true;
                ErrorMessage = sdmxerr;
            }
            catch (Exception err)
            {
                HaveError    = true;
                ErrorMessage = new SdmxException(this, FlyExceptionObject.FlyExceptionTypeEnum.InternalError, err);
            }
        }
예제 #5
0
        /// <summary>
        /// initializes the correct class for the IConceptSchemeManager interface
        /// </summary>
        /// <param name="_parsingObject">the <see cref="ISdmxParsingObject"/></param>
        /// <param name="_versionTypeResp">Sdmx Version</param>
        /// <returns><see cref="IConceptSchemeManager"/> Instance</returns>
        public IConceptSchemeManager InstanceConceptSchemeManager(ISdmxParsingObject _parsingObject, SdmxSchemaEnumType _versionTypeResp)
        {
            IConceptSchemeManager csManager = new ConceptSchemeManager(_parsingObject, _versionTypeResp);

            return(csManager);
        }
 /// <summary>
 /// Create ConceptBuilder Istance
 /// </summary>
 /// <param name="_names">ConceptScheme Descriptions Names</param>
 /// <param name="parsingObject">Parsing Object <see cref="ISdmxParsingObject"/></param>
 /// <param name="versionTypeResp">Sdmx Version</param>
 public ConceptBuilder(List <SdmxObjectNameDescription> _names, ISdmxParsingObject parsingObject, SdmxSchemaEnumType versionTypeResp) :
     base(parsingObject, versionTypeResp)
 {
     this.Names = _names;
 }
예제 #7
0
 /// <summary>
 /// create a GetStructure instance
 /// </summary>
 /// <param name="_parsingObject">Sdmx Parsing Object</param>
 /// <param name="_versionTypeResp">Sdmx Version</param>
 public GetStructure(ISdmxParsingObject _parsingObject, SdmxSchemaEnumType _versionTypeResp)
     : base(_parsingObject, _versionTypeResp)
 {
 }
 /// <summary>
 /// create a GetAgencyScheme instance
 /// </summary>
 /// <param name="_parsingObject">Sdmx Parsing Object</param>
 /// <param name="_versionTypeResp">Sdmx Version</param>
 public GetAgencyScheme(ISdmxParsingObject _parsingObject, SdmxSchemaEnumType _versionTypeResp)
     : base(_parsingObject, _versionTypeResp)
 {
 }
예제 #9
0
 /// <summary>
 /// Inizialize for BaseManager Class
 /// </summary>
 /// <param name="_parsingObject">the <see cref="ISdmxParsingObject"/></param>
 /// <param name="_versionTypeResp">Sdmx Version</param>
 public DataflowsManager(ISdmxParsingObject _parsingObject, SdmxSchemaEnumType _versionTypeResp)
     : base(_parsingObject, _versionTypeResp)
 {
 }
 /// <summary>
 /// Inizialize for BaseManager Class
 /// </summary>
 /// <param name="_parsingObject">the <see cref="ISdmxParsingObject"/></param>
 /// <param name="_versionTypeResp">Sdmx Version</param>
 public DimensionCodelistsManager(ISdmxParsingObject _parsingObject, SdmxSchemaEnumType _versionTypeResp)
     : base(_parsingObject, _versionTypeResp)
 {
 }
 /// <summary>
 /// Create DataStructureBuilder Istance
 /// </summary>
 /// <param name="concepts"> list of all concepts</param>
 /// <param name="parsingObject">Parsing Object <see cref="ISdmxParsingObject"/></param>
 /// <param name="versionTypeResp">Sdmx Version</param>
 public DataStructureBuilder(List <IConceptObjectImpl> concepts, ISdmxParsingObject parsingObject, SdmxSchemaEnumType versionTypeResp) :
     base(parsingObject, versionTypeResp)
 {
     _Concepts = concepts;
 }
예제 #12
0
 /// <summary>
 /// Inizialize new instance of CategorySchemeBuilder
 /// </summary>
 /// <param name="parsingObject">Parsing Object <see cref="ISdmxParsingObject"/></param>
 /// <param name="versionTypeResp">Sdmx Version</param>
 public CategorySchemeBuilder(ISdmxParsingObject parsingObject, SdmxSchemaEnumType versionTypeResp) :
     base(parsingObject, versionTypeResp)
 {
 }
 /// <summary>
 /// initializes the correct class for the IAgencyManager interface
 /// </summary>
 /// <param name="_parsingObject">the <see cref="ISdmxParsingObject"/></param>
 /// <param name="_versionTypeResp">Sdmx Version</param>
 /// <returns><see cref="IAgencyManager"/> Instance</returns>
 public IAgencyManager InstanceAgencyManager(ISdmxParsingObject _parsingObject, SdmxSchemaEnumType _versionTypeResp)
 {
     return(new FlyDotStat_implementation.Manager.Metadata.AgencyManager(_parsingObject, _versionTypeResp));
 }
예제 #14
0
 /// <summary>
 /// Inizialize for BaseManager Class
 /// </summary>
 /// <param name="_parsingObject">the <see cref="ISdmxParsingObject"/></param>
 /// <param name="_versionTypeResp">Sdmx Version</param>
 public BaseManager(ISdmxParsingObject _parsingObject, SdmxSchemaEnumType _versionTypeResp)
 {
     this.parsingObject   = _parsingObject;
     this.versionTypeResp = _versionTypeResp;
 }
 /// <summary>
 /// Initialize a new instance of <see cref="RetrievalReferences"/>
 /// </summary>
 /// <param name="_sdmxObjectBuilder">the <see cref="ISDMXObjectBuilder"/></param>
 public RetrievalReferences(ISDMXObjectBuilder _sdmxObjectBuilder)
 {
     this._SDMXObjectBuilder = _sdmxObjectBuilder;
     this.ParsingObject      = this._SDMXObjectBuilder.ParsingObject.CloneForReferences();
     this.ReferencesObject   = new IReferencesObject();
 }
예제 #16
0
 /// <summary>
 /// create a SDMXObjectBuilder instance
 /// and requires all Classbuilder to request this information
 /// </summary>
 /// <param name="_parsingObject">Processed request</param>
 /// <param name="_versionTypeResp">Sdmx Version</param>
 public SDMXObjectBuilder(ISdmxParsingObject _parsingObject, SdmxSchemaEnumType _versionTypeResp)
 {
     this.ParsingObject   = _parsingObject;
     this.VersionTypeResp = _versionTypeResp;
 }
 /// <summary>
 /// Create DataflowBuilder Istance
 /// </summary>
 /// <param name="id"> Identificable Dataflow Code</param>
 /// <param name="names">Dataflow Descriptions Names</param>
 /// <param name="parsingObject">Parsing Object <see cref="ISdmxParsingObject"/></param>
 /// <param name="versionTypeResp">Sdmx Version</param>
 public DataflowBuilder(string id, List <SdmxObjectNameDescription> names, ISdmxParsingObject parsingObject, SdmxSchemaEnumType versionTypeResp) :
     base(parsingObject, versionTypeResp)
 {
     this.Code  = id;
     this.Names = names;
 }
예제 #18
0
 /// <summary>
 /// initializes the correct class for the ICodelistsManager interface
 /// </summary>
 /// <param name="_parsingObject">the <see cref="ISdmxParsingObject"/></param>
 /// <param name="_versionTypeResp">Sdmx Version</param>
 /// <returns><see cref="ICodelistManager"/> Instance</returns>
 public ICodelistManager InstanceCodelistsManager(ISdmxParsingObject _parsingObject, SdmxSchemaEnumType _versionTypeResp)
 {
     return(new CodelistManager(_parsingObject, _versionTypeResp));
 }
예제 #19
0
 /// <summary>
 /// initializes the correct class for the IDsdManager interface
 /// </summary>
 /// <param name="_parsingObject">the <see cref="ISdmxParsingObject"/></param>
 /// <param name="_versionTypeResp">Sdmx Version</param>
 /// <returns><see cref="IDsdManager"/> Instance</returns>
 public IDsdManager InstanceDsdManager(ISdmxParsingObject _parsingObject, SdmxSchemaEnumType _versionTypeResp)
 {
     return(new DsdManager(_parsingObject, _versionTypeResp));
 }
 /// <summary>
 /// Inizialize new instance of ObjectBuilder
 /// </summary>
 /// <param name="parsingObject">Parsing Object <see cref="ISdmxParsingObject"/></param>
 /// <param name="versionTypeResp">Sdmx Version</param>
 public ObjectBuilder(ISdmxParsingObject parsingObject, SdmxSchemaEnumType versionTypeResp)
 {
     this.ParsingObject   = parsingObject;
     this.VersionTypeResp = versionTypeResp;
 }
예제 #21
0
        /// <summary>
        /// Implement correct Metadata Builder to process the request
        /// identifies the correct implementation with the SdmxStructureType property of SdmxParsingObject
        /// </summary>
        /// <param name="_parsingObject">Processed request</param>
        /// <param name="_versionTypeResp">Sdmx Version</param>
        /// <returns>Implementation of SDMXObjectBuilder</returns>
        public ISDMXObjectBuilder CreateBuilder(ISdmxParsingObject _parsingObject, SdmxSchemaEnumType _versionTypeResp)
        {
            try
            {
                this.VersionTypeResp = _versionTypeResp;
                ISDMXObjectBuilder _builder = null;
                EngineChooser      chooser  = new EngineChooser(_parsingObject, _versionTypeResp);
                #region Creazione dei Builder
                switch (_parsingObject.SdmxStructureType)
                {
                case Org.Sdmxsource.Sdmx.Api.Constants.SdmxStructureEnumType.Dataflow:
                    _builder = chooser.GetDataflows();
                    break;

                case Org.Sdmxsource.Sdmx.Api.Constants.SdmxStructureEnumType.ConceptScheme:
                    _builder = chooser.GetConcepts();
                    break;

                case Org.Sdmxsource.Sdmx.Api.Constants.SdmxStructureEnumType.CodeList:
                    _builder = chooser.GetCodelists();

                    break;

                case Org.Sdmxsource.Sdmx.Api.Constants.SdmxStructureEnumType.AgencyScheme:
                case Org.Sdmxsource.Sdmx.Api.Constants.SdmxStructureEnumType.OrganisationScheme:
                    _builder = chooser.GetAgencyScheme();
                    break;

                case Org.Sdmxsource.Sdmx.Api.Constants.SdmxStructureEnumType.CategoryScheme:
                case Org.Sdmxsource.Sdmx.Api.Constants.SdmxStructureEnumType.Categorisation:
                    _builder = chooser.GetCategoryScheme();
                    break;

                case Org.Sdmxsource.Sdmx.Api.Constants.SdmxStructureEnumType.Dsd:
                    _builder = chooser.GetStructure();

                    break;

                //qui sotto ancora non implementate
                case Org.Sdmxsource.Sdmx.Api.Constants.SdmxStructureEnumType.Annotation:
                case Org.Sdmxsource.Sdmx.Api.Constants.SdmxStructureEnumType.Any:
                case Org.Sdmxsource.Sdmx.Api.Constants.SdmxStructureEnumType.AttachmentConstraint:
                case Org.Sdmxsource.Sdmx.Api.Constants.SdmxStructureEnumType.AttachmentConstraintAttachment:
                case Org.Sdmxsource.Sdmx.Api.Constants.SdmxStructureEnumType.AttributeDescriptor:
                case Org.Sdmxsource.Sdmx.Api.Constants.SdmxStructureEnumType.CategoryId:
                case Org.Sdmxsource.Sdmx.Api.Constants.SdmxStructureEnumType.CategoryMap:
                case Org.Sdmxsource.Sdmx.Api.Constants.SdmxStructureEnumType.CategorySchemeMap:
                case Org.Sdmxsource.Sdmx.Api.Constants.SdmxStructureEnumType.Code:
                case Org.Sdmxsource.Sdmx.Api.Constants.SdmxStructureEnumType.CodeListMap:
                case Org.Sdmxsource.Sdmx.Api.Constants.SdmxStructureEnumType.CodeListRef:
                case Org.Sdmxsource.Sdmx.Api.Constants.SdmxStructureEnumType.CodeMap:
                case Org.Sdmxsource.Sdmx.Api.Constants.SdmxStructureEnumType.Component:
                case Org.Sdmxsource.Sdmx.Api.Constants.SdmxStructureEnumType.ComponentMap:
                case Org.Sdmxsource.Sdmx.Api.Constants.SdmxStructureEnumType.Computation:
                case Org.Sdmxsource.Sdmx.Api.Constants.SdmxStructureEnumType.ConceptMap:
                case Org.Sdmxsource.Sdmx.Api.Constants.SdmxStructureEnumType.ConceptSchemeMap:
                case Org.Sdmxsource.Sdmx.Api.Constants.SdmxStructureEnumType.ConstrainedDataKey:
                case Org.Sdmxsource.Sdmx.Api.Constants.SdmxStructureEnumType.ConstrainedDataKeyset:
                case Org.Sdmxsource.Sdmx.Api.Constants.SdmxStructureEnumType.Constraint:
                case Org.Sdmxsource.Sdmx.Api.Constants.SdmxStructureEnumType.ConstraintContentTarget:
                case Org.Sdmxsource.Sdmx.Api.Constants.SdmxStructureEnumType.Contact:
                case Org.Sdmxsource.Sdmx.Api.Constants.SdmxStructureEnumType.ContentConstraint:
                case Org.Sdmxsource.Sdmx.Api.Constants.SdmxStructureEnumType.ContentConstraintAttachment:
                case Org.Sdmxsource.Sdmx.Api.Constants.SdmxStructureEnumType.CrossSectionalMeasure:
                case Org.Sdmxsource.Sdmx.Api.Constants.SdmxStructureEnumType.CubeRegion:
                case Org.Sdmxsource.Sdmx.Api.Constants.SdmxStructureEnumType.DataAttribute:
                case Org.Sdmxsource.Sdmx.Api.Constants.SdmxStructureEnumType.DataConsumer:
                case Org.Sdmxsource.Sdmx.Api.Constants.SdmxStructureEnumType.DataConsumerScheme:
                case Org.Sdmxsource.Sdmx.Api.Constants.SdmxStructureEnumType.DataProvider:
                case Org.Sdmxsource.Sdmx.Api.Constants.SdmxStructureEnumType.DataProviderScheme:
                case Org.Sdmxsource.Sdmx.Api.Constants.SdmxStructureEnumType.Dataset:
                case Org.Sdmxsource.Sdmx.Api.Constants.SdmxStructureEnumType.DatasetReference:
                case Org.Sdmxsource.Sdmx.Api.Constants.SdmxStructureEnumType.DatasetTarget:
                case Org.Sdmxsource.Sdmx.Api.Constants.SdmxStructureEnumType.Datasource:
                case Org.Sdmxsource.Sdmx.Api.Constants.SdmxStructureEnumType.Dimension:
                case Org.Sdmxsource.Sdmx.Api.Constants.SdmxStructureEnumType.DimensionDescriptor:
                case Org.Sdmxsource.Sdmx.Api.Constants.SdmxStructureEnumType.DimensionDescriptorValuesTarget:
                case Org.Sdmxsource.Sdmx.Api.Constants.SdmxStructureEnumType.Group:
                case Org.Sdmxsource.Sdmx.Api.Constants.SdmxStructureEnumType.HierarchicalCode:
                case Org.Sdmxsource.Sdmx.Api.Constants.SdmxStructureEnumType.HierarchicalCodelist:
                case Org.Sdmxsource.Sdmx.Api.Constants.SdmxStructureEnumType.Hierarchy:
                case Org.Sdmxsource.Sdmx.Api.Constants.SdmxStructureEnumType.HybridCode:
                case Org.Sdmxsource.Sdmx.Api.Constants.SdmxStructureEnumType.HybridCodelistMap:
                case Org.Sdmxsource.Sdmx.Api.Constants.SdmxStructureEnumType.IdentifiableObjectTarget:
                case Org.Sdmxsource.Sdmx.Api.Constants.SdmxStructureEnumType.InputOutput:
                case Org.Sdmxsource.Sdmx.Api.Constants.SdmxStructureEnumType.ItemMap:
                case Org.Sdmxsource.Sdmx.Api.Constants.SdmxStructureEnumType.KeyValues:
                case Org.Sdmxsource.Sdmx.Api.Constants.SdmxStructureEnumType.Level:
                case Org.Sdmxsource.Sdmx.Api.Constants.SdmxStructureEnumType.LocalRepresentation:
                case Org.Sdmxsource.Sdmx.Api.Constants.SdmxStructureEnumType.MeasureDescriptor:
                case Org.Sdmxsource.Sdmx.Api.Constants.SdmxStructureEnumType.MeasureDimension:
                case Org.Sdmxsource.Sdmx.Api.Constants.SdmxStructureEnumType.MetadataAttribute:
                case Org.Sdmxsource.Sdmx.Api.Constants.SdmxStructureEnumType.MetadataDocument:
                case Org.Sdmxsource.Sdmx.Api.Constants.SdmxStructureEnumType.MetadataFlow:
                case Org.Sdmxsource.Sdmx.Api.Constants.SdmxStructureEnumType.MetadataReferenceValue:
                case Org.Sdmxsource.Sdmx.Api.Constants.SdmxStructureEnumType.MetadataReport:
                case Org.Sdmxsource.Sdmx.Api.Constants.SdmxStructureEnumType.MetadataReportAttribute:
                case Org.Sdmxsource.Sdmx.Api.Constants.SdmxStructureEnumType.MetadataReportTarget:
                case Org.Sdmxsource.Sdmx.Api.Constants.SdmxStructureEnumType.MetadataSet:
                case Org.Sdmxsource.Sdmx.Api.Constants.SdmxStructureEnumType.MetadataTarget:
                case Org.Sdmxsource.Sdmx.Api.Constants.SdmxStructureEnumType.MetadataTargetRegion:
                case Org.Sdmxsource.Sdmx.Api.Constants.SdmxStructureEnumType.Msd:
                case Org.Sdmxsource.Sdmx.Api.Constants.SdmxStructureEnumType.Null:
                case Org.Sdmxsource.Sdmx.Api.Constants.SdmxStructureEnumType.OrganisationMap:
                case Org.Sdmxsource.Sdmx.Api.Constants.SdmxStructureEnumType.OrganisationSchemeMap:
                case Org.Sdmxsource.Sdmx.Api.Constants.SdmxStructureEnumType.OrganisationUnit:
                case Org.Sdmxsource.Sdmx.Api.Constants.SdmxStructureEnumType.OrganisationUnitScheme:
                case Org.Sdmxsource.Sdmx.Api.Constants.SdmxStructureEnumType.PrimaryMeasure:
                case Org.Sdmxsource.Sdmx.Api.Constants.SdmxStructureEnumType.Process:
                case Org.Sdmxsource.Sdmx.Api.Constants.SdmxStructureEnumType.ProcessStep:
                case Org.Sdmxsource.Sdmx.Api.Constants.SdmxStructureEnumType.ProvisionAgreement:
                case Org.Sdmxsource.Sdmx.Api.Constants.SdmxStructureEnumType.ReferencePeriod:
                case Org.Sdmxsource.Sdmx.Api.Constants.SdmxStructureEnumType.Registration:
                case Org.Sdmxsource.Sdmx.Api.Constants.SdmxStructureEnumType.RelatedStructures:
                case Org.Sdmxsource.Sdmx.Api.Constants.SdmxStructureEnumType.ReleaseCalendar:
                case Org.Sdmxsource.Sdmx.Api.Constants.SdmxStructureEnumType.ReportPeriodTarget:
                case Org.Sdmxsource.Sdmx.Api.Constants.SdmxStructureEnumType.ReportStructure:
                case Org.Sdmxsource.Sdmx.Api.Constants.SdmxStructureEnumType.ReportingCategory:
                case Org.Sdmxsource.Sdmx.Api.Constants.SdmxStructureEnumType.ReportingTaxonomy:
                case Org.Sdmxsource.Sdmx.Api.Constants.SdmxStructureEnumType.ReportingTaxonomyMap:
                case Org.Sdmxsource.Sdmx.Api.Constants.SdmxStructureEnumType.RepresentationMap:
                case Org.Sdmxsource.Sdmx.Api.Constants.SdmxStructureEnumType.StructureMap:
                case Org.Sdmxsource.Sdmx.Api.Constants.SdmxStructureEnumType.StructureSet:
                case Org.Sdmxsource.Sdmx.Api.Constants.SdmxStructureEnumType.Subscription:
                case Org.Sdmxsource.Sdmx.Api.Constants.SdmxStructureEnumType.TextFormat:
                case Org.Sdmxsource.Sdmx.Api.Constants.SdmxStructureEnumType.TextType:
                case Org.Sdmxsource.Sdmx.Api.Constants.SdmxStructureEnumType.TimeDimension:
                case Org.Sdmxsource.Sdmx.Api.Constants.SdmxStructureEnumType.TimeRange:
                case Org.Sdmxsource.Sdmx.Api.Constants.SdmxStructureEnumType.Transition:
                default:
                    break;
                }
                #endregion


                return(_builder);
            }
            catch (SdmxException) { throw; }
            catch (Exception ex)
            {
                throw new SdmxException(this, FlyExceptionObject.FlyExceptionTypeEnum.CreateBuilder, ex);
            }
        }
 /// <summary>
 /// Inizialize for BaseManager Class
 /// </summary>
 /// <param name="_parsingObject">the <see cref="ISdmxParsingObject"/></param>
 /// <param name="_versionTypeResp">Sdmx Version</param>
 public ConceptSchemeManager(ISdmxParsingObject _parsingObject, SdmxSchemaEnumType _versionTypeResp)
     : base(_parsingObject, _versionTypeResp)
 {
 }
예제 #23
0
        private void ParseOtherRegistry(ISdmxParsingObject _parsingObject)
        {
            if (_parsingObject.OtherRegistry != null && _parsingObject.OtherRegistry.Count > 0)
            {
                foreach (var _parsingOther in _parsingObject.OtherRegistry)
                {
                    ISDMXObjectBuilder OtherRegistry = CreateBuilder(_parsingOther, this.VersionTypeResp);
                    if (OtherRegistry == null)
                    {
                        FlyLog.WriteLog(this, FlyLog.LogTypeEnum.Error, "NotSupportedRegistryType (Other Registry) SdmxStructureType {0}", _parsingOther.SdmxStructureType.ToString());
                        continue;
                    }
                    FlyLog.WriteLog(this, FlyLog.LogTypeEnum.All, "Parsing Metadata (Other Registry): {0}", _parsingOther.SdmxStructureType.ToString());
                    OtherRegistry.Build();
                    switch (_parsingOther.SdmxStructureType)
                    {
                    case Org.Sdmxsource.Sdmx.Api.Constants.SdmxStructureEnumType.Dataflow:
                        if (Builder._Dataflows == null || Builder._Dataflows.Count == 0)
                        {
                            Builder._Dataflows = OtherRegistry._Dataflows;
                        }
                        else
                        {
                            Builder._Dataflows.AddRange(OtherRegistry._Dataflows);
                        }
                        break;

                    case Org.Sdmxsource.Sdmx.Api.Constants.SdmxStructureEnumType.ConceptScheme:
                        if (Builder._Conceptscheme == null || Builder._Conceptscheme.Count == 0)
                        {
                            Builder._Conceptscheme = OtherRegistry._Conceptscheme;
                        }
                        else
                        {
                            Builder._Conceptscheme.AddRange(OtherRegistry._Conceptscheme);
                        }
                        break;

                    case Org.Sdmxsource.Sdmx.Api.Constants.SdmxStructureEnumType.CodeList:
                        if (Builder._Codelists == null || Builder._Codelists.Count == 0)
                        {
                            Builder._Codelists = OtherRegistry._Codelists;
                        }
                        else
                        {
                            Builder._Codelists.AddRange(OtherRegistry._Codelists);
                        }
                        break;

                    case Org.Sdmxsource.Sdmx.Api.Constants.SdmxStructureEnumType.AgencyScheme:
                    case Org.Sdmxsource.Sdmx.Api.Constants.SdmxStructureEnumType.OrganisationScheme:
                        Builder._AgencyScheme = OtherRegistry._AgencyScheme;
                        break;

                    case Org.Sdmxsource.Sdmx.Api.Constants.SdmxStructureEnumType.CategoryScheme:
                    case Org.Sdmxsource.Sdmx.Api.Constants.SdmxStructureEnumType.Categorisation:
                        if (Builder._CategorisationObject == null || Builder._CategorisationObject.Count == 0)
                        {
                            Builder._CategorisationObject = OtherRegistry._CategorisationObject;
                        }
                        else
                        {
                            Builder._CategorisationObject.AddRange(OtherRegistry._CategorisationObject);
                        }
                        break;

                    case Org.Sdmxsource.Sdmx.Api.Constants.SdmxStructureEnumType.Dsd:
                        if (Builder._KeyFamily == null || Builder._KeyFamily.Count == 0)
                        {
                            Builder._KeyFamily = OtherRegistry._KeyFamily;
                        }
                        else
                        {
                            Builder._KeyFamily.AddRange(OtherRegistry._KeyFamily);
                        }
                        break;
                    }
                }
            }
        }
예제 #24
0
 /// <summary>
 /// create a GetCodelists instance
 /// </summary>
 /// <param name="_parsingObject">Sdmx Parsing Object</param>
 /// <param name="_versionTypeResp">Sdmx Version</param>
 public GetCodelists(ISdmxParsingObject _parsingObject, SdmxSchemaEnumType _versionTypeResp)
     : base(_parsingObject, _versionTypeResp)
 {
 }
 /// <summary>
 /// Inizialize for BaseManager Class
 /// </summary>
 /// <param name="_parsingObject">the <see cref="ISdmxParsingObject"/></param>
 /// <param name="_versionTypeResp">Sdmx Version</param>
 public AttributeManager_FromFile(ISdmxParsingObject _parsingObject, SdmxSchemaEnumType _versionTypeResp)
     : base(_parsingObject, _versionTypeResp)
 {
 }
 /// <summary>
 /// Create CodelistBuilder Istance
 /// </summary>
 /// <param name="parsingObject">Parsing Object <see cref="ISdmxParsingObject"/></param>
 /// <param name="versionTypeResp">Sdmx Version</param>
 public CodelistBuilder(ISdmxParsingObject parsingObject, SdmxSchemaEnumType versionTypeResp) :
     base(parsingObject, versionTypeResp)
 {
 }
 /// <summary>
 /// Inizialize a new Instance of <see cref="FlyNameArtefactSettings"/>
 /// </summary>
 /// <param name="_sdmxParsingObject"> Parsing Object <see cref="ISdmxParsingObject"/></param>
 public FlyNameArtefactSettings(ISdmxParsingObject _sdmxParsingObject)
 {
     this.sdmxParsingObject = _sdmxParsingObject;
 }
예제 #28
0
 /// <summary>
 /// Inizialize for BaseManager Class
 /// </summary>
 /// <param name="_parsingObject">the <see cref="ISdmxParsingObject"/></param>
 /// <param name="_versionTypeResp">Sdmx Version</param>
 public BaseCategoriesManager(ISdmxParsingObject _parsingObject, SdmxSchemaEnumType _versionTypeResp)
     : base(_parsingObject, _versionTypeResp)
 {
 }
예제 #29
0
 /// <summary>
 /// Instance of EngineChooser <see cref="EngineChooser"/>
 /// </summary>
 /// <param name="_parsingObject">Processed request</param>
 /// <param name="_versionTypeResp">Sdmx Version</param>
 public EngineChooser(ISdmxParsingObject _parsingObject, SdmxSchemaEnumType _versionTypeResp)
 {
     this._parsingObject   = _parsingObject;
     this._versionTypeResp = _versionTypeResp;
 }
예제 #30
0
 /// <summary>
 /// Inizialize for BaseManager Class
 /// </summary>
 /// <param name="_parsingObject">the <see cref="ISdmxParsingObject"/></param>
 /// <param name="_versionTypeResp">Sdmx Version</param>
 public AgencyManager(ISdmxParsingObject _parsingObject, SdmxSchemaEnumType _versionTypeResp)
     : base(_parsingObject, _versionTypeResp)
 {
 }