cxf git commit: [CXF-6726] Some non-primitive properties are lost during WADL generation, patch from Pengling Qian applied, This closes #56

2015-03-05 Thread sergeyb
Repository: cxf
Updated Branches:
  refs/heads/master e8e27511f - 68447ebae


[CXF-6726] Some non-primitive properties are lost during WADL generation, patch 
from Pengling Qian applied, This closes #56


Project: http://git-wip-us.apache.org/repos/asf/cxf/repo
Commit: http://git-wip-us.apache.org/repos/asf/cxf/commit/68447eba
Tree: http://git-wip-us.apache.org/repos/asf/cxf/tree/68447eba
Diff: http://git-wip-us.apache.org/repos/asf/cxf/diff/68447eba

Branch: refs/heads/master
Commit: 68447ebae1043993ca2bc051b07b1a348bfefeee
Parents: e8e2751
Author: Sergey Beryozkin sberyoz...@talend.com
Authored: Thu Mar 5 23:02:08 2015 +
Committer: Sergey Beryozkin sberyoz...@talend.com
Committed: Thu Mar 5 23:02:08 2015 +

--
 .../main/java/org/apache/cxf/jaxrs/model/wadl/WadlGenerator.java | 2 ++
 .../src/test/java/org/apache/cxf/jaxrs/model/wadl/BookStore.java | 4 
 .../java/org/apache/cxf/jaxrs/model/wadl/WadlGeneratorTest.java  | 3 ++-
 3 files changed, 8 insertions(+), 1 deletion(-)
--


http://git-wip-us.apache.org/repos/asf/cxf/blob/68447eba/rt/rs/description/src/main/java/org/apache/cxf/jaxrs/model/wadl/WadlGenerator.java
--
diff --git 
a/rt/rs/description/src/main/java/org/apache/cxf/jaxrs/model/wadl/WadlGenerator.java
 
b/rt/rs/description/src/main/java/org/apache/cxf/jaxrs/model/wadl/WadlGenerator.java
index 2d02e42..cc0fcc4 100644
--- 
a/rt/rs/description/src/main/java/org/apache/cxf/jaxrs/model/wadl/WadlGenerator.java
+++ 
b/rt/rs/description/src/main/java/org/apache/cxf/jaxrs/model/wadl/WadlGenerator.java
@@ -779,6 +779,7 @@ public class WadlGenerator implements 
ContainerRequestFilter {
 ListClass? parentBeanClasses = new LinkedListClass?();
 parentBeanClasses.add(type);
 doWriteBeanParam(ori, sb, type, pm, null, parentBeanClasses, 
isJson);
+parentBeanClasses.remove(type);
 } 
 }
 private void doWriteJaxrsBeanParams(StringBuilder sb, 
@@ -851,6 +852,7 @@ public class WadlGenerator implements 
ContainerRequestFilter {
 } else if (!parentBeanClasses.contains(paramCls)) {
 parentBeanClasses.add(paramCls);
 doWriteBeanParam(ori, sb, paramCls, entry.getKey(), name, 
parentBeanClasses, isJson);
+parentBeanClasses.remove(paramCls);
 }
 }
 }

http://git-wip-us.apache.org/repos/asf/cxf/blob/68447eba/rt/rs/description/src/test/java/org/apache/cxf/jaxrs/model/wadl/BookStore.java
--
diff --git 
a/rt/rs/description/src/test/java/org/apache/cxf/jaxrs/model/wadl/BookStore.java
 
