JavaTM Platform
Standard Ed. 6

javax.management.modelmbean
클래스 DescriptorSupport

java.lang.Object 
  상위를 확장 javax.management.modelmbean.DescriptorSupport
모든 구현된 인터페이스:
Serializable , Cloneable , Descriptor


public class DescriptorSupport
extends Object
implements Descriptor

이 클래스는, ModelMBean 요소의 메타데이타셋트를 나타냅니다. 기술자는, ModelMBeanInfo, ModelMBeanNotificationInfo, ModelMBeanAttributeInfo, ModelMBeanConstructorInfo, 및 ModelMBeanParameterInfo 의 일부입니다.

기술자는 복수의 필드로부터 완성됩니다. 각 필드는 fieldname=fieldvalue 의 형식이 됩니다. 필드명의 대문자와 소문자는 구별되지 않습니다. 필드명을 대문자로 입력했을 경우는 필드치도 대문자, 필드명을 소문자로 입력했을 경우는 필드치도 소문자가 됩니다.

모든 필드의 이름과 값이 미정도리가 아닙니다. 임의의 프로그램으로 새로운 필드를 정의해, 추가할 수가 있습니다. 일부의 필드는, 구현의 무결성을 확보해, ModelMBeanInfo, ModelMBeanAttributeInfo, ModelMBeanConstructorInfo, ModelMBeanNotificationInfo, ModelMBeanOperationInfo 및 ModelMBean 클래스에 의한 지원를 얻기 위해, 정의가 끝난 상태가 되어 있습니다.

이 클래스의 serialVersionUID-6292969195866300415L 입니다.

도입된 버젼:
1.5
관련 항목:
직렬화 된 형식

생성자 의 개요
DescriptorSupport ()
          기술자의 디폴트의 생성자 입니다.
DescriptorSupport (DescriptorSupport  inDescr)
          Descriptor 를 파라미터로서 취하는 기술자의 생성자 입니다.
DescriptorSupport (int initNumFields)
          기술자의 생성자 입니다.
DescriptorSupport (String ... fields)
          fieldName=fieldValue 의 형식의 필드를 잡는 생성자 입니다.
DescriptorSupport (String  inStr)
          XML String 를 취하는 기술자의 생성자 입니다.
DescriptorSupport (String [] fieldNames, Object [] fieldValues)
          필드명과 필드값을 받는 생성자 입니다.
 
메소드의 개요
 Object clone ()
          새로운 Descriptor (Descriptor 의 복제)를 돌려줍니다.
 boolean equals (Object  o)
          이 기술자와 지정된 객체를 비교합니다.
 String [] getFieldNames ()
          기술자내의 모든 필드명을 돌려줍니다.
 String [] getFields ()
          이 기술자에게 포함되는 모든 필드를 단일의 캐릭터 라인 배열로서 돌려줍니다.
 Object getFieldValue (String  fieldName)
          특정의 필드명의 값을 돌려줍니다.
 Object [] getFieldValues (String ... fieldNames)
          기술자내의 모든 필드의 값을 Object 의 배열로서 돌려줍니다.
 int hashCode ()
          이 기술자의 해시 코드값를 돌려줍니다.
 boolean isValid ()
          모든 필드에 이름이 부여되고 있어 값이 유효한 경우, true 를 돌려줍니다.
 void removeField (String  fieldName)
          기술자로부터 필드를 삭제합니다.
 void setField (String  fieldName, Object  fieldValue)
          특정의 필드명을 나타내는 값을 설정합니다.
 void setFields (String [] fieldNames, Object [] fieldValues)
          필드명 배열내의 모든 필드를 새로운 값으로 설정해, 필드치 배열에 같은 인덱스를 설정합니다.
 String toString ()
          기술자를 나타내는, 인간이 읽을 수 있는 형식의 캐릭터 라인을 돌려줍니다.
 String toXMLString ()
          기술자를 나타내는 XML String 를 돌려줍니다.
 
클래스 java.lang. Object 로부터 상속된 메소드
finalize , getClass , notify , notifyAll , wait , wait , wait
 

생성자 의 상세

DescriptorSupport

