public PolicyComponent normalize() {
return this;
}
public Policy getPolicy() {
Policy p = new Policy();
ExactlyOne ea = new ExactlyOne();
p.addPolicyComponent(ea);
All all = new All();
/*
asymmetricBinding.setAlgorithmSuite(algorithmSuite);
asymmetricBinding.setProtectionOrder(getProtectionOrder());
asymmetricBinding.setSignatureProtection(isSignatureProtection());
asymmetricBinding.setSignedEndorsingSupportingTokens(getSignedEndorsingSupportingTokens());
asymmetricBinding.setTokenProtection(isTokenProtection());
*/
if (getInitiatorToken() != null) {
all.addPolicyComponent(getInitiatorToken());
}
if (getInitiatorSignatureToken() != null) {
all.addPolicyComponent(getInitiatorSignatureToken());
}
if (getInitiatorEncryptionToken() != null) {
all.addPolicyComponent(getInitiatorEncryptionToken());
}
if (getRecipientToken() != null) {
all.addPolicyComponent(getRecipientToken());
}
if (getRecipientSignatureToken() != null) {
all.addPolicyComponent(getRecipientSignatureToken());
}
if (getRecipientEncryptionToken() != null) {
all.addPolicyComponent(getRecipientEncryptionToken());
}
/*
if (isEntireHeadersAndBodySignatures()) {
all.addPolicyComponent(new PrimitiveAssertion(SP12Constants.ONLY_SIGN_ENTIRE_HEADERS_AND_BODY));
}
*/
if (isIncludeTimestamp()) {
all.addPolicyComponent(SP12Constants.INCLUDE_TIMESTAMP_ASSERTION);
}
if (getLayout() != null) {
all.addPolicyComponent(getLayout());
}
ea.addPolicyComponent(all);
Policy pc = p.normalize(builder.getPolicyRegistry(), true);
if (pc != null) {
return pc;
} else {
return new Policy();