The Principal interface method {@link #getName getName} returns the encodedname in little-endian format in accordance with RFC2253 and the IANA assigned numbers document for Directory System Names.
If the Name is initalised with a RFC2253 conformant syntax then the attributes are encoded in the opposite order they appear in the name(in little-endian order).
If the Name is initialized by decoding a DER stream then the internal representation remains identical to the decoded data. In other words, decoding and subsequent encoding of a Name object retains the order of attributes and returns identical encodings.
Note: this class works properly only if the {@link #decode decode}method is called in order to decode Names. Do not use constructions such as:
DERDecoder dec; Name rdn; dec = new DERDecoder(in); rdn = new Name(); dec.readCollectionOf(rdn); dec.close();
This would work in theory but this implementation makes some assumptions in order to optimise the decoding. Better use the "proper" construction: DERDecoder dec; Name rdn; dec = new DERDecoder(in); rdn = new Name(); rdn.decode(dec); dec.close();
This should always be safe and is the preferred way of decoding ASN.1 types anyway. Since there is only one choice at present for the Name which is RDNSequence this type does not bother to implement CHOICE as its outer type. The definition of Name according to X.501 as given in RSA Laboratories' Laymans Guide is:
Name ::= CHOICE { RDNSequence } RDNSequence ::= SEQUENCE OF RelativeDistinguishedName RelativeDistinguishedName :: = SET OF AttributeValueAssertion AttributeValueAssertion ::= SEQUENCE { AttributeType, AttributeValue } AttributeType ::= OBJECT IDENTIFIER AttributeValue ::= ANY Since the ANY type is deprecated in the '97 specification of X.680 we represent the ANY type by a generic Open Type which is the new ASN.1 way of handling this.This class supports the full range of RFC2253 features including
The string output is canonicalized. Everything that can be resolved by this class (e.g., keywords for attribute types) is resolved. The following attribute types are supported per default (cf. RFC3383:
- Quoting and escaping.
- RDNs with multiple AVAs separated by a plus sign ('+').
- OIDs as attribute keys.
- Hexadecimal attribute values introduced by a '#'. Such values must constitute a valid BER encoding.
- Commas and semicolons as separators.
@author Volker Roth @author Jan Peters @version "$Id: Name.java,v 1.9 2007/08/30 08:45:05 pebinger Exp $"
- ALIASEDOBJECTNAME (aliasedObjectName, 2.5.4.1, RFC2256)
- C (countryName, 2.5.4.6, RFC2256)
- CN (commonName, 2.5.4.3, RFC2256)
- DC (domainComponent, 0.9.2342.19200300.100.1.25, RFC2247)
- DATEOFBIRTH (dateOfBirth, 1.3.6.1.5.5.7.9.1, RFC2985)
- DNQUALIFIER (dnQualifier, 2.5.4.46, RFC2256)
- DESCRIPTION (description, 2.5.4.13, RFC2256)
- EMAILADDRESS (emailAddress, 1.2.840.113549.1.9.1, RFC2985)
- GENDER (gender, 1.3.6.1.5.5.7.9.3, RFC2985)
- GENERATION (generationQualifier, 2.5.4.44, RFC2256)
- GN (givenName, 2.5.4.42, RFC2256)
- INITIALS (initials, 2.5.4.43, RFC2256)
- IP (ip, 1.3.6.1.4.1.42.2.11.2.1, ?)
- L (localityName, 2.5.4.7, RFC2256)
- O (organizationName, 2.5.4.10, RFC2256)
- OU (organizationalUnitName, 2.5.4.11, RFC2256)
- PLACEOFBIRTH (placeOfBirth, 1.3.6.1.5.5.7.9.2, RFC2985)
- POSTALADDRESS (postalAddress, 2.5.4.16, RFC2256)
- POSTALCODE (postalCode, 2.5.4.17, RFC2256
- PSEUDONYM (pseudonym, 2.5.4.65, RFC2985)
- SERIALNUMBER (serialNumber, 2.5.4.5, RFC2256)
- SN (surName, 2.5.4.4, RFC2256)
- ST (stateOrProvinceName, 2.5.4.8, RFC2256)
- STREET (street, 2.5.4.9, RFC2256)
- UID (uid, 0.9.2342.19200300.100.1.1, RFC2253)
- TITLE (title, 2.5.4.12, RFC2256)
フィールド参照式が名前のみによって表現可能な場合、名前式を利用しなければならない。
atom:name { text }
The name of the text object in the text input area.
@author Bill Brownoffset name size contents --- 4 grbit 2 option flags 6 chKey 1 Keyboard Shortcut 7 cch 1 length of name text 8 cce 2 length of name definition *stored in Excel parsed format 10 ixals 2 index to sheet containing name 12 itab 2 NAME SCOPE -- 0= workbook, 1+= sheet 14 cchCustMenu 1 length of custom menu text 15 cchDescript 1 length of description text 16 cchHelpTopic 1 length of help topic text 17 cchStatusText 1 length of status bar text 18 rgch var name text var rgce var name definition var rcchCustMenu var cust menu text var rgchDescr var description text var rgchHelpTopic var help text var rgchStatusText var status bar text
This should be derived from a String as close to the parsing as possible so that it's obvious what kind of case-sensitivity conventions are required for the label. @author mikesamuel@gmail.com
String
) and a local part (String
with no colon) Names are the same if they have the same namespace, local part and creator. This implementation keeps track of the prefix a namespace was bound to when the name was created, so we may have more than one name with identical namespace, local part and creater, but with different prefixes, yet "equals()" holds true for all.
Serialization is not mandatory, even if a Name is to be shared between remote processes, as the String representation of this Class guarantees a full and lossless reproduction. In other words, new Name( name.toString() ).equals( name ) always returns true . @author Kedar Mhaswade @version 1.0
Serialization is not mandatory, even if a Name is to be shared between remote processes, as the String representation of this Class guarantees a full and lossless reproduction. In other words, new Name( name.toString() ).equals( name ) always returns true . @author Kedar Mhaswade @version 1.0
This is NOT part of any supported API. If you write code that depends on this, you do so at your own risk. This code and its internal interfaces are subject to change or deletion without notice.
This class keeps indicies for URI and local name for enabling faster processing.
{@link Name}s are ordered lexicographically (nsUri first, local name next.) This is the same order required by canonical XML. @author Kohsuke Kawaguchi
This class keeps indicies for URI and local name for enabling faster processing.
{@link Name}s are ordered lexicographically (nsUri first, local name next.) This is the same order required by canonical XML. @author Kohsuke Kawaguchi
An empty {@code Name} has a length of zero.
In the context of {@linkplain javax.annotation.processing.ProcessingEnvironment annotationprocessing}, the guarantees for "the same" implementation must include contexts where the {@linkplain javax.annotation.processing API mediated} side effects of {@linkplain javax.annotation.processing.Processor processors} could be visibleto each other, including successive annotation processing {@linkplain javax.annotation.processing.RoundEnvironment rounds}. @author Joseph D. Darcy @author Scott Seligman @author Peter von der Ahé @see javax.lang.model.util.Elements#getName @since 1.6
A name as defined by the Java Language Specification. The semantic is slightly different as this name allows a name with zero identifiers. A name can either be:
The empty name has been added for making programming easier and avoiding null checks.
@author Julien VietThis node type is also used to represent certain non-identifier names that are part of the language syntax. It's used for the "get" and "set" pseudo-keywords for object-initializer getter/setter properties, and it's also used for the "*" wildcard in E4X XML namespace and name expressions.
All names are stored as multinames in the ABC, but this view of a name differentiates regular multinames, runtime multinames, and type names.
Name
is a combination of a namespace URI and a local part. Instances of this class are used to internally represent the names of JCR content items and other objects within a content repository. A Name
is immutable once created.
The String representation of a Name
object must be in the format "{namespaceURI}localPart
".
An implementation of the Name
interface must implement the {@link Object#equals(Object)} method such that two Name objects are equal ifboth the namespace URI and the local part are equal.
A name is a meaningful shorthand that makes it easier to understand the purpose of a cell reference, constant or a formula.
Examples:Sheet sheet = workbook.createSheet("Loan Calculator"); Name name; name = workbook.createName(); name.setNameName("Interest_Rate"); name.setRefersToFormula("'Loan Calculator'!$E$5"); name = wb.createName(); name.setNameName("Loan_Amount"); name.setRefersToFormula("'Loan Calculator'!$E$4"); name = wb.createName(); name.setNameName("Number_of_Payments"); name.setRefersToFormula("'Loan Calculator'!$E$10"); name = wb.createName(); name.setNameName("Monthly_Payment"); name.setRefersToFormula("-PMT(Interest_Rate/12,Number_of_Payments,Loan_Amount)"); name = wb.createName(); name.setNameName("Values_Entered"); name.setRefersToFormula("IF(Loan_Amount*Interest_Rate>0,1,0)");
SimpleName
) and qualified ones (QualifiedName
).
Name: SimpleName QualifiedName@since 2.0
SimpleName
) and qualified ones (QualifiedName
).
Name: SimpleName QualifiedName@since 2.0 @noextend This class is not intended to be subclassed by clients.
PropertyChangeEvent
when the name changes. This class is thread safe. @author Torgil Zethson
QueryPart
. A Name
is a {@link QueryPart} that renders a SQL identifieraccording to the settings specified in {@link Settings#getRenderNameStyle()}.
@author Lukas Eder
This node type is also used to represent certain non-identifier names that are part of the language syntax. It's used for the "get" and "set" pseudo-keywords for object-initializer getter/setter properties, and it's also used for the "*" wildcard in E4X XML namespace and name expressions.
This interface provides method names similar to the Java QName interface in order to facilitate those transition from an XML models. We are recording the a full namespace (rather than just a prefix) in order to sensibly compare Names produced from different contexts. Since the idea of a "prefix" in a QName is only used to refer to a namespace defined earlier in the document it is sensible for us to ask this prefix be resolved (allowing us to reliability compare names produced from different documents; or defined by different repositories).
Notes:null
, we have made a test for this case explicit with the isGlobal() method. A canonical hierarchical name is a series of components separated by slashes. Each component starts with a keyword and equals sign. Domino names use the following components: CN (common name), OU (organizational unit - up to four are permitted), O (organization), and C (country). Domino names do not use the following components but this class recognizes them: G (given name), I (initial), S (surname), Q (generation; for example, "Jr"), A (ADMD name), and P (PRMD name).
The following is an example of a Domino hierarchical name in canonical format. It uses two of the available organizational units. The hierarchy is right to left, so East is organizational unit 1 and Sales is organizational unit 2.
CN=John B Goode/OU=Sales/OU=East/O=Acme/C=US
An abbreviated name is a series of components separated by slashes. The components are not identified by keyword but depend on order for identification. The above name in abbreviated format is as follows:
John B Goode/Sales/East/Acme/US
This class does not abbreviate a canonical name if the abbreviation would be ambiguous. For example, CN=John B Goode/OU=East
cannot be abbreviated because East would appear to be the organization (rather than an organizational unit). This class also does not abbreviate a canonical name if it contains any of the components not used in Domino names.
A specification of an abbreviated name can include only those components used in Domino names. The components must be in proper sequence. The following are acceptable:
A common name by itself is interpreted as a flat name. A common name followed by a slash receives the organizational and country information of the effective user.
A name that conforms to RFC 821 or RFC 822 is interpreted as an Internet address. Examples of Internet addresses are as follows:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|