public DescriptorSupport()
기술자의 디폴트의 생성자 입니다. 디폴트의 초기 기술자 사이즈는 20 입니다만, 이 사이즈는 필요에 따라서 커집니다.
작성된 빈 상태(empty)의 기술자는 무효인 기술자입니다 (isValidfalse 를 돌려준다).


DescriptorSupport

public DescriptorSupport(int initNumFields)
                  throws MBeanException ,
                         RuntimeOperationsException 
기술자의 생성자 입니다. 기술자 필드를 포함하는 Map 의 초기 용량이 파라미터가 됩니다. 용량은 필요에 따라서 증가합니다.
작성된 빈 상태(empty)의 기술자는 무효인 기술자입니다 (isValidfalse 를 돌려준다).

파라미터:
initNumFields - 기술자 필드를 포함한다 Map 의 초기 용량
예외:
RuntimeOperationsException - initNumFields 의 값이 무효 (<= 0)인 경우
MBeanException - 분산 통신 Exception 를 랩 한다

DescriptorSupport

public DescriptorSupport(DescriptorSupport  inDescr)
Descriptor 를 파라미터로서 취하는 기술자의 생성자 입니다. 파라미터로서 건네받은 기술자의 값에 초기화되는 새로운 기술자를 작성합니다.

파라미터:
inDescr - 구축이 끝난 기술자의 초기화에 사용된다 기술자. null 의 경우, 또는 기술자 필드가 포함되지 않는 경우, 빈 상태(empty)의 Descriptor 가 작성된다

DescriptorSupport

public DescriptorSupport(String  inStr)
                  throws MBeanException ,
                         RuntimeOperationsException ,
                         XMLParseException 

XML String 를 취하는 기술자의 생성자 입니다.

XML 캐릭터 라인의 형식은 미정도리입니다만,toXMLString() 에 의해 기존의 기술자상에 반환되는 캐릭터 라인으로, 이 생성자 을 사용해 동등의 기술자를 인스턴스화할 수 있는 구현이 아니면 안됩니다.

이 구현에서는, 모든 필드치는 String 로서 작성됩니다. 필드치가 String 가 아닌 경우, 프로그래머는, 이러한 필드를 올바르고 리셋 또는 변환할 필요가 있습니다.

파라미터:
inStr - 이 Descriptor 의 read 사용되는 XML 형식의 캐릭터 라인. 이 캐릭터 라인의 형식은 미정도리이지만, toXMLString 메소드에 의해 기존의 기술자상에 반환되는 캐릭터 라인으로, 이 생성자 을 사용해 동등의 기술자를 인스턴스화할 수 있는 구현이 아니면 안된다
예외:
RuntimeOperationsException - 파라미터로서 건네받는 String inStr 가 null 의 경우
XMLParseException - 입력 String 의 해석시에 XML 해석 관련의 문제가 발생했을 경우
MBeanException - 분산 통신 Exception 를 랩 한다

DescriptorSupport

public DescriptorSupport(String [] fieldNames,
                         Object [] fieldValues)
                  throws RuntimeOperationsException 
필드명과 필드값을 받는 생성자 입니다. 어느 배열도 null 는 사용할 수 없습니다.

파라미터:
fieldNames - 필드명의 캐릭터 라인 배열. 이 배열의 배열 요소는 null 이외
fieldValues - 대응하는 필드치로부터 완성된다 객체 배열. 배열 요소는 null 의 경우도 있다. fieldValueisValid 메소드의 정의 대로, fieldName 에 대해서 유효한 값이 아니면 안된다

주:파라미터의 배열 사이즈가 일치하고 있을 필요가 있습니다. 양쪽 모두의 배열이 빈 상태(empty)의 경우, 빈 상태(empty)의 기술자가 작성됩니다.

예외:
RuntimeOperationsException - 필드명 또는 필드치를 나타내는 값이 부정한 경우. 배열의 길이는 일치하고 있을 필요가 있다. 하등의 이유로써 기술자의 작성에 실패했을 경우, 이 예외가 throw 된다

DescriptorSupport

