< prev index next >

src/java.naming/share/classes/javax/naming/CompoundName.java

Print this page
rev 14722 : imported patch 8153362


 136  * so that when the same string is parsed, it will yield the same components
 137  * of the original compound name.
 138  *
 139  *<h1>Multithreaded Access</h1>
 140  * A {@code CompoundName} instance is not synchronized against concurrent
 141  * multithreaded access. Multiple threads trying to access and modify a
 142  * {@code CompoundName} should lock the object.
 143  *
 144  * @author Rosanna Lee
 145  * @author Scott Seligman
 146  * @since 1.3
 147  */
 148 
 149 public class CompoundName implements Name {
 150 
 151     /**
 152       * Implementation of this compound name.
 153       * This field is initialized by the constructors and cannot be null.
 154       * It should be treated as a read-only variable by subclasses.
 155       */

 156     protected transient NameImpl impl;
 157     /**
 158       * Syntax properties for this compound name.
 159       * This field is initialized by the constructors and cannot be null.
 160       * It should be treated as a read-only variable by subclasses.
 161       * Any necessary changes to mySyntax should be made within constructors
 162       * and not after the compound name has been instantiated.
 163       */
 164     protected transient Properties mySyntax;
 165 
 166     /**
 167       * Constructs a new compound name instance using the components
 168       * specified in comps and syntax. This protected method is intended
 169       * to be used by subclasses of CompoundName when they override
 170       * methods such as clone(), getPrefix(), getSuffix().
 171       *
 172       * @param comps  A non-null enumeration of the components to add.
 173       *   Each element of the enumeration is of class String.
 174       *               The enumeration will be consumed to extract its
 175       *               elements.




 136  * so that when the same string is parsed, it will yield the same components
 137  * of the original compound name.
 138  *
 139  *<h1>Multithreaded Access</h1>
 140  * A {@code CompoundName} instance is not synchronized against concurrent
 141  * multithreaded access. Multiple threads trying to access and modify a
 142  * {@code CompoundName} should lock the object.
 143  *
 144  * @author Rosanna Lee
 145  * @author Scott Seligman
 146  * @since 1.3
 147  */
 148 
 149 public class CompoundName implements Name {
 150 
 151     /**
 152       * Implementation of this compound name.
 153       * This field is initialized by the constructors and cannot be null.
 154       * It should be treated as a read-only variable by subclasses.
 155       */
 156     @SuppressWarnings("unexportedinapi")
 157     protected transient NameImpl impl;
 158     /**
 159       * Syntax properties for this compound name.
 160       * This field is initialized by the constructors and cannot be null.
 161       * It should be treated as a read-only variable by subclasses.
 162       * Any necessary changes to mySyntax should be made within constructors
 163       * and not after the compound name has been instantiated.
 164       */
 165     protected transient Properties mySyntax;
 166 
 167     /**
 168       * Constructs a new compound name instance using the components
 169       * specified in comps and syntax. This protected method is intended
 170       * to be used by subclasses of CompoundName when they override
 171       * methods such as clone(), getPrefix(), getSuffix().
 172       *
 173       * @param comps  A non-null enumeration of the components to add.
 174       *   Each element of the enumeration is of class String.
 175       *               The enumeration will be consumed to extract its
 176       *               elements.


< prev index next >