Author: muthulee
Date: Fri Jul 6 04:48:04 2007
New Revision: 553848
URL: http://svn.apache.org/viewvc?view=rev&rev=553848
Log:
Applying patch for Rampart-42 bug. Adding the new classes
Added:
webservices/rampart/trunk/java/modules/rampart-core/src/main/java/org/apache/rampart/policy/builders/SSLConfigBuilder.java
webservices/rampart/trunk/java/modules/rampart-core/src/main/java/org/apache/rampart/policy/model/SSLConfig.java
Added:
webservices/rampart/trunk/java/modules/rampart-core/src/main/java/org/apache/rampart/policy/builders/SSLConfigBuilder.java
URL:
http://svn.apache.org/viewvc/webservices/rampart/trunk/java/modules/rampart-core/src/main/java/org/apache/rampart/policy/builders/SSLConfigBuilder.java?view=auto&rev=553848
==============================================================================
---
webservices/rampart/trunk/java/modules/rampart-core/src/main/java/org/apache/rampart/policy/builders/SSLConfigBuilder.java
(added)
+++
webservices/rampart/trunk/java/modules/rampart-core/src/main/java/org/apache/rampart/policy/builders/SSLConfigBuilder.java
Fri Jul 6 04:48:04 2007
@@ -0,0 +1,71 @@
+/*
+ * 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.rampart.policy.builders;
+
+import java.io.File;
+import java.io.FileOutputStream;
+import java.io.PrintStream;
+import java.util.Iterator;
+import java.util.Properties;
+
+import javax.xml.namespace.QName;
+
+import org.apache.axiom.om.OMAttribute;
+import org.apache.axiom.om.OMElement;
+import org.apache.neethi.Assertion;
+import org.apache.neethi.AssertionBuilderFactory;
+import org.apache.neethi.builders.AssertionBuilder;
+import org.apache.rampart.policy.model.RampartConfig;
+import org.apache.rampart.policy.model.SSLConfig;
+
+public class SSLConfigBuilder implements AssertionBuilder {
+
+ public Assertion build(OMElement element, AssertionBuilderFactory factory)
+ throws IllegalArgumentException {
+
+ SSLConfig sslCofig = new SSLConfig();
+ Properties properties = new Properties();
+ OMElement childElement;
+ OMAttribute name;
+ String value;
+
+ for (Iterator iterator = element.getChildElements();
iterator.hasNext();) {
+
+ childElement = (OMElement) iterator.next();
+
+ QName prop = new QName(RampartConfig.NS, SSLConfig.PROPERTY_LN);
+
+ if (prop.equals(childElement.getQName())) {
+ name = childElement.getAttribute(new
QName(SSLConfig.PROPERTY_NAME_ATTR));
+ value = childElement.getText();
+
+ //setting the jsse properties to the vm
+ System.setProperty(name.getAttributeValue(), value);
+
+ properties.put(name.getAttributeValue(), value.trim());
+ }
+
+ }
+ sslCofig.setProp(properties);
+
+ return sslCofig;
+ }
+
+ public QName[] getKnownElements() {
+ return null;
+ }
+
+}
Added:
webservices/rampart/trunk/java/modules/rampart-core/src/main/java/org/apache/rampart/policy/model/SSLConfig.java
URL:
http://svn.apache.org/viewvc/webservices/rampart/trunk/java/modules/rampart-core/src/main/java/org/apache/rampart/policy/model/SSLConfig.java?view=auto&rev=553848
==============================================================================
---
webservices/rampart/trunk/java/modules/rampart-core/src/main/java/org/apache/rampart/policy/model/SSLConfig.java
(added)
+++
webservices/rampart/trunk/java/modules/rampart-core/src/main/java/org/apache/rampart/policy/model/SSLConfig.java
Fri Jul 6 04:48:04 2007
@@ -0,0 +1,75 @@
+package org.apache.rampart.policy.model;
+
+import java.util.Iterator;
+import java.util.Properties;
+
+import javax.xml.namespace.QName;
+import javax.xml.stream.XMLStreamException;
+import javax.xml.stream.XMLStreamWriter;
+
+import org.apache.neethi.Assertion;
+import org.apache.neethi.Constants;
+import org.apache.neethi.PolicyComponent;
+
+public class SSLConfig implements Assertion{
+ public final static String SSL_LN = RampartConfig.SSL_CONFIG;
+ public final static String PROPERTY_LN = "property";
+ public final static String PROPERTY_NAME_ATTR = "name";
+
+ private Properties prop;
+
+ public Properties getProp() {
+ return prop;
+ }
+ public void setProp(Properties prop) {
+ this.prop = prop;
+ }
+
+ public PolicyComponent normalize() {
+ // TODO TODO
+ throw new UnsupportedOperationException("TODO");
+ }
+
+ public QName getName() {
+ return new QName(RampartConfig.NS, SSL_LN);
+ }
+
+ public boolean isOptional() {
+ // TODO TODO
+ throw new UnsupportedOperationException("TODO");
+ }
+
+ public void serialize(XMLStreamWriter writer) throws XMLStreamException {
+ String prefix = writer.getPrefix(RampartConfig.NS);
+
+ if (prefix == null) {
+ prefix = RampartConfig.NS;
+ writer.setPrefix(prefix, RampartConfig.NS);
+ }
+
+ String key;
+ String value;
+
+ for (Iterator iterator = prop.keySet().iterator();
iterator.hasNext();) {
+ key = (String) iterator.next();
+ value = prop.getProperty(key);
+ writer.writeStartElement(RampartConfig.NS, PROPERTY_LN);
+
+ writer.writeAttribute("name", key);
+
+ writer.writeCharacters(value);
+ writer.writeEndElement();
+ }
+
+ writer.writeEndElement();
+ }
+
+ public short getType() {
+ return Constants.TYPE_ASSERTION;
+ }
+
+ public boolean equal(PolicyComponent policyComponent) {
+ throw new UnsupportedOperationException();
+ }
+
+}