public ConformanceBuilderTests()
 {
     _searchParameterDefinitionManager = Substitute.For <ISearchParameterDefinitionManager>();
     _supportedProfiles = Substitute.For <IKnowSupportedProfiles>();
     _builder           = CapabilityStatementBuilder.Create(
         ModelInfoProvider.Instance,
         _searchParameterDefinitionManager,
         _supportedProfiles);
 }
        public ConformanceBuilderTests()
        {
            IOptions <CoreFeatureConfiguration> configuration = Substitute.For <IOptions <CoreFeatureConfiguration> >();

            configuration.Value.Returns(new CoreFeatureConfiguration());

            _searchParameterDefinitionManager = Substitute.For <ISearchParameterDefinitionManager>();
            _supportedProfiles = Substitute.For <IKnowSupportedProfiles>();
            _builder           = CapabilityStatementBuilder.Create(
                ModelInfoProvider.Instance,
                _searchParameterDefinitionManager,
                configuration,
                _supportedProfiles);
        }
        public SystemConformanceProvider(
            IModelInfoProvider modelInfoProvider,
            ISearchParameterDefinitionManager.SearchableSearchParameterDefinitionManagerResolver searchParameterDefinitionManagerResolver,
            Func <IScoped <IEnumerable <IProvideCapability> > > capabilityProviders,
            IKnowSupportedProfiles supportedProfiles)
        {
            EnsureArg.IsNotNull(modelInfoProvider, nameof(modelInfoProvider));
            EnsureArg.IsNotNull(searchParameterDefinitionManagerResolver, nameof(searchParameterDefinitionManagerResolver));
            EnsureArg.IsNotNull(capabilityProviders, nameof(capabilityProviders));
            EnsureArg.IsNotNull(supportedProfiles, nameof(supportedProfiles));

            _modelInfoProvider = modelInfoProvider;
            _searchParameterDefinitionManager = searchParameterDefinitionManagerResolver();
            _capabilityProviders = capabilityProviders;
            _supportedProfiles   = supportedProfiles;
        }
Ejemplo n.º 4
0
        private CapabilityStatementBuilder(
            ListedCapabilityStatement statement,
            IModelInfoProvider modelInfoProvider,
            ISearchParameterDefinitionManager searchParameterDefinitionManager,
            IKnowSupportedProfiles supportedProfiles)
        {
            EnsureArg.IsNotNull(statement, nameof(statement));
            EnsureArg.IsNotNull(modelInfoProvider, nameof(modelInfoProvider));
            EnsureArg.IsNotNull(searchParameterDefinitionManager, nameof(searchParameterDefinitionManager));
            EnsureArg.IsNotNull(supportedProfiles, nameof(supportedProfiles));

            _statement         = statement;
            _modelInfoProvider = modelInfoProvider;
            _searchParameterDefinitionManager = searchParameterDefinitionManager;
            _supportedProfiles = supportedProfiles;
        }
Ejemplo n.º 5
0
        private CapabilityStatementBuilder(
            ListedCapabilityStatement statement,
            IModelInfoProvider modelInfoProvider,
            ISearchParameterDefinitionManager searchParameterDefinitionManager,
            IOptions <CoreFeatureConfiguration> configuration,
            IKnowSupportedProfiles supportedProfiles)
        {
            EnsureArg.IsNotNull(statement, nameof(statement));
            EnsureArg.IsNotNull(modelInfoProvider, nameof(modelInfoProvider));
            EnsureArg.IsNotNull(searchParameterDefinitionManager, nameof(searchParameterDefinitionManager));
            EnsureArg.IsNotNull(configuration, nameof(configuration));
            EnsureArg.IsNotNull(supportedProfiles, nameof(supportedProfiles));

            _statement         = statement;
            _modelInfoProvider = modelInfoProvider;
            _searchParameterDefinitionManager = searchParameterDefinitionManager;
            _configuration     = configuration.Value;
            _supportedProfiles = supportedProfiles;
        }
Ejemplo n.º 6
0
        public static ICapabilityStatementBuilder Create(IModelInfoProvider modelInfoProvider, ISearchParameterDefinitionManager searchParameterDefinitionManager, IKnowSupportedProfiles supportedProfiles)
        {
            EnsureArg.IsNotNull(modelInfoProvider, nameof(modelInfoProvider));
            EnsureArg.IsNotNull(searchParameterDefinitionManager, nameof(searchParameterDefinitionManager));

            using Stream resourceStream = modelInfoProvider.OpenVersionedFileStream("BaseCapabilities.json");
            using var reader            = new StreamReader(resourceStream);
            var statement = JsonConvert.DeserializeObject <ListedCapabilityStatement>(reader.ReadToEnd());

            statement.Date = File.GetCreationTime(Assembly.GetExecutingAssembly().Location).ToUniversalTime().ToString("O");
            return(new CapabilityStatementBuilder(statement, modelInfoProvider, searchParameterDefinitionManager, supportedProfiles));
        }
Ejemplo n.º 7
0
        public static ICapabilityStatementBuilder Create(IModelInfoProvider modelInfoProvider, ISearchParameterDefinitionManager searchParameterDefinitionManager, IOptions <CoreFeatureConfiguration> configuration, IKnowSupportedProfiles supportedProfiles)
        {
            EnsureArg.IsNotNull(modelInfoProvider, nameof(modelInfoProvider));
            EnsureArg.IsNotNull(searchParameterDefinitionManager, nameof(searchParameterDefinitionManager));

            using Stream resourceStream = modelInfoProvider.OpenVersionedFileStream("BaseCapabilities.json");
            using var reader            = new StreamReader(resourceStream);
            var statement = JsonConvert.DeserializeObject <ListedCapabilityStatement>(reader.ReadToEnd());

            FileVersionInfo version       = ProductVersionInfo.Version;
            var             versionString = $"{version.FileMajorPart}.{version.FileMinorPart}.{version.FileBuildPart}";

            statement.Name     = string.Format(Resources.CapabilityStatementNameFormat, statement.Publisher, configuration.Value.SoftwareName, versionString);
            statement.Software = new SoftwareComponent
            {
                Name    = configuration.Value.SoftwareName,
                Version = versionString,
            };

            statement.FhirVersion = modelInfoProvider.SupportedVersion.ToString();
            statement.Date        = ProductVersionInfo.CreationTime.ToString("O");
            return(new CapabilityStatementBuilder(statement, modelInfoProvider, searchParameterDefinitionManager, configuration, supportedProfiles));
        }