本文整理汇总了Java中com.sun.xml.internal.ws.policy.Policy类的典型用法代码示例。如果您正苦于以下问题:Java Policy类的具体用法?Java Policy怎么用?Java Policy使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
Policy类属于com.sun.xml.internal.ws.policy包,在下文中一共展示了Policy类的9个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Java代码示例。
示例1: getAssertion
import com.sun.xml.internal.ws.policy.Policy; //导入依赖的package包/类
/**
* Return ManagementAssertion if one can be found in the policy map under
* the given service and port name.
*
* @param <T> The implementation class of the assertion.
* @param name The fully qualified name of the server or client assertion.
* @param policyMap The policy map. May be null.
* @param serviceName The WSDL service name. May not be null.
* @param portName The WSDL port name. May not be null.
* @param type The implementation class of the assertion.
* @return An instance of ManagementAssertion or null.
* @throws WebServiceException If computing the effective policy of the endpoint scope failed.
*/
protected static <T extends ManagementAssertion> T getAssertion(final QName name,
final PolicyMap policyMap, QName serviceName, QName portName, Class<T> type)
throws WebServiceException {
try {
PolicyAssertion assertion = null;
if (policyMap != null) {
final PolicyMapKey key = PolicyMap.createWsdlEndpointScopeKey(serviceName, portName);
final Policy policy = policyMap.getEndpointEffectivePolicy(key);
if (policy != null) {
final Iterator<AssertionSet> assertionSets = policy.iterator();
if (assertionSets.hasNext()) {
final AssertionSet assertionSet = assertionSets.next();
final Iterator<PolicyAssertion> assertions = assertionSet.get(name).iterator();
if (assertions.hasNext()) {
assertion = assertions.next();
}
}
}
}
return assertion == null ? null : assertion.getImplementation(type);
} catch (PolicyException ex) {
throw LOGGER.logSevereException(new WebServiceException(
ManagementMessages.WSM_1001_FAILED_ASSERTION(name), ex));
}
}
开发者ID:SunburstApps,项目名称:OpenJSharp,代码行数:39,代码来源:ManagementAssertion.java
示例2: processCharacters
import com.sun.xml.internal.ws.policy.Policy; //导入依赖的package包/类
private void processCharacters(final Characters chars, final StartElement currentElement, final Map<URI, Policy> map)
throws PolicyException {
if (chars.isWhiteSpace()) {
return;
}
else {
final String data = chars.getData();
if ((currentElement != null) && URI.equals(currentElement.getName())) {
processUri(chars, map);
return;
} else {
throw LOGGER.logSevereException(new PolicyException(LocalizationMessages.WSP_0092_CHARACTER_DATA_UNEXPECTED(currentElement, data, chars.getLocation())));
}
}
}
开发者ID:SunburstApps,项目名称:OpenJSharp,代码行数:17,代码来源:ExternalAttachmentsUnmarshaller.java
示例3: getPolicies
import com.sun.xml.internal.ws.policy.Policy; //导入依赖的package包/类
final Collection<Policy> getPolicies() throws PolicyException {
if (null == policyURIs) {
throw LOGGER.logSevereException(new PolicyException(PolicyMessages.WSP_1004_POLICY_URIS_CAN_NOT_BE_NULL()));
}
if (null == policyStore) {
throw LOGGER.logSevereException(new PolicyException(PolicyMessages.WSP_1010_NO_POLICIES_DEFINED()));
}
final Collection<Policy> result = new ArrayList<Policy>(policyURIs.size());
for (String policyURI : policyURIs) {
final PolicySourceModel sourceModel = policyStore.get(policyURI);
if (sourceModel == null) {
throw LOGGER.logSevereException(new PolicyException(PolicyMessages.WSP_1005_POLICY_REFERENCE_DOES_NOT_EXIST(policyURI)));
} else {
result.add(ModelTranslator.getTranslator().translate(sourceModel));
}
}
return result;
}
开发者ID:SunburstApps,项目名称:OpenJSharp,代码行数:22,代码来源:BuilderHandler.java
示例4: validateServerPolicyMap
import com.sun.xml.internal.ws.policy.Policy; //导入依赖的package包/类
/**
* Checks if the PolicyMap has only single alternative in the scope.
*
* @param policyMap
* PolicyMap that needs to be validated.
*/
private void validateServerPolicyMap(PolicyMap policyMap) {
try {
final ValidationProcessor validationProcessor = ValidationProcessor.getInstance();
for (Policy policy : policyMap) {
// TODO: here is a good place to check if the actual policy has only one alternative...
for (AssertionSet assertionSet : policy) {
for (PolicyAssertion assertion : assertionSet) {
Fitness validationResult = validationProcessor.validateServerSide(assertion);
if (validationResult != Fitness.SUPPORTED) {
throw new PolicyException(PolicyMessages.WSP_1015_SERVER_SIDE_ASSERTION_VALIDATION_FAILED(
assertion.getName(),
validationResult));
}
}
}
}
} catch (PolicyException e) {
throw new WebServiceException(e);
}
}
开发者ID:SunburstApps,项目名称:OpenJSharp,代码行数:30,代码来源:DefaultPolicyResolver.java
示例5: writePolicyOrReferenceIt
import com.sun.xml.internal.ws.policy.Policy; //导入依赖的package包/类
/**
* Adds a PolicyReference element that points to the policy of the element,
* if the policy does not have any id or name. Writes policy inside the element otherwise.
*
* @param subject
* PolicySubject to be referenced or marshalled
* @param writer
* A TXW on to which we shall add the PolicyReference
*/
private void writePolicyOrReferenceIt(final PolicySubject subject, final TypedXmlWriter writer) {
final Policy policy;
try {
policy = subject.getEffectivePolicy(merger);
} catch (PolicyException e) {
throw LOGGER.logSevereException(new WebServiceException(PolicyMessages.WSP_1011_FAILED_TO_RETRIEVE_EFFECTIVE_POLICY_FOR_SUBJECT(subject.toString()), e));
}
if (policy != null) {
if (null == policy.getIdOrName()) {
final PolicyModelGenerator generator = ModelGenerator.getGenerator();
try {
final PolicySourceModel policyInfoset = generator.translate(policy);
marshaller.marshal(policyInfoset, writer);
} catch (PolicyException pe) {
throw LOGGER.logSevereException(new WebServiceException(PolicyMessages.WSP_1002_UNABLE_TO_MARSHALL_POLICY_OR_POLICY_REFERENCE(), pe));
}
} else {
final TypedXmlWriter policyReference = writer._element(policy.getNamespaceVersion().asQName(XmlToken.PolicyReference), TypedXmlWriter.class);
policyReference._attribute(XmlToken.Uri.toString(), '#' + policy.getIdOrName());
}
}
}
开发者ID:SunburstApps,项目名称:OpenJSharp,代码行数:32,代码来源:PolicyWSDLGeneratorExtension.java
示例6: update
import com.sun.xml.internal.ws.policy.Policy; //导入依赖的package包/类
/**
* Generates an MTOM policy if MTOM is enabled.
*
* <ol>
* <li>If MTOM is enabled
* <ol>
* <li>If MTOM policy does not already exist, generate
* <li>Otherwise do nothing
* </ol>
* <li>Otherwise, do nothing (that implies that we do not remove any MTOM policies if MTOM is disabled)
* </ol>
*
*/
public Collection<PolicySubject> update(PolicyMap policyMap, SEIModel model, WSBinding wsBinding) throws PolicyException {
LOGGER.entering(policyMap, model, wsBinding);
Collection<PolicySubject> subjects = new ArrayList<PolicySubject>();
if (policyMap != null) {
final MTOMFeature mtomFeature = wsBinding.getFeature(MTOMFeature.class);
if (LOGGER.isLoggable(Level.FINEST)) {
LOGGER.finest("mtomFeature = " + mtomFeature);
}
if ((mtomFeature != null) && mtomFeature.isEnabled()) {
final QName bindingName = model.getBoundPortTypeName();
final WsdlBindingSubject wsdlSubject = WsdlBindingSubject.createBindingSubject(bindingName);
final Policy mtomPolicy = createMtomPolicy(bindingName);
final PolicySubject mtomPolicySubject = new PolicySubject(wsdlSubject, mtomPolicy);
subjects.add(mtomPolicySubject);
if (LOGGER.isLoggable(Level.FINEST)) {
LOGGER.fine("Added MTOM policy with ID \"" + mtomPolicy.getIdOrName() + "\" to binding element \"" + bindingName + "\"");
}
}
} // endif policy map not null
LOGGER.exiting(subjects);
return subjects;
}
开发者ID:SunburstApps,项目名称:OpenJSharp,代码行数:38,代码来源:MtomPolicyMapConfigurator.java
示例7: getFeatures
import com.sun.xml.internal.ws.policy.Policy; //导入依赖的package包/类
/**
* Process FastInfoset policy assertions.
*
* @param key Key to identify the endpoint scope.
* @param policyMap the policy map.
* @throws PolicyException If retrieving the policy triggered an exception.
*/
public Collection<WebServiceFeature> getFeatures(final PolicyMapKey key, final PolicyMap policyMap) throws PolicyException {
final Collection<WebServiceFeature> features = new LinkedList<WebServiceFeature>();
if ((key != null) && (policyMap != null)) {
Policy policy = policyMap.getEndpointEffectivePolicy(key);
if (null!=policy && policy.contains(OPTIMIZED_FI_SERIALIZATION_ASSERTION)) {
Iterator <AssertionSet> assertions = policy.iterator();
while(assertions.hasNext()){
AssertionSet assertionSet = assertions.next();
Iterator<PolicyAssertion> policyAssertion = assertionSet.iterator();
while(policyAssertion.hasNext()){
PolicyAssertion assertion = policyAssertion.next();
if(OPTIMIZED_FI_SERIALIZATION_ASSERTION.equals(assertion.getName())){
String value = assertion.getAttributeValue(enabled);
boolean isFastInfosetEnabled = Boolean.valueOf(value.trim());
features.add(new FastInfosetFeature(isFastInfosetEnabled));
} // end-if non optional fast infoset assertion found
} // next assertion
} // next alternative
} // end-if policy contains fast infoset assertion
}
return features;
}
开发者ID:SunburstApps,项目名称:OpenJSharp,代码行数:30,代码来源:FastInfosetFeatureConfigurator.java
示例8: getFeatures
import com.sun.xml.internal.ws.policy.Policy; //导入依赖的package包/类
/**
* process Mtom policy assertions and if found and is not optional then mtom is enabled on the
* {@link WSDLBoundPortType}
*
* @param key Key that identifies the endpoint scope
* @param policyMap Must be non-null
* @throws PolicyException If retrieving the policy triggered an exception
*/
public Collection<WebServiceFeature> getFeatures(PolicyMapKey key, PolicyMap policyMap) throws PolicyException {
final Collection<WebServiceFeature> features = new LinkedList<WebServiceFeature>();
if ((key != null) && (policyMap != null)) {
Policy policy = policyMap.getEndpointEffectivePolicy(key);
if (null!=policy && policy.contains(OPTIMIZED_MIME_SERIALIZATION_ASSERTION)) {
Iterator <AssertionSet> assertions = policy.iterator();
while(assertions.hasNext()){
AssertionSet assertionSet = assertions.next();
Iterator<PolicyAssertion> policyAssertion = assertionSet.iterator();
while(policyAssertion.hasNext()){
PolicyAssertion assertion = policyAssertion.next();
if(OPTIMIZED_MIME_SERIALIZATION_ASSERTION.equals(assertion.getName())){
features.add(new MTOMFeature(true));
} // end-if non optional mtom assertion found
} // next assertion
} // next alternative
} // end-if policy contains mtom assertion
}
return features;
}
开发者ID:SunburstApps,项目名称:OpenJSharp,代码行数:29,代码来源:MtomFeatureConfigurator.java
示例9: getFeatures
import com.sun.xml.internal.ws.policy.Policy; //导入依赖的package包/类
/**
* Process SelectOptimalEncoding policy assertions.
*
* @param key Key that identifies the endpoint scope.
* @param policyMap The policy map.
* @throws PolicyException If retrieving the policy triggered an exception.
*/
public Collection<WebServiceFeature> getFeatures(PolicyMapKey key, PolicyMap policyMap) throws PolicyException {
final Collection<WebServiceFeature> features = new LinkedList<WebServiceFeature>();
if ((key != null) && (policyMap != null)) {
Policy policy = policyMap.getEndpointEffectivePolicy(key);
if (null!=policy && policy.contains(SELECT_OPTIMAL_ENCODING_ASSERTION)) {
Iterator <AssertionSet> assertions = policy.iterator();
while(assertions.hasNext()){
AssertionSet assertionSet = assertions.next();
Iterator<PolicyAssertion> policyAssertion = assertionSet.iterator();
while(policyAssertion.hasNext()){
PolicyAssertion assertion = policyAssertion.next();
if(SELECT_OPTIMAL_ENCODING_ASSERTION.equals(assertion.getName())){
String value = assertion.getAttributeValue(enabled);
boolean isSelectOptimalEncodingEnabled = value == null || Boolean.valueOf(value.trim());
features.add(new SelectOptimalEncodingFeature(isSelectOptimalEncodingEnabled));
}
}
}
}
}
return features;
}
开发者ID:SunburstApps,项目名称:OpenJSharp,代码行数:30,代码来源:SelectOptimalEncodingFeatureConfigurator.java
注:本文中的com.sun.xml.internal.ws.policy.Policy类示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论