FileDocCategorySizeDatePackage
WSTrustElementFactory.javaAPI DocExample16634Tue May 29 16:56:54 BST 2007com.sun.xml.ws.security.trust

WSTrustElementFactory

public abstract class WSTrustElementFactory extends Object
A Factory for creating the WS-Trust schema elements, and marshalling/un-marshalling them

The default Implementation classes for all these WS-Trust schema Elements would assume that JAXB Bindings were generated for ws-trust.xsd schema in a particular fixed namespace/package. The default implementation classes for all these WS-Trust Element Interfaces would hence wrap the schema generated classes.

An STS Service can create a RequestSecurityToken from the JAXBBean(i.e RequestSecurityTokenType) it receives, as an SEI method parameter, in the following manner

RequestSecurityTokenType tok=...//obtained as JAXWS SEI method paramater
ObjectFactory factory = new ObjectFactory();
JAXBElement<RequestSecurityTokenType> rst= factory.createRequestSecurityToken(tok);
WSTrustElementFactory fact= ..
RequestSecurityToken requestSecurityToken= fact.createRSTFrom(rst);

To get back a JAXB Bean from an instance of RequestSecurityToken the following can be done

JAXBElement<RequestSecurityTokenType> elem = fact.toJAXBElement(requestSecurityToken);
RequestSecurityTokenType tok = elem.getValue();

author
Kumar Jayanti

Fields Summary
private static JAXBContext
jaxbContext
private static WSTrustElementFactory
trustElemFactory
Constructors Summary
Methods Summary
public abstract com.sun.xml.ws.security.trust.elements.BinarySecretcreateBinarySecret(org.w3c.dom.Element elem)
Create a BinarySecret

public abstract com.sun.xml.ws.security.trust.elements.BinarySecretcreateBinarySecret(byte[] rawValue, java.lang.String type)
Create a BinarySecret

public abstract com.sun.xml.ws.security.trust.elements.CancelTargetcreateCancelTarget(com.sun.xml.ws.security.trust.elements.str.SecurityTokenReference str)

public abstract com.sun.xml.ws.security.trust.elements.str.DirectReferencecreateDirectReference(java.lang.String valueType, java.lang.String uri)

public abstract com.sun.xml.ws.security.trust.elements.EntropycreateEntropy(com.sun.xml.ws.security.trust.elements.BinarySecret secret)
Create an Entropy with a BinarySecret

public abstract com.sun.xml.ws.security.trust.elements.EntropycreateEntropy(com.sun.xml.ws.security.EncryptedKey key)
Create an Entropy with an xenc:EncryptedKey

public abstract com.sun.xml.ws.security.trust.elements.IssuedTokenscreateIssuedTokens(com.sun.xml.ws.security.trust.elements.RequestSecurityTokenResponseCollection issuedTokens)
Create a wst:IssuedTokens object

public abstract com.sun.xml.ws.security.trust.elements.str.KeyIdentifiercreateKeyIdentifier(java.lang.String valueType, java.lang.String encodingType)

public abstract com.sun.xml.ws.security.trust.elements.LifetimecreateLifetime(com.sun.xml.ws.security.wsu10.AttributedDateTime created, com.sun.xml.ws.security.wsu10.AttributedDateTime expires)
Create a Lifetime.

public abstract com.sun.xml.ws.security.trust.elements.RequestSecurityTokencreateRST()
Create an Empty RST

public abstract com.sun.xml.ws.security.trust.elements.RequestSecurityTokencreateRSTForCancel(java.net.URI requestType, com.sun.xml.ws.security.trust.elements.CancelTarget target)
Create an RST for Token Cancellation

public abstract com.sun.xml.ws.security.trust.elements.RequestSecurityTokencreateRSTForIssue(java.net.URI tokenType, java.net.URI requestType, java.net.URI context, com.sun.xml.ws.policy.impl.bindings.AppliesTo scopes, com.sun.xml.ws.api.security.trust.Claims claims, com.sun.xml.ws.security.trust.elements.Entropy entropy, com.sun.xml.ws.security.trust.elements.Lifetime lifetime)
Create an RST for Issue from the given arguments Any of the arguments can be null since they are all optional, but one of tokenType and AppliesTo must be present

public abstract com.sun.xml.ws.security.trust.elements.RequestSecurityTokencreateRSTForRenew(java.net.URI tokenType, java.net.URI requestType, java.net.URI context, com.sun.xml.ws.security.trust.elements.RenewTarget target, com.sun.xml.ws.security.trust.elements.AllowPostdating apd, com.sun.xml.ws.security.trust.elements.Renewing renewingInfo)
Create an RST for a Renewal Request

public abstract com.sun.xml.ws.security.trust.elements.RequestSecurityTokencreateRSTForValidate(java.net.URI tokenType, java.net.URI requestType)
Create an RST for Token Validation

TODO: Not clear from Spec whether the Token to be validated is ever sent ? TODO: There is a mention of special case where a SOAPEnvelope may be specified as a security token if the requestor desires the envelope to be validated.

