[jboss-identity-commits] JBoss Identity SVN: r221 - in idm/trunk: identity-impl/src/main/java/org/jboss/identity/idm/impl/configuration/metadata and 4 other directories.

jboss-identity-commits at lists.jboss.org jboss-identity-commits at lists.jboss.org
Fri Jan 16 08:49:44 EST 2009


Author: bdaw
Date: 2009-01-16 08:49:44 -0500 (Fri, 16 Jan 2009)
New Revision: 221

Modified:
   idm/trunk/identity-impl/src/main/java/org/jboss/identity/idm/impl/configuration/jaxb2/JAXB2IdentityConfiguration.java
   idm/trunk/identity-impl/src/main/java/org/jboss/identity/idm/impl/configuration/metadata/IdentityRepositoryConfigurationMetaDataImpl.java
   idm/trunk/identity-impl/src/main/java/org/jboss/identity/idm/impl/repository/AbstractIdentityStoreRepository.java
   idm/trunk/identity-impl/src/test/java/org/jboss/identity/idm/impl/configuration/ConfigurationTestCase.java
   idm/trunk/identity-impl/src/test/resources/organization-test-config.xml
   idm/trunk/identity-impl/src/test/resources/store-test-config.xml
   idm/trunk/identity-impl/src/test/resources/test-config.xml
   idm/trunk/identity-spi/src/main/java/org/jboss/identity/idm/spi/configuration/metadata/IdentityRepositoryConfigurationMetaData.java
Log:
checking if config is consistent

Modified: idm/trunk/identity-impl/src/main/java/org/jboss/identity/idm/impl/configuration/jaxb2/JAXB2IdentityConfiguration.java
===================================================================
--- idm/trunk/identity-impl/src/main/java/org/jboss/identity/idm/impl/configuration/jaxb2/JAXB2IdentityConfiguration.java	2009-01-16 04:49:18 UTC (rev 220)
+++ idm/trunk/identity-impl/src/main/java/org/jboss/identity/idm/impl/configuration/jaxb2/JAXB2IdentityConfiguration.java	2009-01-16 13:49:44 UTC (rev 221)
@@ -36,6 +36,7 @@
 import org.jboss.identity.idm.spi.configuration.metadata.IdentityConfigurationMetaData;
 import org.jboss.identity.idm.spi.configuration.metadata.RelationshipMetaData;
 import org.jboss.identity.idm.spi.configuration.metadata.IdentityObjectAttributeMetaData;
+import org.jboss.identity.idm.spi.configuration.metadata.IdentityObjectTypeMetaData;
 import org.jboss.identity.idm.spi.exception.IdentityConfigurationException;
 import org.jboss.identity.idm.impl.api.attribute.IdentityObjectAttributeMetaDataImpl;
 import org.jboss.identity.idm.impl.configuration.jaxb2.generated.JbossIdentityType;
@@ -59,6 +60,8 @@
 import java.util.Map;
 import java.util.HashMap;
 import java.util.LinkedList;
