diff options
author | Fraser Tweedale <ftweedal@redhat.com> | 2015-04-22 21:47:51 -0400 |
---|---|---|
committer | Fraser Tweedale <ftweedal@redhat.com> | 2015-04-23 12:00:11 +1000 |
commit | 97e860895831ba84f66d776d6a324abcbcc53c11 (patch) | |
tree | adde179c51c0c2fad5e368dad9be3ff93fcd11e5 | |
parent | 4edd5664cefae2022782a3734db11accbfa16b3a (diff) | |
download | pki-97e860895831ba84f66d776d6a324abcbcc53c11.tar.gz pki-97e860895831ba84f66d776d6a324abcbcc53c11.tar.xz pki-97e860895831ba84f66d776d6a324abcbcc53c11.zip |
Enumerate profiles in order of discovery
Recent change (d83f688) changed the order of profile enumeration.
Track profiles using a LinkedHashMap to restore old behaviour where
profiles were enumerated in the order they were discovered.
3 files changed, 8 insertions, 4 deletions
diff --git a/base/server/cmscore/src/com/netscape/cmscore/profile/AbstractProfileSubsystem.java b/base/server/cmscore/src/com/netscape/cmscore/profile/AbstractProfileSubsystem.java index 8125dfac9..238816ff0 100644 --- a/base/server/cmscore/src/com/netscape/cmscore/profile/AbstractProfileSubsystem.java +++ b/base/server/cmscore/src/com/netscape/cmscore/profile/AbstractProfileSubsystem.java @@ -17,8 +17,10 @@ // --- END COPYRIGHT BLOCK --- package com.netscape.cmscore.profile; +import java.util.Collections; import java.util.Enumeration; import java.util.Hashtable; +import java.util.LinkedHashMap; import java.util.Vector; import com.netscape.certsrv.base.EBaseException; @@ -35,7 +37,7 @@ public abstract class AbstractProfileSubsystem implements IProfileSubsystem { protected IConfigStore mConfig = null; protected ISubsystem mOwner; - protected Hashtable<String, IProfile> mProfiles; + protected LinkedHashMap<String, IProfile> mProfiles; protected Hashtable<String, String> mProfileClassIds; /** @@ -131,7 +133,7 @@ public abstract class AbstractProfileSubsystem implements IProfileSubsystem { * list is of type String. */ public Enumeration<String> getProfileIds() { - return mProfiles.keys(); + return Collections.enumeration(mProfiles.keySet()); } /** diff --git a/base/server/cmscore/src/com/netscape/cmscore/profile/LDAPProfileSubsystem.java b/base/server/cmscore/src/com/netscape/cmscore/profile/LDAPProfileSubsystem.java index 0c390be58..a7974430f 100644 --- a/base/server/cmscore/src/com/netscape/cmscore/profile/LDAPProfileSubsystem.java +++ b/base/server/cmscore/src/com/netscape/cmscore/profile/LDAPProfileSubsystem.java @@ -23,6 +23,7 @@ import java.io.InputStream; import java.lang.Thread; import java.util.Enumeration; import java.util.Hashtable; +import java.util.LinkedHashMap; import java.util.Vector; import netscape.ldap.LDAPAttribute; @@ -73,7 +74,7 @@ public class LDAPProfileSubsystem CMS.debug("LDAPProfileSubsystem: start init"); // (re)init member collections - mProfiles = new Hashtable<String, IProfile>(); + mProfiles = new LinkedHashMap<String, IProfile>(); mProfileClassIds = new Hashtable<String, String>(); IConfigStore cs = CMS.getConfigStore(); diff --git a/base/server/cmscore/src/com/netscape/cmscore/profile/ProfileSubsystem.java b/base/server/cmscore/src/com/netscape/cmscore/profile/ProfileSubsystem.java index b2b4b30f2..10bc50cda 100644 --- a/base/server/cmscore/src/com/netscape/cmscore/profile/ProfileSubsystem.java +++ b/base/server/cmscore/src/com/netscape/cmscore/profile/ProfileSubsystem.java @@ -20,6 +20,7 @@ package com.netscape.cmscore.profile; import java.io.File; import java.util.Enumeration; import java.util.Hashtable; +import java.util.LinkedHashMap; import java.util.StringTokenizer; import java.util.Vector; @@ -55,7 +56,7 @@ public class ProfileSubsystem IPluginRegistry registry = (IPluginRegistry) CMS.getSubsystem(CMS.SUBSYSTEM_REGISTRY); - mProfiles = new Hashtable<String, IProfile>(); + mProfiles = new LinkedHashMap<String, IProfile>(); mProfileClassIds = new Hashtable<String, String>(); mConfig = config; |