diff options
Diffstat (limited to 'org/omg/CosNaming/BindingHelper.java')
-rw-r--r-- | org/omg/CosNaming/BindingHelper.java | 32 |
1 files changed, 12 insertions, 20 deletions
diff --git a/org/omg/CosNaming/BindingHelper.java b/org/omg/CosNaming/BindingHelper.java index b5b420772..86b077016 100644 --- a/org/omg/CosNaming/BindingHelper.java +++ b/org/omg/CosNaming/BindingHelper.java @@ -39,6 +39,7 @@ exception statement from your version. */ package org.omg.CosNaming; import gnu.CORBA.Minor; +import gnu.CORBA.OrbRestricted; import org.omg.CORBA.Any; import org.omg.CORBA.BAD_OPERATION; @@ -61,11 +62,6 @@ public abstract class BindingHelper private static String _id = "IDL:omg.org/CosNaming/Binding:1.0"; /** - * The cached type code value. - */ - private static TypeCode typeCode; - - /** * Extract the binding from the given {@link Any}. */ public static Binding extract(Any a) @@ -115,21 +111,17 @@ public abstract class BindingHelper */ public static TypeCode type() { - if (typeCode == null) - { - ORB orb = ORB.init(); - - StructMember[] members = new StructMember[ 2 ]; - TypeCode member; - member = NameComponentHelper.type(); - member = orb.create_sequence_tc(0, member); - member = orb.create_alias_tc(NameHelper.id(), "Name", member); - members [ 0 ] = new StructMember("binding_name", member, null); - member = BindingTypeHelper.type(); - members [ 1 ] = new StructMember("binding_type", member, null); - typeCode = orb.create_struct_tc(id(), "Binding", members); - } - return typeCode; + ORB orb = OrbRestricted.Singleton; + + StructMember[] members = new StructMember[ 2 ]; + TypeCode member; + member = NameComponentHelper.type(); + member = orb.create_sequence_tc(0, member); + member = orb.create_alias_tc(NameHelper.id(), "Name", member); + members [ 0 ] = new StructMember("binding_name", member, null); + member = BindingTypeHelper.type(); + members [ 1 ] = new StructMember("binding_type", member, null); + return orb.create_struct_tc(id(), "Binding", members); } /** |