Beispiel #1
0
        public async Task <ProviderRegistration> RunActivity(
            [ActivityTrigger] ProviderRegisterCommand command,
            ILogger log)
        {
            if (command is null)
            {
                throw new ArgumentNullException(nameof(command));
            }

            using (log.BeginCommandScope(command))
            {
                try
                {
                    var identity = await azureSessionService
                                   .GetIdentityAsync()
                                   .ConfigureAwait(false);

                    var registration = new ProviderRegistration
                    {
                        PrincipalId = identity?.ObjectId
                    };

                    return(registration);
                }
                catch (Exception exc)
                {
                    log.LogError(exc, $"{nameof(ProviderRegisterActivity)} failed: {exc.Message}");

                    throw exc.AsSerializable();
                }
            }
        }
Beispiel #2
0
        public static void RegisterFactory(string providerInvariantName, DbProviderFactory factory)
        {
            ADP.CheckArgumentLength(providerInvariantName, nameof(providerInvariantName));
            ADP.CheckArgumentNull(factory, nameof(factory));

            _registeredFactories[providerInvariantName] = new ProviderRegistration(factory.GetType().AssemblyQualifiedName, factory);
        }
Beispiel #3
0
 private TokenValidationParameters GetValidationParams(ProviderRegistration registration)
 {
     return(new TokenValidationParameters {
         ValidIssuers = registration.ValidIssuers,
         ValidAudiences = registration.ValidAudiences
     });
 }
        public static ProviderRegistration RunActivity(
            [ActivityTrigger] ProviderRegisterCommand command,
            ILogger log)
        {
            if (command is null)
            {
                throw new ArgumentNullException(nameof(command));
            }

            using (log.BeginCommandScope(command))
            {
                try
                {
                    var registration = new ProviderRegistration
                    {
                        PrincipalId = null // this provider does not talk to any azure resources yet
                    };

                    return(registration);
                }
                catch (Exception exc)
                {
                    log.LogError(exc, $"{nameof(ProviderRegisterActivity)} failed: {exc.Message}");

                    throw exc.AsSerializable();
                }
            }
        }
        public static void RegisterFactory(string providerInvariantName, string factoryTypeAssemblyQualifiedName)
        {
            ADP.CheckArgumentLength(providerInvariantName, nameof(providerInvariantName));
            ADP.CheckArgumentLength(factoryTypeAssemblyQualifiedName, nameof(factoryTypeAssemblyQualifiedName));

            // this method performs a deferred registration: the type name specified is checked when the factory is requested for the first time.
            _registeredFactories[providerInvariantName] = new ProviderRegistration(factoryTypeAssemblyQualifiedName, null);
        }
        public IHttpActionResult ProviderRegistration(string name, int gender, string phone, string email, string password, string clinicName, long majorSpecialty, int country, long city, long area, string clinicAddress)
        {
            string               response             = string.Empty;
            FactoryFacade        factory              = new FactoryFacade();
            ProviderRegistration providerRegistration = null;

            domainModel = factory.DomainModelFactory.CreateDomainModel(typeof(ProviderRegistration));
            domainModel.Fill(HashHelper.ProviderRegistration(name, gender, phone, email, password, clinicName, majorSpecialty, country, city, area, clinicAddress));
            domainService        = factory.DomainServiceFactory.CreateDomainService(typeof(AccountsDomainService));
            providerRegistration = (ProviderRegistration)domainService.Save(domainModel, CareHub.Factory.Enumerations.DomainModelEnum.PROVIDER_REGISTRATION);

            return(Ok(providerRegistration.ResponseMessage));
        }
Beispiel #7
0
        public IAuthProvider GetServiceAuthProvider(ILifetimeScope currentScope, string serviceName)
        {
            ProviderRegistration registration = GetServiceRegistration(serviceName);

            // No registration found for named service.
            if (registration == null)
            {
                return(null);
            }

            // Get the provider type associated with the service requesting authentication.
            return((IAuthProvider)currentScope.Resolve(registration.ProviderType));
        }
        /// <summary>
        /// Adds to the registry the provider used to preform the authentication for a
        /// service-API requesting authentication.
        /// </summary>
        /// <param name="serviceName">The name identifying the service-API.</param>
        /// <returns>Registration to set additional settings.</returns>
        protected ProviderRegistration Add <T>(string serviceApi)
            where T : IAuthProvider
        {
            var registration = new ProviderRegistration(serviceApi, typeof(T));

            if (_registrations.ContainsKey(serviceApi))
            {
                throw new InvalidOperationException(
                          $"The service-api named: {serviceApi} aready has a registered provider.");
            }
            _registrations[serviceApi] = registration;
            return(registration);
        }
Beispiel #9
0
        public static async Task <ProviderRegistration> RunActivity(
            [ActivityTrigger] ProviderRegisterCommand command,
            ILogger log)
        {
            if (command is null)
            {
                throw new ArgumentNullException(nameof(command));
            }

            var registration = new ProviderRegistration
            {
                PrincipalId = null // this provider does not talk to any azure resources yet
            };

            return(registration);
        }