public DescriptorSupport(String ... fields)
fieldName=fieldValue 의 형식의 필드를 잡는 생성자 입니다.

파라미터:
fields - 필드명 및 필드치를 포함한 요소를 가진다 캐릭터 라인 배열. 이 배열이 null 또는 빈 상태(empty)의 경우, 디폴트의 생성자 이 실행된다. null 캐릭터 라인과 공문자열은 무시된다

모든 필드치는 String 가 됩니다. 필드치가 String 가 아닌 경우, 프로그래머는, 이러한 필드를 올바르고 리셋 또는 변환할 필요가 있습니다.

주:각 캐릭터 라인은 fieldName=fieldValue 의 형식을 취할 필요가 있습니다. 필드명은, 최초의 = 문자까지입니다. 예를 들어, String 가 a=b=c 의 경우, 필드명은 a 로, 값은 b=c 입니다.

예외:
RuntimeOperationsException - 필드명 또는 필드치를 나타내는 값이 부정한 경우. 필드에는 「=」이 포함되지 않으면 안 된다. "=". 「=fieldValue」, 「fieldName」, 「fieldValue」는 무효. 또, FieldName 는 null 이외. 「fieldName=」의 경우, 값은 null 가 된다. 하등의 이유로써 기술자의 작성에 실패했을 경우, 이 예외가 throw 된다
메소드의 상세

getFieldValue

public Object  getFieldValue(String  fieldName)
                     throws RuntimeOperationsException 
인터페이스 Descriptor 의 기술:
특정의 필드명의 값을 돌려줍니다. 그 이름의 값이 존재하지 않는 경우는 null 를 돌려줍니다.

정의:
인터페이스 Descriptor 내의 getFieldValue
파라미터:
fieldName - 필드명.
반환값:
대응하는 값. 그 필드가 존재하지 않는 경우는 null
예외:
RuntimeOperationsException - 필드명이 부정한 경우

setField

public void setField(String  fieldName,
                     Object  fieldValue)
              throws RuntimeOperationsException 
인터페이스 Descriptor 의 기술:

특정의 필드명을 나타내는 값을 설정합니다. 이 조작에 의해, 기존의 필드가 변경되거나 새로운 필드가 추가 되거나 합니다.

필드치는, 검증되고 나서 설정됩니다. 무효인 값의 경우는 예외가 throw 됩니다. 타당성의 의미는, 기술자의 구현에 따라서 다릅니다.

정의:
인터페이스 Descriptor 내의 setField
파라미터:
fieldName - 설정되는 필드명. null 나 공문자열은 사용할 수 없는
fieldValue - 필드명으로서 설정된다 치. null 가 필드에서 유효한 값이면, null 도 사용할 수 있다
예외:
RuntimeOperationsException - 필드명 또는 필드치가 부정한 경우 (랩 된 예외는 IllegalArgumentException ), 또는 기술자가 불변인 경우 (랩 된 예외는 UnsupportedOperationException ).

getFields

public String [] getFields()
인터페이스 Descriptor 의 기술:
이 기술자에게 포함되는 모든 필드를 단일의 캐릭터 라인 배열로서 돌려줍니다.

정의:
인터페이스 Descriptor 내의 getFields
반환값:
fieldName=fieldValue 의 형식의 필드의 캐릭터 라인 배열
필드의 값이 String 가 아닌 경우, toString() 메소드가 불려 가 반환값이 괄호로 둘러싸여 반환되는 배열내의 필드의 값으로 해서 사용된다. 필드의 값이 null 의 경우, 반환되는 배열내의 필드의 값은 비운다. 기술자가 빈 상태(empty)의 경우, 빈 상태(empty)의 배열이 반환되는
관련 항목:
Descriptor.setFields(java.lang.String[], java.lang.Object[])

getFieldNames

public String [] getFieldNames()
인터페이스 Descriptor 의 기술:
기술자내의 모든 필드명을 돌려줍니다.

정의:
인터페이스 Descriptor 내의 getFieldNames
반환값:
필드명의 캐릭터 라인 배열. 기술자가 빈 상태(empty)의 경우 빈 상태(empty)의 배열이 반환된다

getFieldValues