public abstract com.sun.xml.ws.security.trust.elements.RequestSecurityTokencreateRSTFrom(javax.xml.transform.Source src)
create an RST from a Source

public abstract com.sun.xml.ws.security.trust.elements.RequestSecurityTokencreateRSTFrom(org.w3c.dom.Element elem)
create an RST from DOM Element

public abstract com.sun.xml.ws.security.trust.elements.RequestSecurityTokencreateRSTFrom(javax.xml.bind.JAXBElement elem)
create an RST from JAXBElement

NOTE: an STS Implementor can call

JAXBElement<RequestSecurityTokenType> elem=
ObjectFactory.createRequestSecurityToken(<JAXBBean for RST>)
The JAXBBean for RST is the one generated from the ws-trust.xsd schema The default implementation expects the packagename of the generated JAXB Beans to be fixed.

public abstract com.sun.xml.ws.security.trust.elements.RequestSecurityTokenResponsecreateRSTR()
Create an Empty RSTR

public abstract com.sun.xml.ws.security.trust.elements.RequestSecurityTokenResponseCollectioncreateRSTRCollectionForIssue(java.net.URI tokenType, java.net.URI context, com.sun.xml.ws.security.trust.elements.RequestedSecurityToken token, com.sun.xml.ws.policy.impl.bindings.AppliesTo scopes, com.sun.xml.ws.security.trust.elements.RequestedAttachedReference attachedRef, com.sun.xml.ws.security.trust.elements.RequestedUnattachedReference unattachedRef, com.sun.xml.ws.security.trust.elements.RequestedProofToken proofToken, com.sun.xml.ws.security.trust.elements.Entropy entropy, com.sun.xml.ws.security.trust.elements.Lifetime lifetime)
Create a collection of RequestSecurityTokenResponse(s)

public abstract com.sun.xml.ws.security.trust.elements.RequestSecurityTokenResponseCollectioncreateRSTRCollectionFrom(javax.xml.transform.Source src)
Create RSTR Collection from Source

public abstract com.sun.xml.ws.security.trust.elements.RequestSecurityTokenResponseCollectioncreateRSTRCollectionFrom(org.w3c.dom.Element elem)
Create RSTR Collection from Element

public abstract com.sun.xml.ws.security.trust.elements.RequestSecurityTokenResponseCollectioncreateRSTRCollectionFrom(javax.xml.bind.JAXBElement elem)
create an RSTR Collection from JAXBElement

NOTE: an STS Implementor can call