+import java.util.Set;
+import java.util.HashSet;
 
 /**
  * @author <a href="mailto:boleslaw.dawidowicz at redhat.com">Boleslaw Dawidowicz</a>
@@ -68,8 +71,16 @@
 {
 
    //TODO: check if configuration is consistent. Part of constraints should be checked by schema. Test cases needed :)
+   static Set<String> attributeTypes = new HashSet<String>();
 
+   static
+   {
+      attributeTypes.add("text");
+      attributeTypes.add("binary");
+   }
 
+
+
    public static IdentityConfigurationMetaData createConfigurationMetaData(File xmlConfig) throws IdentityConfigurationException
    {
 
@@ -126,6 +137,8 @@
             configurationMD.getRealms().add(createRealmConfigurationMetaData(realmType));
          }
       }
+
+      checkDataConsistency(configurationMD);
       
       return configurationMD;
 
@@ -344,4 +357,299 @@
       return options;
    }
 
+   public static void checkDataConsistency(IdentityConfigurationMetaData configurationMD) throws IdentityConfigurationException
+   {
+
+      // IdentityStore
+
+      if (configurationMD.getRepositories() == null || configurationMD.getIdentityStores().size() == 0)
+      {
+         throw new IdentityConfigurationException("No identity-store configured");
+      }
+
+      // Helper structure to keep track of all IdentityObjectType mappings in stores
+      Map<String, Set<String>> storeObjectTypeNameMappings = new HashMap<String, Set<String>>();
+
+      for (IdentityStoreConfigurationMetaData storeMD : configurationMD.getIdentityStores())
+      {
+
+         // id
+         if (storeMD.getId() == null || storeMD.getId().length() == 0)
+         {
+            throw new IdentityConfigurationException("identity-store name required");
+         }
+
+         // Helper structure containing all configured identity object type names
+
+         Set<String> storeObjectTypeNames = new HashSet<String>();
+         if (storeMD.getSupportedIdentityTypes() != null)
+         {
+            for (IdentityObjectTypeMetaData typeMD : storeMD.getSupportedIdentityTypes())
+            {
+               storeObjectTypeNames.add(typeMD.getName());
+            }
+         }
+
+         storeObjectTypeNameMappings.put(storeMD.getId(), storeObjectTypeNames);
+
+         // className
+         if (storeMD.getClassName() == null || storeMD.getClassName().length() == 0)
+         {
+            throw new IdentityConfigurationException("identity-store \"" + storeMD.getId() + "\" class name required");
+         }
+
+         // supported relationship types are not required but we gather the names to check consistency in other parts
+
+         Set<String> supportedRelTypes = new HashSet<String>();
+         if (storeMD.getSupportedRelationshipTypes() != null)
+         {
+            supportedRelTypes = new HashSet<String>(storeMD.getSupportedRelationshipTypes());
+         }
+
+         // all configured identity object types
+         if (storeMD.getSupportedIdentityTypes() == null || storeMD.getSupportedIdentityTypes().size() == 0)
+         {
+            throw new IdentityConfigurationException("identity-store \"" + storeMD.getId() + "\" doesn't have any supported " +
+               "identity-object-types configured");
+         }
+
+         // check each configured types
+         for (IdentityObjectTypeMetaData typeMD : storeMD.getSupportedIdentityTypes())
+         {
+            // Name
+            if (typeMD.getName() == null || typeMD.getName().length() == 0)
+            {
+               throw new IdentityConfigurationException("identity-store \"" + storeMD.getId() + "\" identity-object-type name" +
+                  "is not specified");
+            }
+
+            // Attributes
+
+            if (typeMD.getAttributes() != null)
+            {
+               for (IdentityObjectAttributeMetaData attrMD : typeMD.getAttributes())
+               {
+                  // Name
+                  if (attrMD.getName() == null || attrMD.getName().length() == 0)
+                  {
+                     throw new IdentityConfigurationException("Attribute name not specified in identity-store \"" + storeMD.getId() + "\"");
+                  }
+
+                  if (attrMD.getType() == null || attrMD.getType().length() == 0)
+                  {
+                     throw new IdentityConfigurationException("Attribute type not specified for attribute \"" + attrMD.getName()
+                        + "\" in identity-store \"" + storeMD.getId() + "\"");
+                  }
+
+                  if (!attributeTypes.contains(attrMD.getType()))
+                  {
+                     throw new IdentityConfigurationException("Unsupported attribute type in attribute \"" + attrMD.getName()
+                        + "\" in identity-store \"" + storeMD.getId() + "\"");
+                  }
+
+               }
+            }
+
+            // Relationships
+
+            if (typeMD.getRelationships() != null)
+            {
+               for (RelationshipMetaData relMD : typeMD.getRelationships())
+               {
+                  if (relMD.getIdentityObjectTypeRef() == null)
+                  {
+                     throw new IdentityConfigurationException("identity-object-type-ref not specified" +
+                        "in identity-object-type \"" + typeMD.getName()
+                        + "\" in identity-store \"" + storeMD.getId() + "\"");
+                  }
+
+                  if (!storeObjectTypeNames.contains(relMD.getIdentityObjectTypeRef()))
+                  {
+                     throw new IdentityConfigurationException("identity-object-type-ref contains " +
+                        "not configured name \"" + relMD.getIdentityObjectTypeRef() + "\" in " +
+                        "identity-object-type \"" + typeMD.getName()
+                        + "\" in identity-store \"" + storeMD.getId() + "\"");
+                  }
+
+                  if (relMD.getRelationshipTypeRef() == null)
+                  {
+                     throw new IdentityConfigurationException("relationship-type-ref not specified" +
+                        "in identity-object-type \"" + typeMD.getName()
+                        + "\" in identity-store \"" + storeMD.getId() + "\"");
+                  }
+
+                  if (!supportedRelTypes.contains(relMD.getRelationshipTypeRef()))
+                  {
+                     throw new IdentityConfigurationException("relationship-type-ref name is not supported" +
+                        "by identity-store. Relationship name \"" + relMD.getRelationshipTypeRef() + "\" in " +
+                        "identity-object-type \"" + typeMD.getName()
+                        + "\" in identity-store \"" + storeMD.getId() + "\"");
+                  }
+               }
+            }
+         }
+      }
+
+      // Helper structures
+
+      Set<String> configuredRepoNames = new HashSet<String>();
+
+      Map<String, Set<String>> repoObjectTypeNamesMappings = new HashMap<String, Set<String>>();
+
+      // IdentityStoreRepository
+
+      if (configurationMD.getRepositories() == null || configurationMD.getRepositories().size() == 0)
+      {
+         throw new IdentityConfigurationException("No IdentityRepository configured");
+      }
+
+      for (IdentityRepositoryConfigurationMetaData repoMD : configurationMD.getRepositories())
+      {
+         Set<String> repoObjectNames = new HashSet<String>();
+
+         // id
+         if (repoMD.getId() == null || repoMD.getId().length() == 0)
+         {
+            throw new IdentityConfigurationException("repository name is required");
+         }
+
+         configuredRepoNames.add(repoMD.getId());
+
+         // className
+         if (repoMD.getClassName() == null || repoMD.getClassName().length() == 0)
+         {
+            throw new IdentityConfigurationException("repository \"" + repoMD.getId() + "\" class name required");
+         }
+
+         // defaultAttributeStore
+         if (repoMD.getDefaultAttributeStoreId() == null || repoMD.getDefaultAttributeStoreId().length() == 0)
+         {
+            throw new IdentityConfigurationException("default-attribute-store in repository \"" + repoMD.getId() + "\" is required");
+         }
+
+         if (!storeObjectTypeNameMappings.containsKey(repoMD.getDefaultAttributeStoreId()))
+         {
+            throw new IdentityConfigurationException("default-attribute-store \"" + repoMD.getDefaultAttributeStoreId() +
+               "in repository \"" + repoMD.getId() + "\" is not present in configuration");
+         }
+
+         // defaultIdentityStore
+         if (repoMD.getDefaultAttributeStoreId() == null || repoMD.getDefaultAttributeStoreId().length() == 0)
+         {
+            throw new IdentityConfigurationException("default-identity-store in repository \"" + repoMD.getId() + "\" is required");
+         }
+
+         if (!storeObjectTypeNameMappings.containsKey(repoMD.getDefaultIdentityStoreId()))
+         {
+            throw new IdentityConfigurationException("default-identity-store \"" + repoMD.getDefaultIdentityStoreId() +
+               "in repository \"" + repoMD.getId() + "\" is not present in configuration");
+         }
+
+         
+
+//         if (repoMD.getIdentityStoreToIdentityObjectTypeMappings() == null ||
+//            repoMD.getIdentityStoreToIdentityObjectTypeMappings().size() == 0)
+//         {
+//            throw new IdentityConfigurationException("No identity-store-mappings defined in repository \"" + repoMD.getId() + "\"");
+//         }
+
+         // If there are no repo mappings then add all mappings from the default store
+         if (repoMD.getIdentityStoreToIdentityObjectTypeMappings().size() == 0)
+         {
+            Set<String> names = storeObjectTypeNameMappings.get(repoMD.getDefaultIdentityStoreId());
+            repoObjectTypeNamesMappings.put(repoMD.getId(), names);
+         }
+
+         for (IdentityStoreMappingMetaData mappingsMD : repoMD.getIdentityStoreToIdentityObjectTypeMappings())
+         {
+            if (mappingsMD.getIdentityStoreId() == null ||
+               mappingsMD.getIdentityStoreId().length() == 0)
+            {
+               throw new IdentityConfigurationException("No identity-store-mappings defined in repository \"" + repoMD.getId() + "\"");
+            }
+
+            if (!storeObjectTypeNameMappings.containsKey(mappingsMD.getIdentityStoreId()))
+            {
+               throw new IdentityConfigurationException("Store with id from identity-store-id \"" + mappingsMD.getIdentityStoreId() +
+                  "in identity-store-mapping in repository \"" + repoMD.getId() + "\" is not present in configuration");
+            }
+
+            if (mappingsMD.getIdentityObjectTypeMappings() == null ||
+               mappingsMD.getIdentityObjectTypeMappings().size() == 0)
+            {
+               throw new IdentityConfigurationException("identity-store-mapping with \"" + mappingsMD.getIdentityStoreId() +
+                  "in repository \"" + repoMD.getId() + "\" doesn't have any identity-object-types listed");
+            }
+
+            for (String identityTypeName : mappingsMD.getIdentityObjectTypeMappings())
+            {
+               Set<String> validNames = storeObjectTypeNameMappings.get(mappingsMD.getIdentityStoreId());
+
+               if (!validNames.contains(identityTypeName))
+               {
+                  throw new IdentityConfigurationException("identity-object-type \"" + identityTypeName + "\" specified in " +
+                     "identity-store-mapping in repository \"" + repoMD.getId() + "\" is not configured in specified " +
+                     "identity-store");
+               }
+
+               repoObjectNames.add(identityTypeName);
+            }
+         }
+
+         repoObjectTypeNamesMappings.put(repoMD.getId(), repoObjectNames);
+      }
+
+
+      // Realms
+
+      if (configurationMD.getRealms() == null || configurationMD.getRealms().size() == 0)
+      {
+         throw new IdentityConfigurationException("No realm configured");
+      }
+
+      for (RealmConfigurationMetaData realmMD : configurationMD.getRealms())
+      {
+         if (realmMD.getId() == null || realmMD.getId().length() == 0)
+         {
+            throw new IdentityConfigurationException("realm id is missing");
+         }
+
+         if (realmMD.getIdentityRepositoryIdRef() == null || realmMD.getIdentityRepositoryIdRef().length() == 0)
+         {
+            throw new IdentityConfigurationException("repository-id-ref in realm \"" + realmMD.getId() + "\" is missing");
+         }
+
+         if (!configuredRepoNames.contains(realmMD.getIdentityRepositoryIdRef()))
+         {
+            throw new IdentityConfigurationException("repository-id-ref \"" + realmMD.getIdentityRepositoryIdRef() +
+               "\" in realm \"" + realmMD.getId() + "\" doesn't reference configured repository");
+         }
+
+         if (realmMD.getIdentityMapping() == null || realmMD.getIdentityMapping().length() == 0)
+         {
+            throw new IdentityConfigurationException("identity-mapping in realm \"" + realmMD.getId() + "\" is missing");
+         }
+
+         // Group type mappings are not required
+         if (realmMD.getGroupTypeMappings() != null )
+         {
+            Set<String> validNames = repoObjectTypeNamesMappings.get(realmMD.getIdentityRepositoryIdRef());
+
+            for (String typeName : realmMD.getGroupTypeMappings().values())
+            {
+               if (!validNames.contains(typeName))
+               {
+                  throw new IdentityConfigurationException("identity-object-type-name in realm \"" + realmMD.getId() + "\" " +
+                     "doesn't reference identity-object-type configured in repository \"" + realmMD.getIdentityRepositoryIdRef() +
+                  "\"");
+
+               }
+            }
+         }
+      }
+
+
+
+   }
+
 }

Modified: idm/trunk/identity-impl/src/main/java/org/jboss/identity/idm/impl/configuration/metadata/IdentityRepositoryConfigurationMetaDataImpl.java
===================================================================
--- idm/trunk/identity-impl/src/main/java/org/jboss/identity/idm/impl/configuration/metadata/IdentityRepositoryConfigurationMetaDataImpl.java	2009-01-16 04:49:18 UTC (rev 220)
+++ idm/trunk/identity-impl/src/main/java/org/jboss/identity/idm/impl/configuration/metadata/IdentityRepositoryConfigurationMetaDataImpl.java	2009-01-16 13:49:44 UTC (rev 221)
@@ -94,7 +94,7 @@
       this.defaultIdentityStoreId = defaultIdentityStoreId;
    }
 
-   public String getDefaultAttributeStroeId()
+   public String getDefaultAttributeStoreId()
    {
       return defaultAttributeStroeId;
    }

Modified: idm/trunk/identity-impl/src/main/java/org/jboss/identity/idm/impl/repository/AbstractIdentityStoreRepository.java
===================================================================
--- idm/trunk/identity-impl/src/main/java/org/jboss/identity/idm/impl/repository/AbstractIdentityStoreRepository.java	2009-01-16 04:49:18 UTC (rev 220)
+++ idm/trunk/identity-impl/src/main/java/org/jboss/identity/idm/impl/repository/AbstractIdentityStoreRepository.java	2009-01-16 13:49:44 UTC (rev 221)
@@ -59,7 +59,7 @@
                          Map<String, AttributeStore> bootstrappedAttributeStores) throws IdentityException
    {
 
-      String asId = configurationMD.getDefaultAttributeStroeId();
+      String asId = configurationMD.getDefaultAttributeStoreId();
       String isId = configurationMD.getDefaultIdentityStoreId();
 
       if (asId != null && bootstrappedAttributeStores.keySet().contains(asId))

Modified: idm/trunk/identity-impl/src/test/java/org/jboss/identity/idm/impl/configuration/ConfigurationTestCase.java
===================================================================
--- idm/trunk/identity-impl/src/test/java/org/jboss/identity/idm/impl/configuration/ConfigurationTestCase.java	2009-01-16 04:49:18 UTC (rev 220)
+++ idm/trunk/identity-impl/src/test/java/org/jboss/identity/idm/impl/configuration/ConfigurationTestCase.java	2009-01-16 13:49:44 UTC (rev 221)
@@ -41,11 +41,11 @@
    public void testSimple() throws Exception
    {
 
-      IdentityConfigurationMetaData config = JAXB2IdentityConfiguration.createConfigurationMetaData(new File("src/test/resources/test-config.xml"));
+      IdentityConfigurationMetaData config = JAXB2IdentityConfiguration.createConfigurationMetaData(new File("src/test/resources/store-test-config.xml"));
 
       assertNotNull(config);
 
-      assertEquals("Hibernate Identity Store", config.getIdentityStores().get(0).getId() );
+      assertEquals("HibernateTestStore", config.getIdentityStores().get(0).getId() );
 
       
    }

Modified: idm/trunk/identity-impl/src/test/resources/organization-test-config.xml
===================================================================
--- idm/trunk/identity-impl/src/test/resources/organization-test-config.xml	2009-01-16 04:49:18 UTC (rev 220)
+++ idm/trunk/identity-impl/src/test/resources/organization-test-config.xml	2009-01-16 13:49:44 UTC (rev 221)
@@ -182,9 +182,9 @@
                                 <name>picture</name>
                                 <mapping>user.picture</mapping>
                                 <type>binary</type>
-                                <isRequired/>
-                                <isMultivalued/>
-                                <isReadOnly/>
+                                <isRequired>false</isRequired>
+                                <isMultivalued>false</isMultivalued>
+                                <isReadOnly>false</isReadOnly>
                             </attribute>
                         </attributes>
                         <options/>
@@ -432,25 +432,25 @@
                                 <name>phone</name>
                                 <mapping>telephoneNumber</mapping>
                                 <type>text</type>
-                                <isRequired/>
-                                <isMultivalued/>
-                                <isReadOnly/>
+                                <isRequired>false</isRequired>
+                                <isMultivalued>false</isMultivalued>
+                                <isReadOnly>false</isReadOnly>
                             </attribute>
                             <attribute>
                                 <name>description</name>
                                 <mapping>description</mapping>
                                 <type>text</type>
-                                <isRequired/>
-                                <isMultivalued/>
-                                <isReadOnly/>
+                                <isRequired>false</isRequired>
+                                <isMultivalued>false</isMultivalued>
+                                <isReadOnly>false</isReadOnly>
                             </attribute>
                             <attribute>
                                 <name>carLicense</name>
                                 <mapping>carLicense</mapping>
                                 <type>text</type>
-                                <isRequired/>
-                                <isMultivalued/>
-                                <isReadOnly/>
+                                <isRequired>false</isRequired>
+                                <isMultivalued>false</isMultivalued>
+                                <isReadOnly>false</isReadOnly>
                             </attribute>
                         </attributes>
                         <options>

Modified: idm/trunk/identity-impl/src/test/resources/store-test-config.xml
===================================================================
--- idm/trunk/identity-impl/src/test/resources/store-test-config.xml	2009-01-16 04:49:18 UTC (rev 220)
+++ idm/trunk/identity-impl/src/test/resources/store-test-config.xml	2009-01-16 13:49:44 UTC (rev 221)
@@ -18,13 +18,13 @@
             <external-config/>
             <default-identity-store-id>HibernateTestStore</default-identity-store-id>
             <default-attribute-store-id>HibernateTestStore</default-attribute-store-id>
-            <identity-store-mappings>
-                <identity-store-mapping>
-                    <identity-store-id>HibernateTestStore</identity-store-id>
-                    <identity-object-types/>
-                    <options/>
-                </identity-store-mapping>
-            </identity-store-mappings>
+            <!--<identity-store-mappings>-->
+                <!--<identity-store-mapping>-->
+                    <!--<identity-store-id>HibernateTestStore</identity-store-id>-->
+                    <!--<identity-object-types/>-->
+                    <!--<options/>-->
+                <!--</identity-store-mapping>-->
+            <!--</identity-store-mappings>-->
         </repository>
     </repositories>
     <stores>
@@ -50,6 +50,13 @@
                         <options/>
                     </identity-object-type>
                     <identity-object-type>
+                        <name>GROUP</name>
+                        <relationships/>
+                        <credentials/>
+                        <attributes/>
+                        <options/>
+                    </identity-object-type>
+                    <identity-object-type>
                         <name>ORGANIZATION</name>
                         <relationships>
                             <relationship>

Modified: idm/trunk/identity-impl/src/test/resources/test-config.xml
===================================================================
--- idm/trunk/identity-impl/src/test/resources/test-config.xml	2009-01-16 04:49:18 UTC (rev 220)
+++ idm/trunk/identity-impl/src/test/resources/test-config.xml	2009-01-16 13:49:44 UTC (rev 221)
@@ -4,22 +4,11 @@
                 xsi:schemaLocation="urn:jboss:identity:idm:config:v1_0_alpha identity-config.xsd">
    <realms>
       <realm>
-          <id></id>
-          <repository-id-ref></repository-id-ref>
-          <realm-configuration>
-              <!--Use direct type mappper when not specified-->
-              <!--<identity-type-mappings>-->
-              <!--<identity-mapping>JBOSS_IDENTITY_IDENTITY</identity-mapping>-->
-              <!--<group-type-mapping>-->
-              <!--<group-type-name>ORGANIZATION</group-type-name>-->
-              <!--<identity-object-type-name>JBOSS_IDENTITY_GROUP_ORGANIZATION</identity-object-type-name>-->
-              <!--</group-type-mapping>-->
-              <!--<group-type-mapping>-->
-              <!--<group-type-name>ORGANIZATION_UNIT</group-type-name>-->
-              <!--<identity-object-type-name>JBOSS_IDENTITY_GROUP_ORGANIZATION_UNIT</identity-object-type-name>-->
-              <!--</group-type-mapping>-->
-              <!--</identity-type-mappings>-->
-          </realm-configuration>
+          <id>Sample Ralm</id>
+          <repository-id-ref>Fallback Repository - ACME</repository-id-ref>
+          <identity-type-mappings>
+              <identity-mapping>IDENTITY</identity-mapping>
+          </identity-type-mappings>
       </realm>
    </realms>
     <repositories>
@@ -49,19 +38,6 @@
                     <options/>
                 </identity-store-mapping>
             </identity-store-mappings>
-            <!--<option-groups>-->
-            <!--<option-group>-->
-            <!--<name></name>-->
-            <!--<options>-->
-            <!--<option>-->
-            <!--<name></name>-->
-            <!--<values>-->
-            <!--<value></value>-->
-            <!--</values>-->
-            <!--</option>-->
-            <!--</options>-->
-            <!--</option-group>-->
-            <!--</option-groups>-->
         </repository>
     </repositories>
     <stores>
@@ -112,6 +88,7 @@
                         <attributes>
                             <attribute>
                                 <name>user.name.given</name>
+                                <type>text</type>
                                 <mapping/>
                                 <isRequired>false</isRequired>
                                 <isMultivalued>true</isMultivalued>

Modified: idm/trunk/identity-spi/src/main/java/org/jboss/identity/idm/spi/configuration/metadata/IdentityRepositoryConfigurationMetaData.java
===================================================================
--- idm/trunk/identity-spi/src/main/java/org/jboss/identity/idm/spi/configuration/metadata/IdentityRepositoryConfigurationMetaData.java	2009-01-16 04:49:18 UTC (rev 220)
+++ idm/trunk/identity-spi/src/main/java/org/jboss/identity/idm/spi/configuration/metadata/IdentityRepositoryConfigurationMetaData.java	2009-01-16 13:49:44 UTC (rev 221)
@@ -56,7 +56,7 @@
    /**
     * @return id of the default AttributeStore
     */
-   String getDefaultAttributeStroeId();
+   String getDefaultAttributeStoreId();
 
    /**
     * @return configuration meta data of IdentityStore mappings




More information about the jboss-identity-commits mailing list