b/rt/rs/description/src/test/java/org/apache/cxf/jaxrs/model/wadl/BookStore.java
index 8ff129e..46d26c2 100644
--- 
a/rt/rs/description/src/test/java/org/apache/cxf/jaxrs/model/wadl/BookStore.java
+++ 
b/rt/rs/description/src/test/java/org/apache/cxf/jaxrs/model/wadl/BookStore.java
@@ -236,6 +236,10 @@ public class BookStore implements BookDescription {
 public QueryBean3 getD() {
 return bean;
 }
+
+public QueryBean3 getD2() {
+return bean;
+}
 
 public QueryBean2 getIt() {
 return this;

http://git-wip-us.apache.org/repos/asf/cxf/blob/68447eba/rt/rs/description/src/test/java/org/apache/cxf/jaxrs/model/wadl/WadlGeneratorTest.java
--
diff --git 
a/rt/rs/description/src/test/java/org/apache/cxf/jaxrs/model/wadl/WadlGeneratorTest.java
 
b/rt/rs/description/src/test/java/org/apache/cxf/jaxrs/model/wadl/WadlGeneratorTest.java
index 82c766f..75ca099 100644
--- 
a/rt/rs/description/src/test/java/org/apache/cxf/jaxrs/model/wadl/WadlGeneratorTest.java
+++ 
b/rt/rs/description/src/test/java/org/apache/cxf/jaxrs/model/wadl/WadlGeneratorTest.java
@@ -590,12 +590,13 @@ public class WadlGeneratorTest extends Assert {
 ListElement requestEls = getElements(methodEl, request, 1);
 
 // 6 parameters are expected
-verifyParameters(requestEls.get(0), 6,
+verifyParameters(requestEls.get(0), 7,
  new Param(b, query, xs:int),
  new Param(aProp, query, xs:int),
  new Param(c.a, query, xs:int),
  new Param(c.b, query, xs:int),
  new Param(c.d.a, query, xs:boolean),
+ new Param(c.d2.a, query, xs:boolean),
  new Param(e, query, xs:string, 
Collections.singleton(A)));
 
 assertEquals(0, DOMUtils.getChildrenWithName(requestEls.get(0), 



cxf git commit: [CXF-6726] Some non-primitive properties are lost during WADL generation, patch from Pengling Qian applied, This closes #56

2015-03-05 Thread sergeyb
Repository: cxf
Updated Branches:
  refs/heads/3.0.x-fixes 4b471d869 - d9fb07300


[CXF-6726] Some non-primitive properties are lost during WADL generation, patch 
from Pengling Qian applied, This closes #56


Project: http://git-wip-us.apache.org/repos/asf/cxf/repo
Commit: http://git-wip-us.apache.org/repos/asf/cxf/commit/d9fb0730
Tree: http://git-wip-us.apache.org/repos/asf/cxf/tree/d9fb0730
Diff: http://git-wip-us.apache.org/repos/asf/cxf/diff/d9fb0730

Branch: refs/heads/3.0.x-fixes
Commit: d9fb07300ceaa25dca26edb80ff90265a358a189
Parents: 4b471d8
Author: Sergey Beryozkin sberyoz...@talend.com
Authored: Thu Mar 5 23:02:08 2015 +
Committer: Sergey Beryozkin sberyoz...@talend.com
Committed: Thu Mar 5 23:05:41 2015 +

--
 .../main/java/org/apache/cxf/jaxrs/model/wadl/WadlGenerator.java | 2 ++
 .../src/test/java/org/apache/cxf/jaxrs/model/wadl/BookStore.java | 4 
 .../java/org/apache/cxf/jaxrs/model/wadl/WadlGeneratorTest.java  | 3 ++-
 3 files changed, 8 insertions(+), 1 deletion(-)
--


http://git-wip-us.apache.org/repos/asf/cxf/blob/d9fb0730/rt/rs/description/src/main/java/org/apache/cxf/jaxrs/model/wadl/WadlGenerator.java
--
diff --git 
a/rt/rs/description/src/main/java/org/apache/cxf/jaxrs/model/wadl/WadlGenerator.java
 
b/rt/rs/description/src/main/java/org/apache/cxf/jaxrs/model/wadl/WadlGenerator.java
index 2d02e42..cc0fcc4 100644
--- 
a/rt/rs/description/src/main/java/org/apache/cxf/jaxrs/model/wadl/WadlGenerator.java
+++ 
b/rt/rs/description/src/main/java/org/apache/cxf/jaxrs/model/wadl/WadlGenerator.java
@@ -779,6 +779,7 @@ public class WadlGenerator implements 
ContainerRequestFilter {
 ListClass? parentBeanClasses = new LinkedListClass?();
 parentBeanClasses.add(type);
 doWriteBeanParam(ori, sb, type, pm, null, parentBeanClasses, 
isJson);
+parentBeanClasses.remove(type);
 } 
 }
 private void doWriteJaxrsBeanParams(StringBuilder sb, 
@@ -851,6 +852,7 @@ public class WadlGenerator implements 
ContainerRequestFilter {
 } else if (!parentBeanClasses.contains(paramCls)) {
 parentBeanClasses.add(paramCls);
 doWriteBeanParam(ori, sb, paramCls, entry.getKey(), name, 
parentBeanClasses, isJson);
+parentBeanClasses.remove(paramCls);
 }
 }
 }

http://git-wip-us.apache.org/repos/asf/cxf/blob/d9fb0730/rt/rs/description/src/test/java/org/apache/cxf/jaxrs/model/wadl/BookStore.java
--
diff --git 
a/rt/rs/description/src/test/java/org/apache/cxf/jaxrs/model/wadl/BookStore.java
 
b/rt/rs/description/src/test/java/org/apache/cxf/jaxrs/model/wadl/BookStore.java
index 8ff129e..46d26c2 100644
--- 
a/rt/rs/description/src/test/java/org/apache/cxf/jaxrs/model/wadl/BookStore.java
+++ 
b/rt/rs/description/src/test/java/org/apache/cxf/jaxrs/model/wadl/BookStore.java
@@ -236,6 +236,10 @@ public class BookStore implements BookDescription {
 public QueryBean3 getD() {
 return bean;
 }
+
+public QueryBean3 getD2() {
+return bean;
+}
 
 public QueryBean2 getIt() {
 return this;

http://git-wip-us.apache.org/repos/asf/cxf/blob/d9fb0730/rt/rs/description/src/test/java/org/apache/cxf/jaxrs/model/wadl/WadlGeneratorTest.java
--
diff --git 
a/rt/rs/description/src/test/java/org/apache/cxf/jaxrs/model/wadl/WadlGeneratorTest.java
 
b/rt/rs/description/src/test/java/org/apache/cxf/jaxrs/model/wadl/WadlGeneratorTest.java
index 82c766f..75ca099 100644
--- 
a/rt/rs/description/src/test/java/org/apache/cxf/jaxrs/model/wadl/WadlGeneratorTest.java
+++ 
b/rt/rs/description/src/test/java/org/apache/cxf/jaxrs/model/wadl/WadlGeneratorTest.java
@@ -590,12 +590,13 @@ public class WadlGeneratorTest extends Assert {
 ListElement requestEls = getElements(methodEl, request, 1);
 
 // 6 parameters are expected
-verifyParameters(requestEls.get(0), 6,
+verifyParameters(requestEls.get(0), 7,
  new Param(b, query, xs:int),
  new Param(aProp, query, xs:int),
  new Param(c.a, query, xs:int),
  new Param(c.b, query, xs:int),
  new Param(c.d.a, query, xs:boolean),
+ new Param(c.d2.a, query, xs:boolean),
  new Param(e, query, xs:string, 
Collections.singleton(A)));
 
 assertEquals(0, DOMUtils.getChildrenWithName(requestEls.get(0), 



cxf git commit: [CXF-6277] - Correction

2015-03-05 Thread coheigea
Repository: cxf
Updated Branches:
  refs/heads/master cb59e0b64 - 3bf34699f


[CXF-6277] - Correction


Project: http://git-wip-us.apache.org/repos/asf/cxf/repo
Commit: http://git-wip-us.apache.org/repos/asf/cxf/commit/3bf34699
Tree: http://git-wip-us.apache.org/repos/asf/cxf/tree/3bf34699
Diff: http://git-wip-us.apache.org/repos/asf/cxf/diff/3bf34699

Branch: refs/heads/master
Commit: 3bf34699f418f2ff21f467c944f6cd5becc9bbce
Parents: cb59e0b
Author: Colm O hEigeartaigh cohei...@apache.org
Authored: Thu Mar 5 16:26:23 2015 +
Committer: Colm O hEigeartaigh cohei...@apache.org
Committed: Thu Mar 5 16:26:23 2015 +

--
 .../cxf/sts/token/validator/X509TokenValidator.java  | 15 +--
 1 file changed, 13 insertions(+), 2 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cxf/blob/3bf34699/services/sts/sts-core/src/main/java/org/apache/cxf/sts/token/validator/X509TokenValidator.java
--
diff --git 
a/services/sts/sts-core/src/main/java/org/apache/cxf/sts/token/validator/X509TokenValidator.java
 
b/services/sts/sts-core/src/main/java/org/apache/cxf/sts/token/validator/X509TokenValidator.java
index 344d4ce..823bd6e 100644
--- 
a/services/sts/sts-core/src/main/java/org/apache/cxf/sts/token/validator/X509TokenValidator.java
+++ 
b/services/sts/sts-core/src/main/java/org/apache/cxf/sts/token/validator/X509TokenValidator.java
@@ -40,13 +40,14 @@ import org.apache.wss4j.common.crypto.Crypto;
 import org.apache.wss4j.common.ext.WSSecurityException;
 import org.apache.wss4j.dom.WSConstants;
 import org.apache.wss4j.dom.WSSConfig;
-import org.apache.wss4j.dom.bsp.BSPEnforcer;
 import org.apache.wss4j.dom.handler.RequestData;
 import org.apache.wss4j.dom.message.token.BinarySecurity;
 import org.apache.wss4j.dom.message.token.X509Security;
 import org.apache.wss4j.dom.validate.Credential;
 import org.apache.wss4j.dom.validate.SignatureTrustValidator;
 import org.apache.wss4j.dom.validate.Validator;
+import org.apache.xml.security.exceptions.XMLSecurityException;
+import org.apache.xml.security.keys.content.X509Data;
 
 /**
  * This class validates an X.509 V.3 certificate (received as a 
BinarySecurityToken or an X509Data
@@ -148,10 +149,20 @@ public class X509TokenValidator implements TokenValidator 
{
 ((Text)binarySecurity.getElement().getFirstChild()).setData(data);
 } else if (validateTarget.isDOMElement()) {
 try {
-binarySecurity = new 
X509Security((Element)validateTarget.getToken(), new BSPEnforcer());
+Document doc = DOMUtils.createDocument();
+binarySecurity = new X509Security(doc);
+binarySecurity.setEncodingType(BASE64_ENCODING);
+X509Data x509Data = new 
X509Data((Element)validateTarget.getToken(), );
+if (x509Data.containsCertificate()) {
+X509Certificate cert = 
x509Data.itemCertificate(0).getX509Certificate();
+((X509Security)binarySecurity).setX509Certificate(cert);
+}
 } catch (WSSecurityException ex) {
 LOG.log(Level.WARNING, , ex);
 return response;
+} catch (XMLSecurityException ex) {
+LOG.log(Level.WARNING, , ex);
+return response;
 }
 } else {
 return response;



cxf git commit: [CXF-6277] - Correction

2015-03-05 Thread coheigea
Repository: cxf
Updated Branches:
  refs/heads/3.0.x-fixes 5d18509f6 - d3e7cb90a


[CXF-6277] - Correction


Project: http://git-wip-us.apache.org/repos/asf/cxf/repo
Commit: http://git-wip-us.apache.org/repos/asf/cxf/commit/d3e7cb90
Tree: http://git-wip-us.apache.org/repos/asf/cxf/tree/d3e7cb90
Diff: http://git-wip-us.apache.org/repos/asf/cxf/diff/d3e7cb90

Branch: refs/heads/3.0.x-fixes
Commit: d3e7cb90a76d935ada732386b1af4428aabbad71
Parents: 5d18509
Author: Colm O hEigeartaigh cohei...@apache.org
Authored: Thu Mar 5 16:26:23 2015 +
Committer: Colm O hEigeartaigh cohei...@apache.org
Committed: Thu Mar 5 16:27:56 2015 +

--
 .../cxf/sts/token/validator/X509TokenValidator.java  | 15 +--
 1 file changed, 13 insertions(+), 2 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cxf/blob/d3e7cb90/services/sts/sts-core/src/main/java/org/apache/cxf/sts/token/validator/X509TokenValidator.java
--
diff --git 
a/services/sts/sts-core/src/main/java/org/apache/cxf/sts/token/validator/X509TokenValidator.java
 
b/services/sts/sts-core/src/main/java/org/apache/cxf/sts/token/validator/X509TokenValidator.java
index 344d4ce..823bd6e 100644
--- 
a/services/sts/sts-core/src/main/java/org/apache/cxf/sts/token/validator/X509TokenValidator.java
+++ 
b/services/sts/sts-core/src/main/java/org/apache/cxf/sts/token/validator/X509TokenValidator.java
@@ -40,13 +40,14 @@ import org.apache.wss4j.common.crypto.Crypto;
 import org.apache.wss4j.common.ext.WSSecurityException;
 import org.apache.wss4j.dom.WSConstants;
 import org.apache.wss4j.dom.WSSConfig;
-import org.apache.wss4j.dom.bsp.BSPEnforcer;
 import org.apache.wss4j.dom.handler.RequestData;
 import org.apache.wss4j.dom.message.token.BinarySecurity;
 import org.apache.wss4j.dom.message.token.X509Security;
 import org.apache.wss4j.dom.validate.Credential;
 import org.apache.wss4j.dom.validate.SignatureTrustValidator;
 import org.apache.wss4j.dom.validate.Validator;
+import org.apache.xml.security.exceptions.XMLSecurityException;
+import org.apache.xml.security.keys.content.X509Data;
 
 /**
  * This class validates an X.509 V.3 certificate (received as a 
BinarySecurityToken or an X509Data
@@ -148,10 +149,20 @@ public class X509TokenValidator implements TokenValidator 
{
 ((Text)binarySecurity.getElement().getFirstChild()).setData(data);
 } else if (validateTarget.isDOMElement()) {
 try {
-binarySecurity = new 
X509Security((Element)validateTarget.getToken(), new BSPEnforcer());
+Document doc = DOMUtils.createDocument();
+binarySecurity = new X509Security(doc);
+binarySecurity.setEncodingType(BASE64_ENCODING);
+X509Data x509Data = new 
X509Data((Element)validateTarget.getToken(), );
+if (x509Data.containsCertificate()) {
+X509Certificate cert = 
x509Data.itemCertificate(0).getX509Certificate();
+((X509Security)binarySecurity).setX509Certificate(cert);
+}
 } catch (WSSecurityException ex) {
 LOG.log(Level.WARNING, , ex);
 return response;
+} catch (XMLSecurityException ex) {
+LOG.log(Level.WARNING, , ex);
+return response;
 }
 } else {
 return response;



cxf git commit: minor fix to previos JAXRS String writer change

2015-03-05 Thread ay
Repository: cxf
Updated Branches:
  refs/heads/master 3bf34699f - e8e27511f


minor fix to previos JAXRS String writer change


Project: http://git-wip-us.apache.org/repos/asf/cxf/repo
Commit: http://git-wip-us.apache.org/repos/asf/cxf/commit/e8e27511
Tree: http://git-wip-us.apache.org/repos/asf/cxf/tree/e8e27511
Diff: http://git-wip-us.apache.org/repos/asf/cxf/diff/e8e27511

Branch: refs/heads/master
Commit: e8e27511f350b48088bf63527af7b45124ea1692
Parents: 3bf3469
Author: Akitoshi Yoshida a...@apache.org
Authored: Thu Mar 5 18:31:06 2015 +0100
Committer: Akitoshi Yoshida a...@apache.org
Committed: Thu Mar 5 18:31:12 2015 +0100

--
 .../cxf/jaxrs/provider/PrimitiveTextProvider.java   | 12 ++--
 1 file changed, 10 insertions(+), 2 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cxf/blob/e8e27511/rt/frontend/jaxrs/src/main/java/org/apache/cxf/jaxrs/provider/PrimitiveTextProvider.java
--
diff --git 
a/rt/frontend/jaxrs/src/main/java/org/apache/cxf/jaxrs/provider/PrimitiveTextProvider.java
 
b/rt/frontend/jaxrs/src/main/java/org/apache/cxf/jaxrs/provider/PrimitiveTextProvider.java
index 392c36d..93a6135 100644
--- 
a/rt/frontend/jaxrs/src/main/java/org/apache/cxf/jaxrs/provider/PrimitiveTextProvider.java
+++ 
b/rt/frontend/jaxrs/src/main/java/org/apache/cxf/jaxrs/provider/PrimitiveTextProvider.java
@@ -18,7 +18,6 @@
  */
 package org.apache.cxf.jaxrs.provider;
 
-import java.io.ByteArrayInputStream;
 import java.io.IOException;
 import java.io.InputStream;
 import java.io.OutputStream;
@@ -77,9 +76,18 @@ public class PrimitiveTextProviderT
 MediaType mt, MultivaluedMapString, Object headers,
 OutputStream os) throws IOException {
 String encoding = HttpUtils.getSetEncoding(mt, headers, UTF-8);
+//REVISIT try to avoid instantiating the whole byte array
 byte[] bytes = obj.toString().getBytes(encoding);
 if (bytes.length  bufferSize) {
-IOUtils.copy(new ByteArrayInputStream(bytes), os, bufferSize);
+int pos = 0;
+while (pos  bytes.length) {
+int bl = bytes.length - pos;
+if (bl  bufferSize) {
+bl = bufferSize;
+}
+os.write(bytes, pos, bl);
+pos += bl;
+}
 } else {
 os.write(bytes);
 }



cxf git commit: minor fix to previos JAXRS String writer change

2015-03-05 Thread ay
Repository: cxf
Updated Branches:
  refs/heads/3.0.x-fixes d3e7cb90a - 4b471d869


minor fix to previos JAXRS String writer change


Project: http://git-wip-us.apache.org/repos/asf/cxf/repo
Commit: http://git-wip-us.apache.org/repos/asf/cxf/commit/4b471d86
Tree: http://git-wip-us.apache.org/repos/asf/cxf/tree/4b471d86
Diff: http://git-wip-us.apache.org/repos/asf/cxf/diff/4b471d86

Branch: refs/heads/3.0.x-fixes
Commit: 4b471d86974a347858496e60afebfd512d53fe7d
Parents: d3e7cb9
Author: Akitoshi Yoshida a...@apache.org
Authored: Thu Mar 5 18:31:06 2015 +0100
Committer: Akitoshi Yoshida a...@apache.org
Committed: Thu Mar 5 18:32:44 2015 +0100

--
 .../cxf/jaxrs/provider/PrimitiveTextProvider.java   | 12 ++--
 1 file changed, 10 insertions(+), 2 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cxf/blob/4b471d86/rt/frontend/jaxrs/src/main/java/org/apache/cxf/jaxrs/provider/PrimitiveTextProvider.java
--
diff --git 
a/rt/frontend/jaxrs/src/main/java/org/apache/cxf/jaxrs/provider/PrimitiveTextProvider.java
 
b/rt/frontend/jaxrs/src/main/java/org/apache/cxf/jaxrs/provider/PrimitiveTextProvider.java
index 392c36d..93a6135 100644
--- 
a/rt/frontend/jaxrs/src/main/java/org/apache/cxf/jaxrs/provider/PrimitiveTextProvider.java
+++ 
b/rt/frontend/jaxrs/src/main/java/org/apache/cxf/jaxrs/provider/PrimitiveTextProvider.java
@@ -18,7 +18,6 @@
  */
 package org.apache.cxf.jaxrs.provider;
 
-import java.io.ByteArrayInputStream;
 import java.io.IOException;
 import java.io.InputStream;
 import java.io.OutputStream;
@@ -77,9 +76,18 @@ public class PrimitiveTextProviderT
 MediaType mt, MultivaluedMapString, Object headers,
 OutputStream os) throws IOException {
 String encoding = HttpUtils.getSetEncoding(mt, headers, UTF-8);
+//REVISIT try to avoid instantiating the whole byte array
 byte[] bytes = obj.toString().getBytes(encoding);
 if (bytes.length  bufferSize) {
-IOUtils.copy(new ByteArrayInputStream(bytes), os, bufferSize);
+int pos = 0;
+while (pos  bytes.length) {
+int bl = bytes.length - pos;
+if (bl  bufferSize) {
+bl = bufferSize;
+}
+os.write(bytes, pos, bl);
+pos += bl;
+}
 } else {
 os.write(bytes);
 }



[2/2] cxf-fediz git commit: Fixing some checkstyle issues

2015-03-05 Thread coheigea
Fixing some checkstyle issues


Project: http://git-wip-us.apache.org/repos/asf/cxf-fediz/repo
Commit: http://git-wip-us.apache.org/repos/asf/cxf-fediz/commit/f49b28e6
Tree: http://git-wip-us.apache.org/repos/asf/cxf-fediz/tree/f49b28e6
Diff: http://git-wip-us.apache.org/repos/asf/cxf-fediz/diff/f49b28e6

Branch: refs/heads/master
Commit: f49b28e67dfc12943442fa0ed67528c488ad8ef5
Parents: 23cc34f
Author: Colm O hEigeartaigh cohei...@apache.org
Authored: Thu Mar 5 17:38:22 2015 +
Committer: Colm O hEigeartaigh cohei...@apache.org
Committed: Thu Mar 5 17:38:22 2015 +

--
 .../apache/cxf/fediz/service/idp/STSAuthenticationProvider.java  | 4 ++--
 .../apache/cxf/fediz/service/sts/FedizX509DelegationHandler.java | 2 +-
 2 files changed, 3 insertions(+), 3 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cxf-fediz/blob/f49b28e6/services/idp/src/main/java/org/apache/cxf/fediz/service/idp/STSAuthenticationProvider.java
--
diff --git 
a/services/idp/src/main/java/org/apache/cxf/fediz/service/idp/STSAuthenticationProvider.java
 
b/services/idp/src/main/java/org/apache/cxf/fediz/service/idp/STSAuthenticationProvider.java
index bdd7727..3b4be6a 100644
--- 
a/services/idp/src/main/java/org/apache/cxf/fediz/service/idp/STSAuthenticationProvider.java
+++ 
b/services/idp/src/main/java/org/apache/cxf/fediz/service/idp/STSAuthenticationProvider.java
@@ -30,7 +30,6 @@ import java.util.Map;
 
 import javax.security.auth.callback.CallbackHandler;
 import javax.security.auth.login.LoginException;
-import javax.servlet.http.HttpServletRequest;
 import javax.xml.namespace.QName;
 
 import org.w3c.dom.Document;
@@ -43,7 +42,6 @@ import org.apache.cxf.fediz.core.ClaimTypes;
 import org.apache.cxf.fediz.service.idp.kerberos.KerberosServiceRequestToken;
 import org.apache.cxf.fediz.service.idp.kerberos.KerberosTokenValidator;
 import org.apache.cxf.fediz.service.idp.kerberos.PassThroughKerberosClient;
-import org.apache.cxf.fediz.service.idp.util.WebUtils;
 import org.apache.cxf.helpers.DOMUtils;
 //import org.apache.cxf.transport.http.HTTPConduit;
 //import org.apache.cxf.transports.http.configuration.HTTPClientPolicy;
@@ -121,6 +119,7 @@ public class STSAuthenticationProvider implements 
AuthenticationProvider {
 private String technicalPassword;
 
 
+//CHECKSTYLE:OFF
 @Override
 public Authentication authenticate(Authentication authentication) throws 
AuthenticationException {
 
@@ -274,6 +273,7 @@ public class STSAuthenticationProvider implements 
AuthenticationProvider {
 }
 
 }
+//CHECKSTYLE:ON
 
 private Principal validateKerberosToken(
 KerberosServiceRequestToken token,

http://git-wip-us.apache.org/repos/asf/cxf-fediz/blob/f49b28e6/services/sts/src/main/java/org/apache/cxf/fediz/service/sts/FedizX509DelegationHandler.java
--
diff --git 
a/services/sts/src/main/java/org/apache/cxf/fediz/service/sts/FedizX509DelegationHandler.java
 
b/services/sts/src/main/java/org/apache/cxf/fediz/service/sts/FedizX509DelegationHandler.java
index a597cf3..38c19b2 100644
--- 
a/services/sts/src/main/java/org/apache/cxf/fediz/service/sts/FedizX509DelegationHandler.java
+++ 
b/services/sts/src/main/java/org/apache/cxf/fediz/service/sts/FedizX509DelegationHandler.java
@@ -37,7 +37,7 @@ public class FedizX509DelegationHandler implements 
TokenDelegationHandler {
 Element tokenElement = (Element)token;
 String namespace = tokenElement.getNamespaceURI();
 String localname = tokenElement.getLocalName();
-if ((WSConstants.SIG_NS.equals(namespace)  
WSConstants.X509_DATA_LN.equals(localname))) {
+if (WSConstants.SIG_NS.equals(namespace)  
WSConstants.X509_DATA_LN.equals(localname)) {
 return true;
 }
 }



[1/2] cxf-fediz git commit: Adding support for client certificate authentication in the IdP

2015-03-05 Thread coheigea
Repository: cxf-fediz
Updated Branches:
  refs/heads/master fe30273fd - f49b28e67


Adding support for client certificate authentication in the IdP


Project: http://git-wip-us.apache.org/repos/asf/cxf-fediz/repo
Commit: http://git-wip-us.apache.org/repos/asf/cxf-fediz/commit/23cc34fc
Tree: http://git-wip-us.apache.org/repos/asf/cxf-fediz/tree/23cc34fc
Diff: http://git-wip-us.apache.org/repos/asf/cxf-fediz/diff/23cc34fc

Branch: refs/heads/master
Commit: 23cc34fc05f3b38b1a68098fdf404aed4e608efc
Parents: fe30273
Author: Colm O hEigeartaigh cohei...@apache.org
Authored: Thu Mar 5 17:20:21 2015 +
Committer: Colm O hEigeartaigh cohei...@apache.org
Committed: Thu Mar 5 17:20:21 2015 +

--
 pom.xml |  2 +-
 .../service/idp/STSAuthenticationProvider.java  | 61 ++-
 .../service/sts/FedizX509DelegationHandler.java | 63 
 .../src/main/webapp/WEB-INF/cxf-transport.xml   | 11 +++-
 4 files changed, 131 insertions(+), 6 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cxf-fediz/blob/23cc34fc/pom.xml
--
diff --git a/pom.xml b/pom.xml
index 4173077..8b03090 100644
--- a/pom.xml
+++ b/pom.xml
@@ -38,7 +38,7 @@
 properties
 commons.lang.version3.3.2/commons.lang.version
 commons.logging.version1.1.3/commons.logging.version
-cxf.version3.0.4/cxf.version
+cxf.version3.0.5-SNAPSHOT/cxf.version
 cxf.build-utils.version3.0.0/cxf.build-utils.version
 easymock.version3.3/easymock.version
 ehcache.version2.8.5/ehcache.version

http://git-wip-us.apache.org/repos/asf/cxf-fediz/blob/23cc34fc/services/idp/src/main/java/org/apache/cxf/fediz/service/idp/STSAuthenticationProvider.java
--
diff --git 
a/services/idp/src/main/java/org/apache/cxf/fediz/service/idp/STSAuthenticationProvider.java
 
b/services/idp/src/main/java/org/apache/cxf/fediz/service/idp/STSAuthenticationProvider.java
index af76d64..bdd7727 100644
--- 
a/services/idp/src/main/java/org/apache/cxf/fediz/service/idp/STSAuthenticationProvider.java
+++ 
b/services/idp/src/main/java/org/apache/cxf/fediz/service/idp/STSAuthenticationProvider.java
@@ -21,6 +21,7 @@ package org.apache.cxf.fediz.service.idp;
 import java.net.URI;
 import java.security.Principal;
 import java.security.PrivilegedActionException;
+import java.security.cert.X509Certificate;
 import java.util.ArrayList;
 import java.util.Collections;
 import java.util.HashMap;
@@ -29,8 +30,10 @@ import java.util.Map;
 
 import javax.security.auth.callback.CallbackHandler;
 import javax.security.auth.login.LoginException;
+import javax.servlet.http.HttpServletRequest;
 import javax.xml.namespace.QName;
 
+import org.w3c.dom.Document;
 import org.w3c.dom.Element;
 import org.apache.cxf.Bus;
 import org.apache.cxf.BusFactory;
@@ -40,6 +43,8 @@ import org.apache.cxf.fediz.core.ClaimTypes;
 import org.apache.cxf.fediz.service.idp.kerberos.KerberosServiceRequestToken;
 import org.apache.cxf.fediz.service.idp.kerberos.KerberosTokenValidator;
 import org.apache.cxf.fediz.service.idp.kerberos.PassThroughKerberosClient;
+import org.apache.cxf.fediz.service.idp.util.WebUtils;
+import org.apache.cxf.helpers.DOMUtils;
 //import org.apache.cxf.transport.http.HTTPConduit;
 //import org.apache.cxf.transports.http.configuration.HTTPClientPolicy;
 import org.apache.cxf.ws.security.SecurityConstants;
@@ -48,6 +53,8 @@ import 
org.apache.wss4j.common.kerberos.KerberosServiceContext;
 import org.apache.wss4j.common.principal.SAMLTokenPrincipalImpl;
 import org.apache.wss4j.common.saml.SamlAssertionWrapper;
 import org.apache.wss4j.dom.WSConstants;
+import org.apache.xml.security.exceptions.XMLSecurityException;
+import org.apache.xml.security.keys.content.X509Data;
 import org.ietf.jgss.GSSContext;
 import org.ietf.jgss.GSSCredential;
 import org.ietf.jgss.GSSException;
@@ -63,6 +70,7 @@ import org.springframework.security.core.Authentication;
 import org.springframework.security.core.AuthenticationException;
 import org.springframework.security.core.GrantedAuthority;
 import org.springframework.security.core.authority.SimpleGrantedAuthority;
+import 
org.springframework.security.web.authentication.preauth.PreAuthenticatedAuthenticationToken;
 
 public class STSAuthenticationProvider implements AuthenticationProvider {
 
@@ -109,6 +117,9 @@ public class STSAuthenticationProvider implements 
AuthenticationProvider {
 
 private boolean requireDelegation;
 
+private String technicalUser;
+private String technicalPassword;
+
 
 @Override
 public Authentication authenticate(Authentication authentication) throws 
AuthenticationException {
@@ -145,6 +156,26 @@ public class 

svn commit: r942474 - in /websites/production/cxf/content: cache/docs.pageCache docs/jaxrs-services-description.html

2015-03-05 Thread buildbot
Author: buildbot
Date: Thu Mar  5 17:47:16 2015
New Revision: 942474

Log:
Production update by buildbot for cxf

Modified:
websites/production/cxf/content/cache/docs.pageCache
websites/production/cxf/content/docs/jaxrs-services-description.html

Modified: websites/production/cxf/content/cache/docs.pageCache
==
Binary files - no diff available.

Modified: websites/production/cxf/content/docs/jaxrs-services-description.html
==
--- websites/production/cxf/content/docs/jaxrs-services-description.html 
(original)
+++ websites/production/cxf/content/docs/jaxrs-services-description.html Thu 
Mar  5 17:47:16 2015
@@ -118,11 +118,11 @@ Apache CXF -- JAXRS Services Description
!-- Content --
div class=wiki-content
 div 
id=ConfluenceContentp#160;/pp#160;/pp#160;/pp#160;span 
class=inline-first-p style=font-size:2em;font-weight:boldJAX-RS Services 
Description/span#160;/pp#160;/pp#160;/pp#160;/ppstyle 
type=text/css/*![CDATA[*/
-div.rbtoc1424090804525 {padding: 0px;}
-div.rbtoc1424090804525 ul {list-style: disc;margin-left: 0px;}
-div.rbtoc1424090804525 li {margin-left: 0px;padding-left: 0px;}
+div.rbtoc1425577607815 {padding: 0px;}
+div.rbtoc1425577607815 ul {list-style: disc;margin-left: 0px;}
+div.rbtoc1425577607815 li {margin-left: 0px;padding-left: 0px;}
 
-/*]]*//style/pdiv class=toc-macro rbtoc1424090804525
+/*]]*//style/pdiv class=toc-macro rbtoc1425577607815
 ul class=toc-indentationlia shape=rect 
href=#JAXRSServicesDescription-WADLoverviewWADL overview/a
 ul class=toc-indentationlia shape=rect 
href=#JAXRSServicesDescription-BasicexampleBasic example/a/lilia 
shape=rect href=#JAXRSServicesDescription-WADLwithreferencesWADL with 
references/a/lilia shape=rect 
href=#JAXRSServicesDescription-SharingdeclarationsbetweenmultipleWADLsSharing
 declarations between multiple WADLs/a/li/ul
 /lilia shape=rect 
href=#JAXRSServicesDescription-WADL-firstDevelopmentWADL-first 
Development/a
@@ -254,7 +254,7 @@ div.rbtoc1424090804525 li {margin-left:
   -generateResponseIfHeadersSet 
-generateResponseForMethodslt;methodNamesgt;* -asynclt;methodNamesgt;* 
-xjclt;xjc-argumentsgt;* 
   -validate -h -v -verbose -quiet lt;wadlgt;
 /pre
-/div/divpNote 'tMap', 'repMap', 'noTypes' and 'inheritResourceParams' 
options are supported starting from CXF 2.6.3, 'noVoidForEmptyResponses' - from 
2.6.4, '-async' - from 2.7.1, '-xjc' - from 
2.7.4,/pp'generateResponseForMethods' and 'generateResponseIfHeadersSet' - 
from 2.7.12/3.0.0, 'validate' - from 2.7.13/3.2.0/3.1.0/ppThe options are 
reviewed in the following table./pdiv class=table-wraptable 
class=confluenceTabletbodytrth colspan=1 rowspan=1 
class=confluenceThpOption/p/thth colspan=1 rowspan=1 
class=confluenceThpInterpretation/p/th/trtrtd colspan=1 
rowspan=1 
class=confluenceTdpcode-?/code,code-h/code,code-help/code/p/tdtd
 colspan=1 rowspan=1 class=confluenceTdpDisplays the online help for 
this utility and exits./p/td/trtrtd colspan=1 rowspan=1 
class=confluenceTdpcode-p PackageName/code/p/tdtd colspan=1 
rowspan=1 class=confluenceTdpSpecifies the 
 package name of root resource classes/p/td/trtrtd colspan=1 
rowspan=1 class=confluenceTdpcode-sp [ schema-namespace= ] 
PackageName/code/p/tdtd colspan=1 rowspan=1 
class=confluenceTdpSpecifies one or more package names corresponding to 
individual schema namespaces/p/td/trtrtd colspan=1 rowspan=1 
class=confluenceTdpcode-resource RootResourceName/code/p/tdtd 
colspan=1 rowspan=1 class=confluenceTdpSpecifies a full name of root 
resource class if WADL contains a single resource/p/td/trtrtd 
colspan=1 rowspan=1 
class=confluenceTdpcode-interface/code/p/tdtd colspan=1 
rowspan=1 class=confluenceTdpDefault option unless -impl option is used 
- Java interfaces with JAX-RS annotations are generated/p/td/trtrtd 
colspan=1 rowspan=1 class=confluenceTdpcode-impl/code/p/tdtd 
colspan=1 rowspan=1 class=confluenceTdpGenerates starting 
implementation code. Can also
  be used with -interface option/p/td/trtrtd colspan=1 rowspan=1 
class=confluenceTdpcode-noTypes/code/p/tdtd colspan=1 
rowspan=1 class=confluenceTdpRequests that no schema generation is 
needed. Can also be used with -tMap option/p/td/trtrtd colspan=1 
rowspan=1 class=confluenceTdpcode-tMap 
schema-type=java-type/code/p/tdtd colspan=1 rowspan=1 
class=confluenceTdpProvides mapping between schema elements and java 
types/p/td/trtrtd colspan=1 rowspan=1 
class=confluenceTdpcode-repMap media-type=java-type/code/p/tdtd 
colspan=1 rowspan=1 class=confluenceTdpProvides mapping between media 
types and java types/p/td/trtrtd colspan=1 rowspan=1 
class=confluenceTdpcode-b binding-name/code/p/tdtd colspan=1 
rowspan=1 class=confluenceTdpSpecifies JAXB binding files. Use multiple 
-b flags to specify multiple entries./p/td/trtrtd colspan=1 
rowspan=1 
 class=confluenceTdpcode-catalog 

cxf git commit: [CXF-6277] - Enhance the X509TokenValidator to also validate X509Data DOM Elements

2015-03-05 Thread coheigea
Repository: cxf
Updated Branches:
  refs/heads/master 22b7392c8 - cb59e0b64


[CXF-6277] - Enhance the X509TokenValidator to also validate X509Data DOM 
Elements


Project: http://git-wip-us.apache.org/repos/asf/cxf/repo
Commit: http://git-wip-us.apache.org/repos/asf/cxf/commit/cb59e0b6
Tree: http://git-wip-us.apache.org/repos/asf/cxf/tree/cb59e0b6
Diff: http://git-wip-us.apache.org/repos/asf/cxf/diff/cb59e0b6

Branch: refs/heads/master
Commit: cb59e0b641a614546ee0e64f9c5607ce6caed772
Parents: 22b7392
Author: Colm O hEigeartaigh cohei...@apache.org
Authored: Thu Mar 5 15:53:22 2015 +
Committer: Colm O hEigeartaigh cohei...@apache.org
Committed: Thu Mar 5 15:53:49 2015 +

--
 .../sts/token/validator/X509TokenValidator.java | 58 
 1 file changed, 36 insertions(+), 22 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cxf/blob/cb59e0b6/services/sts/sts-core/src/main/java/org/apache/cxf/sts/token/validator/X509TokenValidator.java
--
diff --git 
a/services/sts/sts-core/src/main/java/org/apache/cxf/sts/token/validator/X509TokenValidator.java
 
b/services/sts/sts-core/src/main/java/org/apache/cxf/sts/token/validator/X509TokenValidator.java
index 368ed54..344d4ce 100644
--- 
a/services/sts/sts-core/src/main/java/org/apache/cxf/sts/token/validator/X509TokenValidator.java
+++ 
b/services/sts/sts-core/src/main/java/org/apache/cxf/sts/token/validator/X509TokenValidator.java
@@ -27,6 +27,7 @@ import java.util.logging.Logger;
 import javax.security.auth.callback.CallbackHandler;
 
 import org.w3c.dom.Document;
+import org.w3c.dom.Element;
 import org.w3c.dom.Text;
 import org.apache.cxf.common.logging.LogUtils;
 import org.apache.cxf.helpers.DOMUtils;
@@ -39,6 +40,7 @@ import org.apache.wss4j.common.crypto.Crypto;
 import org.apache.wss4j.common.ext.WSSecurityException;
 import org.apache.wss4j.dom.WSConstants;
 import org.apache.wss4j.dom.WSSConfig;
+import org.apache.wss4j.dom.bsp.BSPEnforcer;
 import org.apache.wss4j.dom.handler.RequestData;
 import org.apache.wss4j.dom.message.token.BinarySecurity;
 import org.apache.wss4j.dom.message.token.X509Security;
@@ -47,8 +49,8 @@ import org.apache.wss4j.dom.validate.SignatureTrustValidator;
 import org.apache.wss4j.dom.validate.Validator;
 
 /**
- * This class validates an X.509 V.3 certificate (received as a 
BinarySecurityToken). The cert must
- * be known (or trusted) by the STS crypto object.
+ * This class validates an X.509 V.3 certificate (received as a 
BinarySecurityToken or an X509Data
+ * DOM Element). The cert must be known (or trusted) by the STS crypto object.
  */
 public class X509TokenValidator implements TokenValidator {
 
@@ -95,6 +97,10 @@ public class X509TokenValidator implements TokenValidator {
 if ((token instanceof BinarySecurityTokenType)
  
X509_V3_TYPE.equals(((BinarySecurityTokenType)token).getValueType())) {
 return true;
+} else if (token instanceof Element
+ WSConstants.SIG_NS.equals(((Element)token).getNamespaceURI())
+ 
WSConstants.X509_DATA_LN.equals(((Element)token).getLocalName())) {
+return true;
 }
 return false;
 }
@@ -120,30 +126,38 @@ public class X509TokenValidator implements TokenValidator 
{
 validateTarget.setState(STATE.INVALID);
 response.setToken(validateTarget);
 
-if (!validateTarget.isBinarySecurityToken()) {
-return response;
-}
-
-BinarySecurityTokenType binarySecurityType = 
(BinarySecurityTokenType)validateTarget.getToken();
-
-// Test the encoding type
-String encodingType = binarySecurityType.getEncodingType();
-if (!BASE64_ENCODING.equals(encodingType)) {
-LOG.fine(Bad encoding type attribute specified:  + encodingType);
+BinarySecurity binarySecurity = null;
+if (validateTarget.isBinarySecurityToken()) {
+BinarySecurityTokenType binarySecurityType = 
(BinarySecurityTokenType)validateTarget.getToken();
+
+// Test the encoding type
+String encodingType = binarySecurityType.getEncodingType();
+if (!BASE64_ENCODING.equals(encodingType)) {
+LOG.fine(Bad encoding type attribute specified:  + 
encodingType);
+return response;
+}
+
+//
+// Turn the received JAXB object into a DOM element
+//
+Document doc = DOMUtils.createDocument();
+binarySecurity = new X509Security(doc);
+binarySecurity.setEncodingType(encodingType);
+binarySecurity.setValueType(binarySecurityType.getValueType());
+String data = binarySecurityType.getValue();
+

cxf git commit: [CXF-6277] - Enhance the X509TokenValidator to also validate X509Data DOM Elements

2015-03-05 Thread coheigea
Repository: cxf
Updated Branches:
  refs/heads/3.0.x-fixes e163f8a5d - 5d18509f6


[CXF-6277] - Enhance the X509TokenValidator to also validate X509Data DOM 
Elements


Project: http://git-wip-us.apache.org/repos/asf/cxf/repo
Commit: http://git-wip-us.apache.org/repos/asf/cxf/commit/5d18509f
Tree: http://git-wip-us.apache.org/repos/asf/cxf/tree/5d18509f
Diff: http://git-wip-us.apache.org/repos/asf/cxf/diff/5d18509f

Branch: refs/heads/3.0.x-fixes
Commit: 5d18509f6e1fba8d6dd374f30ca93745edbcc254
Parents: e163f8a
Author: Colm O hEigeartaigh cohei...@apache.org
Authored: Thu Mar 5 15:53:22 2015 +
Committer: Colm O hEigeartaigh cohei...@apache.org
Committed: Thu Mar 5 15:54:42 2015 +

--
 .../sts/token/validator/X509TokenValidator.java | 58 
 1 file changed, 36 insertions(+), 22 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cxf/blob/5d18509f/services/sts/sts-core/src/main/java/org/apache/cxf/sts/token/validator/X509TokenValidator.java
--
diff --git 
a/services/sts/sts-core/src/main/java/org/apache/cxf/sts/token/validator/X509TokenValidator.java
 
b/services/sts/sts-core/src/main/java/org/apache/cxf/sts/token/validator/X509TokenValidator.java
index 368ed54..344d4ce 100644
--- 
a/services/sts/sts-core/src/main/java/org/apache/cxf/sts/token/validator/X509TokenValidator.java
+++ 
b/services/sts/sts-core/src/main/java/org/apache/cxf/sts/token/validator/X509TokenValidator.java
@@ -27,6 +27,7 @@ import java.util.logging.Logger;
 import javax.security.auth.callback.CallbackHandler;
 
 import org.w3c.dom.Document;
+import org.w3c.dom.Element;
 import org.w3c.dom.Text;
 import org.apache.cxf.common.logging.LogUtils;
 import org.apache.cxf.helpers.DOMUtils;
@@ -39,6 +40,7 @@ import org.apache.wss4j.common.crypto.Crypto;
 import org.apache.wss4j.common.ext.WSSecurityException;
 import org.apache.wss4j.dom.WSConstants;
 import org.apache.wss4j.dom.WSSConfig;
+import org.apache.wss4j.dom.bsp.BSPEnforcer;
 import org.apache.wss4j.dom.handler.RequestData;
 import org.apache.wss4j.dom.message.token.BinarySecurity;
 import org.apache.wss4j.dom.message.token.X509Security;
@@ -47,8 +49,8 @@ import org.apache.wss4j.dom.validate.SignatureTrustValidator;
 import org.apache.wss4j.dom.validate.Validator;
 
 /**
- * This class validates an X.509 V.3 certificate (received as a 
BinarySecurityToken). The cert must
- * be known (or trusted) by the STS crypto object.
+ * This class validates an X.509 V.3 certificate (received as a 
BinarySecurityToken or an X509Data
+ * DOM Element). The cert must be known (or trusted) by the STS crypto object.
  */
 public class X509TokenValidator implements TokenValidator {
 
@@ -95,6 +97,10 @@ public class X509TokenValidator implements TokenValidator {
 if ((token instanceof BinarySecurityTokenType)
  
X509_V3_TYPE.equals(((BinarySecurityTokenType)token).getValueType())) {
 return true;
+} else if (token instanceof Element
+ WSConstants.SIG_NS.equals(((Element)token).getNamespaceURI())
+ 
WSConstants.X509_DATA_LN.equals(((Element)token).getLocalName())) {
+return true;
 }
 return false;
 }
@@ -120,30 +126,38 @@ public class X509TokenValidator implements TokenValidator 
{
 validateTarget.setState(STATE.INVALID);
 response.setToken(validateTarget);
 
-if (!validateTarget.isBinarySecurityToken()) {
-return response;
-}
-
-BinarySecurityTokenType binarySecurityType = 
(BinarySecurityTokenType)validateTarget.getToken();
-
-// Test the encoding type
-String encodingType = binarySecurityType.getEncodingType();
-if (!BASE64_ENCODING.equals(encodingType)) {
-LOG.fine(Bad encoding type attribute specified:  + encodingType);
+BinarySecurity binarySecurity = null;
+if (validateTarget.isBinarySecurityToken()) {
+BinarySecurityTokenType binarySecurityType = 
(BinarySecurityTokenType)validateTarget.getToken();
+
+// Test the encoding type
+String encodingType = binarySecurityType.getEncodingType();
+if (!BASE64_ENCODING.equals(encodingType)) {
+LOG.fine(Bad encoding type attribute specified:  + 
encodingType);
+return response;
+}
+
+//
+// Turn the received JAXB object into a DOM element
+//
+Document doc = DOMUtils.createDocument();
+binarySecurity = new X509Security(doc);
+binarySecurity.setEncodingType(encodingType);
+binarySecurity.setValueType(binarySecurityType.getValueType());
+String data = binarySecurityType.getValue();
+

cxf-fediz git commit: Improve testing for SAML 1, holder of key, etc.

2015-03-05 Thread coheigea
Repository: cxf-fediz
Updated Branches:
  refs/heads/master 1858cb9e3 - fe30273fd


Improve testing for SAML 1, holder of key, etc.


Project: http://git-wip-us.apache.org/repos/asf/cxf-fediz/repo
Commit: http://git-wip-us.apache.org/repos/asf/cxf-fediz/commit/fe30273f
Tree: http://git-wip-us.apache.org/repos/asf/cxf-fediz/tree/fe30273f
Diff: http://git-wip-us.apache.org/repos/asf/cxf-fediz/diff/fe30273f

Branch: refs/heads/master
Commit: fe30273fdb62c1d6c3cf6a51ab343a9703e219a8
Parents: 1858cb9
Author: Colm O hEigeartaigh cohei...@apache.org
Authored: Thu Mar 5 11:27:56 2015 +
Committer: Colm O hEigeartaigh cohei...@apache.org
Committed: Thu Mar 5 11:27:56 2015 +

--
 .../fediz/integrationtests/HolderOfKeyTest.java | 16 +++
 .../cxf/fediz/integrationtests/WReqTest.java| 47 +++-
 2 files changed, 61 insertions(+), 2 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cxf-fediz/blob/fe30273f/systests/tomcat7/src/test/java/org/apache/cxf/fediz/integrationtests/HolderOfKeyTest.java
--
diff --git 
a/systests/tomcat7/src/test/java/org/apache/cxf/fediz/integrationtests/HolderOfKeyTest.java
 
b/systests/tomcat7/src/test/java/org/apache/cxf/fediz/integrationtests/HolderOfKeyTest.java
index 32fbf35..2385ec7 100644
--- 
a/systests/tomcat7/src/test/java/org/apache/cxf/fediz/integrationtests/HolderOfKeyTest.java
+++ 
b/systests/tomcat7/src/test/java/org/apache/cxf/fediz/integrationtests/HolderOfKeyTest.java
@@ -22,6 +22,8 @@ package org.apache.cxf.fediz.integrationtests;
 import java.io.File;
 
 import com.gargoylesoftware.htmlunit.WebClient;
+import com.gargoylesoftware.htmlunit.html.DomElement;
+import com.gargoylesoftware.htmlunit.html.DomNodeList;
 import com.gargoylesoftware.htmlunit.html.HtmlForm;
 import com.gargoylesoftware.htmlunit.html.HtmlPage;
 import com.gargoylesoftware.htmlunit.html.HtmlSubmitInput;
@@ -205,6 +207,20 @@ public class HolderOfKeyTest {
 
 final HtmlForm form = idpPage.getFormByName(signinresponseform);
 final HtmlSubmitInput button = form.getInputByName(_eventId_submit);
+
+// Test the Subject Confirmation method here
+DomNodeListDomElement results = 
idpPage.getElementsByTagName(input);
+
+String wresult = null;
+for (DomElement result : results) {
+if (wresult.equals(result.getAttributeNS(null, name))) {
+wresult = result.getAttributeNS(null, value);
+break;
+}
+}
+Assert.assertTrue(wresult != null 
+ 
wresult.contains(urn:oasis:names:tc:SAML:2.0:cm:holder-of-key));
+
 
 final HtmlPage rpPage = button.click();
 Assert.assertEquals(WS Federation Systests Examples, 
rpPage.getTitleText());

http://git-wip-us.apache.org/repos/asf/cxf-fediz/blob/fe30273f/systests/tomcat7/src/test/java/org/apache/cxf/fediz/integrationtests/WReqTest.java
--
diff --git 
a/systests/tomcat7/src/test/java/org/apache/cxf/fediz/integrationtests/WReqTest.java
 
b/systests/tomcat7/src/test/java/org/apache/cxf/fediz/integrationtests/WReqTest.java
index cf59ce7..b0a952d 100644
--- 
a/systests/tomcat7/src/test/java/org/apache/cxf/fediz/integrationtests/WReqTest.java
+++ 
b/systests/tomcat7/src/test/java/org/apache/cxf/fediz/integrationtests/WReqTest.java
@@ -21,6 +21,14 @@ package org.apache.cxf.fediz.integrationtests;
 
 
 import java.io.File;
+import java.io.IOException;
+
+import com.gargoylesoftware.htmlunit.WebClient;
+import com.gargoylesoftware.htmlunit.html.DomElement;
+import com.gargoylesoftware.htmlunit.html.DomNodeList;
+import com.gargoylesoftware.htmlunit.html.HtmlForm;
+import com.gargoylesoftware.htmlunit.html.HtmlPage;
+import com.gargoylesoftware.htmlunit.html.HtmlSubmitInput;
 
 import org.apache.catalina.Context;
 import org.apache.catalina.LifecycleState;
@@ -28,6 +36,8 @@ import org.apache.catalina.connector.Connector;
 import org.apache.catalina.startup.Tomcat;
 import org.apache.cxf.fediz.core.ClaimTypes;
 import org.apache.cxf.fediz.tomcat.FederationAuthenticator;
+import org.apache.http.auth.AuthScope;
+import org.apache.http.auth.UsernamePasswordCredentials;
 import org.junit.AfterClass;
 import org.junit.Assert;
 import org.junit.BeforeClass;
@@ -185,8 +195,7 @@ public class WReqTest {
 String user = alice;
 String password = ecila;
 
-final String bodyTextContent = 
-HTTPTestUtils.login(url, user, password, getIdpHttpsPort());
+final String bodyTextContent = login(url, user, password, 
getIdpHttpsPort());
 
 Assert.assertTrue(Principal not  + user,
   bodyTextContent.contains(userPrincipal= + user));
@@ -209,4 +218,38 @@ public class 

cxf git commit: Minor updates to JAXRS String and InputStream writers

2015-03-05 Thread sergeyb
Repository: cxf
Updated Branches:
  refs/heads/master b5da5e89b - 22b7392c8


Minor updates to JAXRS String and InputStream writers


Project: http://git-wip-us.apache.org/repos/asf/cxf/repo
Commit: http://git-wip-us.apache.org/repos/asf/cxf/commit/22b7392c
Tree: http://git-wip-us.apache.org/repos/asf/cxf/tree/22b7392c
Diff: http://git-wip-us.apache.org/repos/asf/cxf/diff/22b7392c

Branch: refs/heads/master
Commit: 22b7392c891bcce3f19a1a732c07691b50338172
Parents: b5da5e8
Author: Sergey Beryozkin sberyoz...@talend.com
Authored: Thu Mar 5 13:09:41 2015 +
Committer: Sergey Beryozkin sberyoz...@talend.com
Committed: Thu Mar 5 13:09:41 2015 +

--
 .../cxf/jaxrs/provider/BinaryDataProvider.java| 18 +++---
 .../cxf/jaxrs/provider/PrimitiveTextProvider.java | 15 ---
 2 files changed, 23 insertions(+), 10 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cxf/blob/22b7392c/rt/frontend/jaxrs/src/main/java/org/apache/cxf/jaxrs/provider/BinaryDataProvider.java
--
diff --git 
a/rt/frontend/jaxrs/src/main/java/org/apache/cxf/jaxrs/provider/BinaryDataProvider.java
 
b/rt/frontend/jaxrs/src/main/java/org/apache/cxf/jaxrs/provider/BinaryDataProvider.java
index d430a68..8ba39c4 100644
--- 
a/rt/frontend/jaxrs/src/main/java/org/apache/cxf/jaxrs/provider/BinaryDataProvider.java
+++ 
b/rt/frontend/jaxrs/src/main/java/org/apache/cxf/jaxrs/provider/BinaryDataProvider.java
@@ -58,7 +58,7 @@ public class BinaryDataProviderT extends 
AbstractConfigurableProvider
 private static final String HTTP_RANGE_PROPERTY = http.range.support;
 private static final Logger LOG = 
LogUtils.getL7dLogger(BinaryDataProvider.class);
 
-private static final int BUFFER_SIZE = 4096;
+private int bufferSize = IOUtils.DEFAULT_BUFFER_SIZE;
 private boolean reportByteArraySize;
 private boolean closeResponseInputStream = true;
 public boolean isReadable(Class? type, Type genericType, Annotation[] 
annotations, MediaType mt) {
@@ -94,7 +94,7 @@ public class BinaryDataProviderT extends 
AbstractConfigurableProvider
 if (enc == null) {
 return clazz.cast(IOUtils.readBytesFromStream(is));
 } else {
-return clazz.cast(IOUtils.toString(is, enc).getBytes(enc));
+return clazz.cast(IOUtils.toString(is, bufferSize, 
enc).getBytes(enc));
 }
 }
 if (File.class.isAssignableFrom(clazz)) {
@@ -106,7 +106,7 @@ public class BinaryDataProviderT extends 
AbstractConfigurableProvider
   null,
   true);
 FileOutputStream fos = new FileOutputStream(f);
-IOUtils.copy(is, fos);
+IOUtils.copy(is, fos, bufferSize);
 fos.close();
 return clazz.cast(f);
 }
@@ -156,7 +156,7 @@ public class BinaryDataProviderT extends 
AbstractConfigurableProvider
 Writer writer = new OutputStreamWriter(os, getEncoding(type));
 IOUtils.copy((Reader)o, 
   writer,
-  BUFFER_SIZE);
+  bufferSize);
 writer.flush();
 } finally {
 ((Reader)o).close();
@@ -185,9 +185,9 @@ public class BinaryDataProviderT extends 
AbstractConfigurableProvider
 handleRangeRequest(is, os, new HttpHeadersImpl(inMessage), 
outHeaders);
 } else {
 if (closeResponseInputStream) {
-IOUtils.copyAndCloseInput(is, os);
+IOUtils.copyAndCloseInput(is, os, bufferSize);
 } else {
-IOUtils.copy(is, os);
+IOUtils.copy(is, os, bufferSize);
 }
 }
 }
@@ -198,7 +198,7 @@ public class BinaryDataProviderT extends 
AbstractConfigurableProvider
   MultivaluedMapString, Object 
outHeaders) throws IOException {
 String range = inHeaders.getRequestHeaders().getFirst(Range); 
 if (range == null) {
-IOUtils.copyAndCloseInput(is, os);
+IOUtils.copyAndCloseInput(is, os, bufferSize);
 } else {
 // implement
 }
@@ -221,4 +221,8 @@ public class BinaryDataProviderT extends 
AbstractConfigurableProvider
 public void setCloseResponseInputStream(boolean closeResponseInputStream) {
 this.closeResponseInputStream = closeResponseInputStream;
 }
+
+public void setBufferSize(int bufferSize) {
+this.bufferSize = bufferSize;
+}
 }


cxf git commit: Minor updates to JAXRS String and InputStream writers

2015-03-05 Thread sergeyb
Repository: cxf
Updated Branches:
  refs/heads/3.0.x-fixes 8edfe4abc - e163f8a5d


Minor updates to JAXRS String and InputStream writers


Project: http://git-wip-us.apache.org/repos/asf/cxf/repo
Commit: http://git-wip-us.apache.org/repos/asf/cxf/commit/e163f8a5
Tree: http://git-wip-us.apache.org/repos/asf/cxf/tree/e163f8a5
Diff: http://git-wip-us.apache.org/repos/asf/cxf/diff/e163f8a5

Branch: refs/heads/3.0.x-fixes
Commit: e163f8a5d347abf183d8fe406db826118838fa1e
Parents: 8edfe4a
Author: Sergey Beryozkin sberyoz...@talend.com
Authored: Thu Mar 5 13:09:41 2015 +
Committer: Sergey Beryozkin sberyoz...@talend.com
Committed: Thu Mar 5 13:10:56 2015 +

--
 .../cxf/jaxrs/provider/BinaryDataProvider.java| 18 +++---
 .../cxf/jaxrs/provider/PrimitiveTextProvider.java | 15 ---
 2 files changed, 23 insertions(+), 10 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/cxf/blob/e163f8a5/rt/frontend/jaxrs/src/main/java/org/apache/cxf/jaxrs/provider/BinaryDataProvider.java
--
diff --git 
a/rt/frontend/jaxrs/src/main/java/org/apache/cxf/jaxrs/provider/BinaryDataProvider.java
 
b/rt/frontend/jaxrs/src/main/java/org/apache/cxf/jaxrs/provider/BinaryDataProvider.java
index 2a72839..41a45eb 100644
--- 
a/rt/frontend/jaxrs/src/main/java/org/apache/cxf/jaxrs/provider/BinaryDataProvider.java
+++ 
b/rt/frontend/jaxrs/src/main/java/org/apache/cxf/jaxrs/provider/BinaryDataProvider.java
@@ -58,7 +58,7 @@ public class BinaryDataProviderT extends 
AbstractConfigurableProvider
 private static final String HTTP_RANGE_PROPERTY = http.range.support;
 private static final Logger LOG = 
LogUtils.getL7dLogger(BinaryDataProvider.class);
 
-private static final int BUFFER_SIZE = 4096;
+private int bufferSize = IOUtils.DEFAULT_BUFFER_SIZE;
 private boolean reportByteArraySize;
 private boolean closeResponseInputStream = true;
 public boolean isReadable(Class? type, Type genericType, Annotation[] 
annotations, MediaType mt) {
@@ -94,7 +94,7 @@ public class BinaryDataProviderT extends 
AbstractConfigurableProvider
 if (enc == null) {
 return clazz.cast(IOUtils.readBytesFromStream(is));
 } else {
-return clazz.cast(IOUtils.toString(is, enc).getBytes(enc));
+return clazz.cast(IOUtils.toString(is, bufferSize, 
enc).getBytes(enc));
 }
 }
 if (File.class.isAssignableFrom(clazz)) {
@@ -106,7 +106,7 @@ public class BinaryDataProviderT extends 
AbstractConfigurableProvider
   null,
   true);
 FileOutputStream fos = new FileOutputStream(f);
-IOUtils.copy(is, fos);
+IOUtils.copy(is, fos, bufferSize);
 fos.close();
 return clazz.cast(f);
 }
@@ -154,7 +154,7 @@ public class BinaryDataProviderT extends 
AbstractConfigurableProvider
 Writer writer = new OutputStreamWriter(os, getEncoding(type));
 IOUtils.copy((Reader)o, 
   writer,
-  BUFFER_SIZE);
+  bufferSize);
 writer.flush();
 } finally {
 ((Reader)o).close();
@@ -183,9 +183,9 @@ public class BinaryDataProviderT extends 
AbstractConfigurableProvider
 handleRangeRequest(is, os, new HttpHeadersImpl(inMessage), 
outHeaders);
 } else {
 if (closeResponseInputStream) {
-IOUtils.copyAndCloseInput(is, os);
+IOUtils.copyAndCloseInput(is, os, bufferSize);
 } else {
-IOUtils.copy(is, os);
+IOUtils.copy(is, os, bufferSize);
 }
 }
 }
@@ -196,7 +196,7 @@ public class BinaryDataProviderT extends 
AbstractConfigurableProvider
   MultivaluedMapString, Object 
outHeaders) throws IOException {
 String range = inHeaders.getRequestHeaders().getFirst(Range); 
 if (range == null) {
-IOUtils.copyAndCloseInput(is, os);
+IOUtils.copyAndCloseInput(is, os, bufferSize);
 } else {
 // implement
 }
@@ -219,4 +219,8 @@ public class BinaryDataProviderT extends 
AbstractConfigurableProvider
 public void setCloseResponseInputStream(boolean closeResponseInputStream) {
 this.closeResponseInputStream = closeResponseInputStream;
 }
+
+public void setBufferSize(int bufferSize) {
+this.bufferSize = bufferSize;
+}
 }