public Object [] getFieldValues(String ... fieldNames)
인터페이스 Descriptor 의 기술:
기술자내의 모든 필드의 값을 Object 의 배열로서 돌려줍니다. 반환되는 값의 차례는,fieldNames String 배열 파라미터의 경우와 같게 됩니다.

정의:
인터페이스 Descriptor 내의 getFieldValues
파라미터:
fieldNames - 치가 반환되는 필드의 이름으로 구성된다 캐릭터 라인 배열. 배열이 빈 상태(empty)의 경우, 빈 상태(empty)의 배열이 반환된다. 배열이 null 의 경우, 파라미터가 Descriptor.getFieldNames() 에 의해 반환된 배열인것 같이, 모든 값이 반환된다. 배열내의 필드명이 존재하지 않는 경우 (필드명이 null 또는 빈 상태(empty)의 캐릭터 라인인 경우를 포함한다), 반환되는 대응하는 배열 요소에 대해서 null 가 반환된다
반환값:
필드치로부터 완성되는 객체 배열. fieldNames 의 리스트가 빈 상태(empty)의 경우, 빈 상태(empty)의 배열이 반환된다

setFields

public void setFields(String [] fieldNames,
                      Object [] fieldValues)
               throws RuntimeOperationsException 
인터페이스 Descriptor 의 기술:

필드명 배열내의 모든 필드를 새로운 값으로 설정해, 필드치 배열에 같은 인덱스를 설정합니다. 배열 사이즈는 일치하고 있을 필요가 있습니다.

필드치는, 검증되고 나서 설정됩니다. 무효인 값의 경우는 예외가 throw 됩니다. 배열이 빈 상태(empty)의 경우, 변경 내용은 적용되지 않습니다.

정의:
인터페이스 Descriptor 내의 setFields
파라미터:
fieldNames - 필드명의 캐릭터 라인 배열. 배열 및 배열 요소는, null 에는 할 수 없는
fieldValues - 대응하는 필드치로부터 완성되는 객체 배열. 배열은 null 이외. 배열 요소는 null 의 경우도 있다
예외:
RuntimeOperationsException - 하등의 이유로써 변경이 실패했을 경우. fieldNames 또는 fieldValues 가 null 의 경우, 배열의 길이가 다른 경우, 또는, 그러한 어느 쪽인가에 부정한 값이 존재하는 경우에, 랩 된 예외는 IllegalArgumentException 가 된다. 기술자가 불변으로, 호출에 의해 그 내용이 변경되는 경우, 랩 된 예외는 UnsupportedOperationException 가 된다.
관련 항목:
Descriptor.getFields()

clone

public Object  clone()
             throws RuntimeOperationsException 
새로운 Descriptor (Descriptor 의 복제)를 돌려줍니다.

정의:
인터페이스 Descriptor 내의 clone
오버라이드(override):
클래스 Object 내의 clone
반환값:
이 인스턴스의 복제
예외:
RuntimeOperationsException - 필드명 또는 필드치를 나타내는 값이 부정한 경우. 하등의 이유로써 기술자의 작성에 실패했을 경우, 이 예외가 throw 되는
관련 항목:
Cloneable

removeField

public void removeField(String  fieldName)
인터페이스 Descriptor 의 기술:
기술자로부터 필드를 삭제합니다.

정의:
인터페이스 Descriptor 내의 removeField
파라미터:
fieldName - 삭제되는 필드의 캐릭터 라인명. 필드명이 부정한가, 필드가 발견되지 않는 경우, 예외는 throw 되지 않는다

equals

public boolean equals(Object  o)
이 기술자와 지정된 객체를 비교합니다. 지정된 객체도 Descriptor 이며, 2 개의 기술자의 필드명이 동일해 (대문자와 소문자가 다를 가능성이 있다), 관련지을 수 있었던 값이 같은 경우, 오제크트는 등가입니다. 다음의 조건을 채우는 경우, 2 개의 Descriptor 내의 필드의 각각의 값이 동일해집니다.

