|
JavaTM Platform Standard Ed. 6 |
|||||||||
앞의 클래스 다음의 클래스 | 프레임 있어 프레임 없음 | |||||||||
개요: 상자 | 필드 | 생성자 | 메소드 | 상세: 필드 | 생성자 | 메소드 |
java.lang.Objectjavax.xml.crypto.dsig.TransformService
public abstract class TransformService
변환 알고리즘 및 정규화 알고리즘용의 Service Provider Interface 입니다.
TransformService
의 각 인스턴스는, 특정의 변환 알고리즘 또는 정규화 알고리즘 및 XML 기구형을 지원합니다. TransformService
를 작성하려면 , static getInstance
메소드를 호출해, 목적의 알고리즘 URI 및 XML 기구형을 건네줍니다. 다음에 예를 나타냅니다.
TransformService ts = TransformService.getInstance(Transform.XPATH2, "DOM");
TransformService
구현은,Provider
기구를 사용해 등록 및 로드 됩니다. 각 TransformService
의 서비스 프로바이더 구현은, 지원하는 XML 기구형을 특정하는 MechanismType
서비스 속성을 포함할 필요가 있습니다. 속성이 지정되지 않는 경우,"DOM" 이라고 상정됩니다. 예를 들어, XPath Filter 2 Transform 및 DOM 기구를 지원하는 서비스 프로바이더는 Provider
서브 클래스에서 다음과 같이 지정됩니다.
put("TransformService. "+ Transform.XPATH2, "org.example.XPath2TransformService"); put("TransformService. "+ Transform.XPATH2 + " MechanismType", "DOM");DOM 기구형이 지원하는
TransformService
구현은, API 의 개요의 「DOM 기구 요건」섹션으로 정의되고 있는 DOM 상호 운용성의 요건에 따를 필요가 있습니다. 표준의 기구형의 리스트는, API 의 개요의 「서비스 프로바이더」섹션을 참조해 주세요.
TransformService
가 작성되면(자), 그것을 사용해 Transform
객체 또는 CanonicalizationMethod
객체를 처리할 수 있습니다. XML 형식안에 Transform
또는 CanonicalizationMethod
가 존재하는 경우 (예를 들어, 기존의 XMLSignature
을 검증할 때),init(XMLStructure, XMLCryptoContext)
메소드를 최초로 호출해 변환을 초기화해, 문서 문맥을 제공할 필요가 있습니다 (파라미터가 없는 경우에서도). 혹은,Transform
또는 CanonicalizationMethod
이 제로로부터 작성되는 경우,init(TransformParameterSpec)
메소드가 불려 가 변환이 파라미터 첨부로 초기화되어marshalParams
메소드가 불려 가 XML 에의 파라미터가 초기화되어 문서 문맥에서의 변환이 제공됩니다. 마지막으로,transform
메소드가 불려 가 변환을 실행합니다.
병행 액세스
이 클래스의 static 메소드는, thread 세이프인 것이 보증되고 있습니다. 이 클래스에서 정의되고 있는 static 메소드는, 악영향을 주는 일 없이, 복수 thread가 병행해 호출할 수가 있습니다.
그러나 이것은, 이 클래스에서 정의되고 있는 비 static 메소드에는 들어맞지 않습니다. 특정의 프로바이더로 특히 설명이 없는 한, 단일 TransformService
인스턴스에 병행해 액세스 할 필요가 있는 복수 thread는, thread간에 동기를 잡아, 필요에 따라서 잠그지 않으면 안됩니다. 다른 TransformService
인스턴스를 조작하는 복수 thread간으로는, 동기를 잡을 필요는 없습니다.
필드의 개요 |
---|
인터페이스 javax.xml.crypto.dsig. Transform 로부터 상속된 필드 |
---|
BASE64 , ENVELOPED , XPATH , XPATH2 , XSLT |
생성자 의 개요 | |
---|---|
protected |
TransformService ()
디폴트의 생성자 , 서브 클래스에 의한 호출용. |
메소드의 개요 | |
---|---|
String |
getAlgorithm ()
이 TransformService 가 지원하는 알고리즘의 URI 를 돌려줍니다. |
static TransformService |
getInstance (String algorithm,
String mechanismType)
지정된 알고리즘 URI (예: Transform.XPATH2 ) 및 기구형 (예: "DOM")을 지원하는 TransformService 를 돌려줍니다. |
static TransformService |
getInstance (String algorithm,
String mechanismType,
Provider provider)
지정한 프로바이더가 제공하는, 지정된 알고리즘 URI (예: Transform.XPATH2 ) 및 기구형 (예: "DOM")을 지원하는 TransformService 를 돌려줍니다. |
static TransformService |
getInstance (String algorithm,
String mechanismType,
String provider)
지정한 프로바이더가 제공하는, 지정된 알고리즘 URI (예: Transform.XPATH2 ) 및 기구형 (예: "DOM")을 지원하는 TransformService 를 돌려줍니다. |
String |
getMechanismType ()
이 TransformService 가 지원하는 기구형을 돌려줍니다. |
Provider |
getProvider ()
이 TransformService 의 프로바이더를 돌려줍니다. |
abstract void |
init (TransformParameterSpec params)
지정된 파라미터로 이 TransformService 를 초기화합니다. |
abstract void |
init (XMLStructure parent,
XMLCryptoContext context)
지정된 파라미터 및 문서 문맥으로 이 TransformService 를 초기화합니다. |
abstract void |
marshalParams (XMLStructure parent,
XMLCryptoContext context)
알고리즘 고유의 파라미터를 정렬화합니다. |
클래스 java.lang. Object 로부터 상속된 메소드 |
---|
clone , equals , finalize , getClass , hashCode , notify , notifyAll , toString , wait , wait , wait |
인터페이스 javax.xml.crypto.dsig. Transform 로부터 상속된 메소드 |
---|
getParameterSpec , transform , transform |
인터페이스 javax.xml.crypto. XMLStructure 로부터 상속된 메소드 |
---|
isFeatureSupported |
생성자 의 상세 |
---|
protected TransformService()
메소드의 상세 |
---|
public static TransformService getInstance(String algorithm, String mechanismType) throws NoSuchAlgorithmException
Transform.XPATH2
) 및 기구형 (예: "DOM")을 지원하는 TransformService
를 돌려줍니다.
이 메소드는 표준 JCA 프로바이더 검색 기구를 사용해, 목적의 알고리즘 및 MechanismType
서비스 속성의 TransformService
구현을 검출 및 인스턴스화합니다. 등록을 마친 시큐리티 Provider
의 리스트를, 최우선의 Provider
로부터 더듬습니다. 지정한 알고리즘 및 기구형을 지원하는 최초의 Provider
로부터의 새로운 TransformService
객체가 돌려주어집니다.
등록이 끝난 프로바이더의 리스트는,Security.getProviders()
메소드 경유로 취득할 수 있습니다.
algorithm
- 알고리즘의 URImechanismType
- XML 처리 기구 및 표현의
형
TransformService
NullPointerException
- algorithm
또는
mechanismType
가 null
의 경우
NoSuchAlgorithmException
- 지정한 알고리즘 및 기구형용의 TransformService
구현을 지원하는 Provider
하지만 없는 경우Provider
public static TransformService getInstance(String algorithm, String mechanismType, Provider provider) throws NoSuchAlgorithmException
Transform.XPATH2
) 및 기구형 (예: "DOM")을 지원하는 TransformService
를 돌려줍니다. 지정한 Provider
객체는, 프로바이더 리스트에 등록할 필요는 없습니다.
algorithm
- 알고리즘의 URImechanismType
- XML 처리 기구 및 표현의
형태provider
- Provider
객체
TransformService
NullPointerException
- provider
,
algorithm
, 또는 mechanismType
가
null 의 경우
NoSuchAlgorithmException
- 지정한 알고리즘 및 기구형용의 TransformService
구현이, 지정한 Provider
객체로부터
이용할 수 없는 경우Provider
public static TransformService getInstance(String algorithm, String mechanismType, String provider) throws NoSuchAlgorithmException , NoSuchProviderException
Transform.XPATH2
) 및 기구형 (예: "DOM")을 지원하는 TransformService
를 돌려줍니다. 지정한 프로바이더는, 시큐리티 프로바이더 리스트에 등록할 필요가 있습니다.
등록이 끝난 프로바이더의 리스트는,Security.getProviders()
메소드 경유로 취득할 수 있습니다.
algorithm
- 알고리즘의 URImechanismType
- XML 처리 기구 및 표현의
형태provider
- 프로바이더명의 캐릭터 라인명
TransformService
NoSuchProviderException
- 지정된 프로바이더가
시큐리티 프로바이더 리스트에 등록되지 않은 경우
NullPointerException
- provider
,
mechanismType
, 또는 algorithm
가
null 의 경우
NoSuchAlgorithmException
- 지정한 알고리즘 및 기구형용의 TransformService
구현이, 지정한 프로바이더로부터
이용할 수 없는 경우Provider
public final String getMechanismType()
TransformService
가 지원하는 기구형을 돌려줍니다.
public final String getAlgorithm()
TransformService
가 지원하는 알고리즘의 URI 를 돌려줍니다.
AlgorithmMethod
내의 getAlgorithm
public final Provider getProvider()
TransformService
의 프로바이더를 돌려줍니다.
public abstract void init(TransformParameterSpec params) throws InvalidAlgorithmParameterException
TransformService
를 초기화합니다.
XML 형식안에 파라미터가 존재하는 경우,init(XMLStructure, XMLCryptoContext)
메소드를 사용해 TransformService
를 초기화할 필요가 있습니다.
params
- 알고리즘 파라미터.
필수가 아닌 또는 생략 가능한 경우는 null
도 가능
InvalidAlgorithmParameterException
- 지정된 파라미터가
이 알고리즘에는 무효인 경우public abstract void marshalParams(XMLStructure parent, XMLCryptoContext context) throws MarshalException
parent
- 정렬화 된 파라미터가 추가된다
친노드를 포함하는, 기구 고유의 구조context
- 추가의 문맥을 포함하는 XMLCryptoContext
.
적용 불가의 경우는,null
도 가능
ClassCastException
- parent
의 형태 또는
context
가, 이 TransformService
와 호환성이 없는 경우
NullPointerException
- parent
가 null
의 경우
MarshalException
- 파라미터를 정렬화할 수 없는 경우public abstract void init(XMLStructure parent, XMLCryptoContext context) throws InvalidAlgorithmParameterException
TransformService
을 초기화합니다.
parent
- 친구조가 포함된다
기구 고유의 구조context
- 추가의 문맥을 포함하는 XMLCryptoContext
.
적용 불가의 경우는,null
도 가능
ClassCastException
- parent
의 형태 또는
context
가, 이 TransformService
와 호환성이 없는 경우
NullPointerException
- parent
가 null
의 경우
InvalidAlgorithmParameterException
- 지정된 파라미터가
이 알고리즘에는 무효인 경우
|
JavaTM Platform Standard Ed. 6 |
|||||||||
앞의 클래스 다음의 클래스 | 프레임 있어 프레임 없음 | |||||||||
개요: 상자 | 필드 | 생성자 | 메소드 | 상세: 필드 | 생성자 | 메소드 |
Copyright 2006 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms . Documentation Redistribution Policy 도 참조해 주세요.