You are viewing a plain text version of this content. The canonical link for it is here.
Posted to axis-cvs@ws.apache.org by ru...@apache.org on 2006/09/06 18:28:22 UTC
svn commit: r440771 - in /webservices/axis2/trunk/java/modules/secpolicy:
src/META-INF/services/ src/org/apache/ws/secpolicy/
src/org/apache/ws/secpolicy/builders/ test/org/apache/ws/secpolicy/model/
Author: ruchithf
Date: Wed Sep 6 09:28:21 2006
New Revision: 440771
URL: http://svn.apache.org/viewvc?view=rev&rev=440771
Log:
Added the IssuedToken builder
Added:
webservices/axis2/trunk/java/modules/secpolicy/src/org/apache/ws/secpolicy/builders/IssuedTokenBuilder.java
Modified:
webservices/axis2/trunk/java/modules/secpolicy/src/META-INF/services/org.apache.neethi.builders.AssertionBuilder
webservices/axis2/trunk/java/modules/secpolicy/src/org/apache/ws/secpolicy/Constants.java
webservices/axis2/trunk/java/modules/secpolicy/test/org/apache/ws/secpolicy/model/SecpolicyModelTest.java
Modified: webservices/axis2/trunk/java/modules/secpolicy/src/META-INF/services/org.apache.neethi.builders.AssertionBuilder
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/secpolicy/src/META-INF/services/org.apache.neethi.builders.AssertionBuilder?view=diff&rev=440771&r1=440770&r2=440771
==============================================================================
--- webservices/axis2/trunk/java/modules/secpolicy/src/META-INF/services/org.apache.neethi.builders.AssertionBuilder (original)
+++ webservices/axis2/trunk/java/modules/secpolicy/src/META-INF/services/org.apache.neethi.builders.AssertionBuilder Wed Sep 6 09:28:21 2006
@@ -18,4 +18,5 @@
org.apache.ws.secpolicy.builders.Trust10Builder
org.apache.ws.secpolicy.builders.SecurityContextTokenBuilder
org.apache.ws.secpolicy.builders.SecureConversationTokenBuilder
-org.apache.ws.secpolicy.builders.SymmetricBindingBuilder
\ No newline at end of file
+org.apache.ws.secpolicy.builders.SymmetricBindingBuilder
+org.apache.ws.secpolicy.builders.IssuedTokenBuilder
\ No newline at end of file
Modified: webservices/axis2/trunk/java/modules/secpolicy/src/org/apache/ws/secpolicy/Constants.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/secpolicy/src/org/apache/ws/secpolicy/Constants.java?view=diff&rev=440771&r1=440770&r2=440771
==============================================================================
--- webservices/axis2/trunk/java/modules/secpolicy/src/org/apache/ws/secpolicy/Constants.java (original)
+++ webservices/axis2/trunk/java/modules/secpolicy/src/org/apache/ws/secpolicy/Constants.java Wed Sep 6 09:28:21 2006
@@ -278,7 +278,15 @@
public static final QName REQUIRE_EXTERNAL_URI_REFERNCE = new QName(Constants.SP_NS, "RequireExternalUriReference");
+ public static final QName REQUIRE_EXTERNAL_REFERNCE = new QName(Constants.SP_NS, "RequireExternalReference");
+
+ public static final QName REQUIRE_INTERNAL_REFERNCE = new QName(Constants.SP_NS, "RequireInternalReference");
+
+ public static final QName REQUEST_SECURITY_TOKEN_TEMPLATE = new QName(Constants.SP_NS, "RequestSecurityTokenTemplate");
+
public static final QName SC10_SECURITY_CONTEXT_TOKEN = new QName(Constants.SP_NS, "SC10SecurityContextToken");
public static final QName BOOTSTRAP_POLICY = new QName(Constants.SP_NS, "BootstrapPolicy");
+
+ public static final QName RST_TEMPLATE = new QName(Constants.SP_NS, "RequestSecurityTokenTemplate");
}
Added: webservices/axis2/trunk/java/modules/secpolicy/src/org/apache/ws/secpolicy/builders/IssuedTokenBuilder.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/secpolicy/src/org/apache/ws/secpolicy/builders/IssuedTokenBuilder.java?view=auto&rev=440771
==============================================================================
--- webservices/axis2/trunk/java/modules/secpolicy/src/org/apache/ws/secpolicy/builders/IssuedTokenBuilder.java (added)
+++ webservices/axis2/trunk/java/modules/secpolicy/src/org/apache/ws/secpolicy/builders/IssuedTokenBuilder.java Wed Sep 6 09:28:21 2006
@@ -0,0 +1,82 @@
+/*
+ * Copyright 2001-2004 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.ws.secpolicy.builders;
+
+import org.apache.axiom.om.OMElement;
+import org.apache.neethi.Assertion;
+import org.apache.neethi.AssertionBuilderFactory;
+import org.apache.neethi.Policy;
+import org.apache.neethi.PolicyEngine;
+import org.apache.neethi.builders.AssertionBuilder;
+import org.apache.ws.secpolicy.Constants;
+import org.apache.ws.secpolicy.model.IssuedToken;
+
+import javax.xml.namespace.QName;
+
+import java.util.Iterator;
+import java.util.List;
+
+public class IssuedTokenBuilder implements AssertionBuilder {
+
+ public Assertion build(OMElement element, AssertionBuilderFactory factory) throws IllegalArgumentException {
+ IssuedToken issuedToken = new IssuedToken();
+
+ //Extract Issuer
+ OMElement issuerElem = element.getFirstChildWithName(Constants.ISSUER);
+ if(issuerElem != null && issuerElem.getFirstElement() != null) {
+ issuedToken.setIssuerEpr(issuerElem.getFirstElement());
+ }
+
+ //Extract RSTTemplate
+ OMElement rstTmplElem = element.getFirstChildWithName(Constants.ISSUER);
+ if(rstTmplElem != null) {
+ issuedToken.setIssuerEpr(rstTmplElem);
+ }
+
+ Policy policy = PolicyEngine.getPolicy(element);
+ policy = (Policy) policy.normalize(false);
+
+ for (Iterator iterator = policy.getAlternatives(); iterator.hasNext();) {
+ processAlternative((List) iterator.next(), issuedToken);
+ break; // since there should be only one alternative ..
+ }
+
+ return issuedToken;
+ }
+
+ public QName[] getKnownElements() {
+ return new QName[] {Constants.ISSUED_TOKEN};
+ }
+
+ private void processAlternative(List assertions, IssuedToken parent) {
+ Assertion assertion;
+ QName name;
+
+ for (Iterator iterator = assertions.iterator(); iterator.hasNext();) {
+ assertion = (Assertion) iterator.next();
+ name = (QName) assertion.getName();
+
+ if (Constants.REQUIRE_DERIVED_KEYS.equals(name)) {
+ parent.setDerivedKeys(true);
+ } else if(Constants.REQUIRE_EXTERNAL_REFERNCE.equals(name)) {
+ parent.setRequireExternalReference(true);
+ } else if(Constants.REQUIRE_INTERNAL_REFERNCE.equals(name)) {
+ parent.setRequireInternalReference(true);
+ }
+ }
+
+ }
+}
Modified: webservices/axis2/trunk/java/modules/secpolicy/test/org/apache/ws/secpolicy/model/SecpolicyModelTest.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/secpolicy/test/org/apache/ws/secpolicy/model/SecpolicyModelTest.java?view=diff&rev=440771&r1=440770&r2=440771
==============================================================================
--- webservices/axis2/trunk/java/modules/secpolicy/test/org/apache/ws/secpolicy/model/SecpolicyModelTest.java (original)
+++ webservices/axis2/trunk/java/modules/secpolicy/test/org/apache/ws/secpolicy/model/SecpolicyModelTest.java Wed Sep 6 09:28:21 2006
@@ -40,7 +40,6 @@
for (Iterator iter = assertions.iterator(); iter.hasNext();) {
Assertion assertion = (Assertion) iter.next();
- System.out.println(assertion.getClass());
if(assertion instanceof SymmetricBinding) {
symmBindingFound = true;
SymmetricBinding binding = (SymmetricBinding)assertion;
---------------------------------------------------------------------
To unsubscribe, e-mail: axis-cvs-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-cvs-help@ws.apache.org