Beispiel #10
0
        public async Task <ProviderRegistration> RunActivity(
            [ActivityTrigger] ProviderRegisterCommand command,
            ILogger log)
        {
            if (command is null)
            {
                throw new ArgumentNullException(nameof(command));
            }

            var identity = await azureSessionService
                           .GetIdentityAsync()
                           .ConfigureAwait(false);

            var registration = new ProviderRegistration
            {
                PrincipalId = identity?.ObjectId
            };

            return(registration);
        }
Beispiel #11
0
        public AbstractDomainModel Get(AbstractDomainModel domainModel)
        {
            providerRegistration = (ProviderRegistration)domainModel;

            CareHub.DataModel.Models.Provider provider = null;
            provider = providerRepository.GetProviderByUserId(providerRegistration.UserId);
            if (provider != null)
            {
                providerRegistration.Name         = provider.FirstName;
                providerRegistration.UserId       = provider.UserId;
                providerRegistration.Name         = provider.FirstName;
                providerRegistration.Name         = provider.ScreenName;
                providerRegistration.Gender       = provider.GenderId;
                providerRegistration.MobileNumber = provider.MobileNumber;
                providerRegistration.Email        = provider.Email;
            }
            else
            {
                throw new Exception("Provider not found");
            }
            return(providerRegistration);
        }
Beispiel #12
0
        public void Arrange()
        {
            _expectedProviderRegistration = new ProviderRegistration();
            _providerRegistrationImports  = new List <ProviderRegistrationImport>
            {
                new ProviderRegistrationImport
                {
                    Ukprn    = 123,
                    Lat      = ExpectedLat,
                    Long     = ExpectedLong,
                    Postcode = ExpectedPostcode
                },
                new ProviderRegistrationImport
                {
                    Ukprn    = 1234,
                    Lat      = ExpectedLat,
                    Long     = ExpectedLong,
                    Postcode = ExpectedPostcode
                },
                new ProviderRegistrationImport
                {
                    Ukprn    = 12345,
                    Lat      = 0,
                    Long     = 0,
                    Postcode = string.Empty
                }
            };


            _courseDeliveryDataContext = new Mock <ICourseDeliveryDataContext>();
            _courseDeliveryDataContext.Setup(x => x.ProviderRegistrationImports).ReturnsDbSet(_providerRegistrationImports);
            _courseDeliveryDataContext.Setup(x => x.ProviderRegistrations.FindAsync(It.IsAny <int>()))
            .ReturnsAsync(_expectedProviderRegistration);

            _providerRegistrationRepository = new Data.Repository.ProviderRegistrationRepository(_courseDeliveryDataContext.Object, Mock.Of <ICourseDeliveryReadonlyDataContext>());
        }
Beispiel #13
0
        public void Then_The_Fields_Are_Correctly_Mapped(ProviderRegistration source)
        {
            var actual = (ProviderSummaryAddress)source;

            actual.Should().BeEquivalentTo(source, options => options.ExcludingMissingMembers());
        }
Beispiel #14
0
        void IUnitOfWork.Save(AbstractDomainModel domainModel)
        {
            try
            {
                providerRegistration = (ProviderRegistration)domainModel;
                User             user            = null;
                Provider         provider        = null;
                ProviderPractice poviderPractice = new ProviderPractice();
                Practice         practice        = null;

                user = userRepository.GetByName(providerRegistration.Name);
                if (user == null)
                {
                    user               = new User();
                    user.UserId        = providerRegistration.Name;
                    user.Password      = CareHub.Core.Common.Encryption.Encrypt("#", providerRegistration.Password);
                    user.UserRoleId    = 1;
                    user.Enable        = true;
                    user.Locked        = false;
                    user.LastLoginDate = DateTime.Now;
                }
                else
                {
                    throw new Exception("User name already exist. Please login using the existing user name.");
                }

                provider = providerRepository.GetByName(providerRegistration.Name);
                if (provider == null)
                {
                    provider              = new Provider();
                    provider.UserId       = providerRegistration.Name;
                    provider.FirstName    = providerRegistration.Name;
                    provider.ScreenName   = providerRegistration.Name;
                    provider.GenderId     = providerRegistration.Gender;
                    provider.MobileNumber = providerRegistration.MobileNumber;
                    provider.Email        = providerRegistration.Email;
                    provider.IsActive     = true;
                    provider.SignUpDate   = DateTime.Now;
                }
                else
                {
                    throw new Exception("Provider name already exist. Please use different provider name.");
                }
                practice = practiceRepository.GetByName(providerRegistration.ClinicName);
                if (practice == null)
                {
                    practice              = new Practice();
                    practice.Name         = providerRegistration.ClinicName;
                    practice.CountryId    = providerRegistration.CountryId;
                    practice.CityId       = providerRegistration.CityId;
                    practice.LocalityId   = providerRegistration.LocalityId;
                    practice.CreationDate = DateTime.Now;
                    practice.Address      = providerRegistration.ClinicAddress;
                }


                poviderPractice          = new ProviderPractice();
                poviderPractice.Provider = provider;
                poviderPractice.Practice = practice;


                userRepository.Save(user);
                providerRepository.Save(provider);
                practiceRepository.Save(practice);
                providerPracticeRepository.Save(poviderPractice);
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }