public bool TryGet(string name, out Models.IdentityProvider identityProvider)
 {
     using (var entities = IdentityServerConfigurationContext.Get())
     {
         identityProvider = entities.IdentityProviders.Where(idp => idp.Name == name).FirstOrDefault().ToDomainModel();
         return(identityProvider != null);
     }
 }
コード例 #2
0
 public void Add(Models.IdentityProvider item)
 {
     using (var entities = IdentityServerConfigurationContext.Get())
     {
         ValidateUniqueName(item, entities);
         var entity = item.ToEntity();
         entities.IdentityProviders.Add(entity);
         entities.SaveChanges();
         item.ID = entity.ID;
     }
 }
コード例 #3
0
        public static Entities.IdentityProvider ToEntity(this Models.IdentityProvider idp)
        {
            if (idp == null)
            {
                return(null);
            }

            var entity = new Entities.IdentityProvider();

            idp.UpdateEntity(entity);
            return(entity);
        }
        private static void ValidateUniqueName(Models.IdentityProvider item, IdentityServerConfigurationContext entities)
        {
            var othersWithSameName =
                from e in entities.IdentityProviders
                where e.Name == item.Name && e.ID != item.ID
                select e;

            if (othersWithSameName.Any())
            {
                throw new ValidationException(string.Format(Core.Repositories.Resources.IdentityProviderRepository.NameAlreadyInUseError, item.Name));
            }
        }
        private static void ValidateUniqueName(Models.IdentityProvider item, IdentityServerConfigurationContext entities)
        {
            var othersWithSameName =
                from e in entities.IdentityProviders
                where e.Name == item.Name && e.ID != item.ID
                select e;

            if (othersWithSameName.Any())
            {
                throw new ValidationException(string.Format("The Name/Identifier '{0}' is already in use.", item.Name));
            }
        }
コード例 #6
0
        public void Update(Models.IdentityProvider item)
        {
            using (var entities = IdentityServerConfigurationContext.Get())
            {
                ValidateUniqueName(item, entities);

                var dbitem = entities.IdentityProviders.Where(idp => idp.ID == item.ID).FirstOrDefault();
                if (dbitem != null)
                {
                    item.UpdateEntity(dbitem);
                    entities.SaveChanges();
                }
            }
        }
コード例 #7
0
        public static void UpdateEntity(this Models.IdentityProvider idp, Entities.IdentityProvider entity)
        {
            if (idp == null || entity == null)
            {
                return;
            }

            entity.ID                   = idp.ID;
            entity.Name                 = idp.Name;
            entity.Enabled              = idp.Enabled;
            entity.ShowInHrdSelection   = idp.ShowInHrdSelection;
            entity.DisplayName          = idp.DisplayName;
            entity.Type                 = (int)idp.Type;
            entity.WSFederationEndpoint = idp.WSFederationEndpoint;
            entity.IssuerThumbprint     = idp.IssuerThumbprint;
            entity.ClientID             = idp.ClientID;
            entity.ClientSecret         = idp.ClientSecret;
            entity.OAuth2ProviderType   = (int?)idp.ProviderType;
        }
コード例 #8
0
 /// <summary>
 /// Maps a model to an entity.
 /// </summary>
 /// <param name="model">The model.</param>
 /// <returns></returns>
 public static Entities.IdentityProvider ToEntity(this Models.IdentityProvider model)
 {
     return(model == null ? null : Mapper.Map <IdentityProvider>(model));
 }