정의:
인터페이스 Descriptor 내의 equals
오버라이드(override):
클래스 Object 내의 equals
파라미터:
o - 비교 대상의 객체
반환값:
객체가 동일한 경우는 true, 그렇지 않은 경우는 false
관련 항목:
Object.hashCode() , Hashtable

hashCode

public int hashCode()

이 기술자의 해시 코드값를 돌려줍니다. 해시 코드는, 기술자내의 각 필드의 해시 코드의 합계가 됩니다. 이름이 n 로, 값이 v 의 필드의 해시 코드는,n.toLowerCase(). hashCode() ^ h 가 됩니다. 여기서,hv 의 해시 코드입니다. 다음에 계산방법을 나타냅니다.

정의:
인터페이스 Descriptor 내의 hashCode
오버라이드(override):
클래스 Object 내의 hashCode
반환값:
이 객체의 해시 코드값
관련 항목:
Object.equals(java.lang.Object) , Hashtable

isValid

public boolean isValid()
                throws RuntimeOperationsException 
모든 필드에 이름이 부여되고 있어 값이 유효한 경우, true 를 돌려줍니다.

이 구현은, 디렉토리 또는 검색 서비스와의 상호 운용성을 지원하지 않습니다. 스펙에 의해,"export" 필드의 체크는 행해지지 않습니다.

다음의 경우, 이 구현은 false 를 돌려줍니다.

정의:
인터페이스 Descriptor 내의 isValid
반환값:
치가 유효한 경우는 true
예외:
RuntimeOperationsException - 하등의 이유로써 타당성 검사에 실패했을 경우, 이 예외가 throw 된다

toXMLString

public String  toXMLString()

기술자를 나타내는 XML String 를 돌려줍니다.

형식은 미정도리입니다만, 생성자 DescriptorSupport(String inStr) 를 사용해 인스턴스화할 때, 이 메소드에 의해 반환되는 캐릭터 라인으로, 동등의 기술자를 구축할 수 있는 구현이 아니면 안됩니다.

필드가 String 객체가 아닌 경우, toString()가 불려 가 값이 작성됩니다. 값은 괄호에 둘러싸인 형식이 됩니다. 이러한 객체가 유의의 형식의 toString()를 지원하도록(듯이) 설정되어 있어, 같은 형식의 String 를 받아들이는 일치한 생성자 을 가지고 있지 않은 경우, 이러한 객체를 재구축 할 수 없는 것이 있습니다.

기술자가 빈 상태(empty)의 경우, String 로서 <Descriptor></Descriptor> 가 돌려주어집니다.

반환값:
XML 캐릭터 라인
예외:
RuntimeOperationsException - 필드명 또는 필드치를 나타내는 값이 부정한 경우. 하등의 이유로써 XML 형식의 캐릭터 라인의 작성에 실패했을 경우, 이 예외가 throw 된다

toString

public String  toString()
기술자를 나타내는, 인간이 읽을 수 있는 형식의 캐릭터 라인을 돌려줍니다. 이 캐릭터 라인의 형식은, 「fieldName=fieldValue, fieldName2=fieldValue2,...」(와)과 같이 됩니다.
기술자내에 필드가 존재하지 않는 경우, 빈 상태(empty)의 String 가 돌려주어집니다.
fieldValue 가 객체인 경우, toString() 메소드가 불려 갑니다. 반환값은 괄호에 둘러싸인 필드의 값으로 해서 사용됩니다.

오버라이드(override):
클래스 Object 내의 toString
반환값:
이 객체의 캐릭터 라인 표현
예외:
RuntimeOperationsException - 필드명 또는 필드치를 나타내는 값이 부정한 경우. 하등의 이유로써 기술자의 캐릭터 라인에 문제가 발생했을 경우, 이 예외가 throw 된다

JavaTM Platform
Standard Ed. 6

버그의 보고와 기능의 요청
한층 더 자세한 API 레퍼런스 및 개발자 문서에 대해서는,Java SE 개발자용 문서를 참조해 주세요. 개발자전용의 상세한 해설, 개념의 개요, 용어의 정의, 버그의 회피책, 및 코드 실례가 포함되어 있습니다.

Copyright 2006 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms . Documentation Redistribution Policy 도 참조해 주세요.