JAXBElement<RequestSecurityTokenResponseCollectionType> elem=
ObjectFactory.createRequestSecurityTokenResponseCollection(<JAXBBean for RSTR Collection>
The <JAXBBean for RSTR Collection> is the one generated from the ws-trust.xsd schema The default implementation expects the packagename of the generated JAXB Beans to be fixed.

public abstract com.sun.xml.ws.security.trust.elements.RequestSecurityTokenResponsecreateRSTRForCancel()
Create an RSTR for a Successful Token Cancellation

public abstract com.sun.xml.ws.security.trust.elements.RequestSecurityTokenResponsecreateRSTRForIssue(java.net.URI tokenType, java.net.URI context, com.sun.xml.ws.security.trust.elements.RequestedSecurityToken token, com.sun.xml.ws.policy.impl.bindings.AppliesTo scopes, com.sun.xml.ws.security.trust.elements.RequestedAttachedReference attachedRef, com.sun.xml.ws.security.trust.elements.RequestedUnattachedReference unattachedRef, com.sun.xml.ws.security.trust.elements.RequestedProofToken proofToken, com.sun.xml.ws.security.trust.elements.Entropy entropy, com.sun.xml.ws.security.trust.elements.Lifetime lifetime)
create an RSTR for Issue from the given arguments Any of the arguments can be null since they are all optional, but one of RequestedSecurityToken or RequestedProofToken should be returned

public abstract com.sun.xml.ws.security.trust.elements.RequestSecurityTokenResponsecreateRSTRForValidate(java.net.URI tokenType, com.sun.xml.ws.security.trust.elements.RequestedSecurityToken token, com.sun.xml.ws.security.trust.elements.Status status)
create an RSTR for validate request.

public abstract com.sun.xml.ws.security.trust.elements.RequestSecurityTokenResponsecreateRSTRFrom(javax.xml.transform.Source src)
create an RSTR from a Source

public abstract com.sun.xml.ws.security.trust.elements.RequestSecurityTokenResponsecreateRSTRFrom(org.w3c.dom.Element elem)
create an RSTR from DOM Element

public abstract com.sun.xml.ws.security.trust.elements.RequestSecurityTokenResponsecreateRSTRFrom(javax.xml.bind.JAXBElement elem)
create an RSTR from JAXBElement

NOTE: an STS Implementor can call

JAXBElement<RequestSecurityTokenResponseType> elem=
ObjectFactory.createRequestSecurityTokenResponse(<JAXBBean for RSTR>);
The <JAXBBean for RSTR> is the one generated from the ws-trust.xsd schema The default implementation expects the packagename of the generated JAXB Beans to be fixed.

public abstract com.sun.xml.ws.security.trust.elements.RequestedAttachedReferencecreateRequestedAttachedReference(com.sun.xml.ws.security.trust.elements.str.SecurityTokenReference str)
Create a RequestedAttachedReference.

public abstract com.sun.xml.ws.security.trust.elements.RequestedProofTokencreateRequestedProofToken()
Create a RequestedProofToken.

public abstract com.sun.xml.ws.security.trust.elements.RequestedSecurityTokencreateRequestedSecurityToken(com.sun.xml.ws.security.Token token)
Create a RequestedSecurityToken.

public abstract com.sun.xml.ws.security.trust.elements.RequestedSecurityTokencreateRequestedSecurityToken()

public abstract com.sun.xml.ws.security.trust.elements.RequestedUnattachedReferencecreateRequestedUnattachedReference(com.sun.xml.ws.security.trust.elements.str.SecurityTokenReference str)
Create a RequestedUnattachedReference.

public abstract com.sun.xml.ws.security.trust.elements.str.SecurityTokenReferencecreateSecurityTokenReference(com.sun.xml.ws.security.trust.elements.str.Reference ref)

public abstract com.sun.xml.ws.security.trust.elements.str.SecurityTokenReferencecreateSecurityTokenReference(javax.xml.bind.JAXBElement elem)

public static javax.xml.bind.JAXBContextgetContext()


        
        return jaxbContext;
    
public static com.sun.xml.ws.security.trust.WSTrustElementFactorynewInstance()

        return trustElemFactory;
    
public abstract org.w3c.dom.ElementtoElement(com.sun.xml.ws.security.trust.elements.RequestSecurityToken rst)
Marshal an RST to a DOM Element.

Note: Useful for Dispatch Client implementations

public abstract org.w3c.dom.ElementtoElement(com.sun.xml.ws.security.trust.elements.RequestSecurityTokenResponse rstr)
Marshal an RSTR to DOM Element

Note: Useful for STS implementations which are JAXWS Providers

public abstract org.w3c.dom.ElementtoElement(com.sun.xml.ws.security.trust.elements.RequestSecurityTokenResponse rstr, org.w3c.dom.Document doc)

public abstract org.w3c.dom.ElementtoElement(com.sun.xml.ws.security.trust.elements.RequestSecurityTokenResponseCollection rstrCollection)
Marshal an RSTR Collection to a DOM Element

Note: Useful for STS implementations which are JAXWS Providers

public abstract org.w3c.dom.ElementtoElement(com.sun.xml.ws.security.trust.elements.BinarySecret binarySecret)
Marshal an BinarySecret to a DOM Element

Note: Useful for STS implementations which are JAXWS Providers

public abstract org.w3c.dom.ElementtoElement(com.sun.xml.ws.security.trust.elements.str.SecurityTokenReference str, org.w3c.dom.Document doc)
Marshal an STR to a DOM Element.

Note: Useful for Dispatch Client implementations

public abstract org.w3c.dom.ElementtoElement(com.sun.xml.ws.security.trust.elements.BinarySecret binarySecret, org.w3c.dom.Document doc)
Marshal an BinarySecret to a DOM Element.

Note: Useful for Dispatch Client implementations

public abstract javax.xml.bind.JAXBElementtoJAXBElement(com.sun.xml.ws.security.trust.elements.str.SecurityTokenReference str)
convert an SecurityTokenReference to a JAXBElement

public abstract javax.xml.bind.JAXBElementtoJAXBElement(com.sun.xml.ws.security.trust.elements.RequestSecurityToken rst)
convert an RST to a JAXBElement

public abstract javax.xml.bind.JAXBElementtoJAXBElement(com.sun.xml.ws.security.trust.elements.RequestSecurityTokenResponse rstr)
convert an RSTR to a JAXBElement

public abstract javax.xml.bind.JAXBElementtoJAXBElement(com.sun.xml.ws.security.trust.elements.RequestSecurityTokenResponseCollection rstrCollection)
convert an RSTR Collection to a JAXBElement

public abstract javax.xml.transform.SourcetoSource(com.sun.xml.ws.security.trust.elements.RequestSecurityToken rst)
Marshal an RST to a Source.

Note: Useful for Dispatch Client implementations

public abstract javax.xml.transform.SourcetoSource(com.sun.xml.ws.security.trust.elements.RequestSecurityTokenResponse rstr)
Marshal an RSTR to a Source

Note: Useful for STS implementations which are JAXWS Providers

public abstract javax.xml.transform.SourcetoSource(com.sun.xml.ws.security.trust.elements.RequestSecurityTokenResponseCollection rstrCollection)
Marshal an RSTR Collection to a Source

Note: Useful for STS implementations which are JAXWS Providers