cxf git commit: [CXF-6618] Creating a new Sparc context per every new request
Repository: cxf Updated Branches: refs/heads/master 76edf9350 -> c8e788eee [CXF-6618] Creating a new Sparc context per every new request Project: http://git-wip-us.apache.org/repos/asf/cxf/repo Commit: http://git-wip-us.apache.org/repos/asf/cxf/commit/c8e788ee Tree: http://git-wip-us.apache.org/repos/asf/cxf/tree/c8e788ee Diff: http://git-wip-us.apache.org/repos/asf/cxf/diff/c8e788ee Branch: refs/heads/master Commit: c8e788eee8f7b5ce3a2161dfe727f3153ded607b Parents: 76edf93 Author: Sergey BeryozkinAuthored: Tue Sep 6 17:18:31 2016 +0100 Committer: Sergey Beryozkin Committed: Tue Sep 6 17:18:31 2016 +0100 -- .../src/main/java/demo/jaxrs/server/InputStreamReceiver.java | 4 .../jax_rs/spark/src/main/java/demo/jaxrs/server/Server.java | 5 + .../src/main/java/demo/jaxrs/server/StreamingService.java | 7 --- 3 files changed, 5 insertions(+), 11 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cxf/blob/c8e788ee/distribution/src/main/release/samples/jax_rs/spark/src/main/java/demo/jaxrs/server/InputStreamReceiver.java -- diff --git a/distribution/src/main/release/samples/jax_rs/spark/src/main/java/demo/jaxrs/server/InputStreamReceiver.java b/distribution/src/main/release/samples/jax_rs/spark/src/main/java/demo/jaxrs/server/InputStreamReceiver.java index 05658e1..790ee35 100644 --- a/distribution/src/main/release/samples/jax_rs/spark/src/main/java/demo/jaxrs/server/InputStreamReceiver.java +++ b/distribution/src/main/release/samples/jax_rs/spark/src/main/java/demo/jaxrs/server/InputStreamReceiver.java @@ -39,10 +39,6 @@ public class InputStreamReceiver extends Receiver { super(StorageLevel.MEMORY_ONLY()); BufferedReader reader = new BufferedReader(new InputStreamReader(is)); String userInput = null; -// Receiver is meant to be serializable, but it would be -// great if if we could avoid copying InputStream -// TODO: submit Spark enhancement request so that it can keep streaming from -// the incoming InputStream to its processing nodes ? while ((userInput = readLine(reader)) != null) { inputStrings.add(userInput); } http://git-wip-us.apache.org/repos/asf/cxf/blob/c8e788ee/distribution/src/main/release/samples/jax_rs/spark/src/main/java/demo/jaxrs/server/Server.java -- diff --git a/distribution/src/main/release/samples/jax_rs/spark/src/main/java/demo/jaxrs/server/Server.java b/distribution/src/main/release/samples/jax_rs/spark/src/main/java/demo/jaxrs/server/Server.java index c74b215..50f915a 100644 --- a/distribution/src/main/release/samples/jax_rs/spark/src/main/java/demo/jaxrs/server/Server.java +++ b/distribution/src/main/release/samples/jax_rs/spark/src/main/java/demo/jaxrs/server/Server.java @@ -21,18 +21,15 @@ package demo.jaxrs.server; import org.apache.cxf.jaxrs.JAXRSServerFactoryBean; import org.apache.cxf.jaxrs.lifecycle.SingletonResourceProvider; -import org.apache.spark.SparkConf; public class Server { protected Server() throws Exception { -SparkConf sparkConf = new SparkConf().setMaster("local[*]").setAppName("JAX-RS Spark Connect"); - JAXRSServerFactoryBean sf = new JAXRSServerFactoryBean(); sf.setResourceClasses(StreamingService.class); sf.setResourceProvider(StreamingService.class, -new SingletonResourceProvider(new StreamingService(sparkConf))); +new SingletonResourceProvider(new StreamingService())); sf.setAddress("http://localhost:9000/;); sf.create(); http://git-wip-us.apache.org/repos/asf/cxf/blob/c8e788ee/distribution/src/main/release/samples/jax_rs/spark/src/main/java/demo/jaxrs/server/StreamingService.java -- diff --git a/distribution/src/main/release/samples/jax_rs/spark/src/main/java/demo/jaxrs/server/StreamingService.java b/distribution/src/main/release/samples/jax_rs/spark/src/main/java/demo/jaxrs/server/StreamingService.java index 0e94b3c..c9cc033 100644 --- a/distribution/src/main/release/samples/jax_rs/spark/src/main/java/demo/jaxrs/server/StreamingService.java +++ b/distribution/src/main/release/samples/jax_rs/spark/src/main/java/demo/jaxrs/server/StreamingService.java @@ -55,9 +55,7 @@ import scala.Tuple2; public class StreamingService { private Executor executor = new ThreadPoolExecutor(5, 5, 0, TimeUnit.SECONDS, new ArrayBlockingQueue(10)); -private JavaStreamingContext jssc; -public StreamingService(SparkConf sparkConf) { -jssc = new JavaStreamingContext(sparkConf,
cxf git commit: [CXF-6618] Resuming the async responce only when the batch is started
Repository: cxf Updated Branches: refs/heads/master 46438c487 -> 76edf9350 [CXF-6618] Resuming the async responce only when the batch is started Project: http://git-wip-us.apache.org/repos/asf/cxf/repo Commit: http://git-wip-us.apache.org/repos/asf/cxf/commit/76edf935 Tree: http://git-wip-us.apache.org/repos/asf/cxf/tree/76edf935 Diff: http://git-wip-us.apache.org/repos/asf/cxf/diff/76edf935 Branch: refs/heads/master Commit: 76edf9350e7640860b66196ad40396d54bbcb2b2 Parents: 46438c4 Author: Sergey BeryozkinAuthored: Tue Sep 6 16:37:07 2016 +0100 Committer: Sergey Beryozkin Committed: Tue Sep 6 16:37:07 2016 +0100 -- .../main/java/demo/jaxrs/server/SparkJob.java | 36 ++ .../jaxrs/server/SparkStreamingListener.java| 40 +++- .../demo/jaxrs/server/StreamingService.java | 12 +++--- 3 files changed, 79 insertions(+), 9 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cxf/blob/76edf935/distribution/src/main/release/samples/jax_rs/spark/src/main/java/demo/jaxrs/server/SparkJob.java -- diff --git a/distribution/src/main/release/samples/jax_rs/spark/src/main/java/demo/jaxrs/server/SparkJob.java b/distribution/src/main/release/samples/jax_rs/spark/src/main/java/demo/jaxrs/server/SparkJob.java new file mode 100644 index 000..010ddf3 --- /dev/null +++ b/distribution/src/main/release/samples/jax_rs/spark/src/main/java/demo/jaxrs/server/SparkJob.java @@ -0,0 +1,36 @@ +/** + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you 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 demo.jaxrs.server; + +import javax.ws.rs.container.AsyncResponse; + +public class SparkJob implements Runnable { +private AsyncResponse ac; +private SparkStreamingListener sparkListener; +public SparkJob(AsyncResponse ac, SparkStreamingListener sparkListener) { +this.ac = ac; +this.sparkListener = sparkListener; +} +@Override +public void run() { +sparkListener.waitForBatchStarted(); +ac.resume(sparkListener.getStreamOut()); +} + +} http://git-wip-us.apache.org/repos/asf/cxf/blob/76edf935/distribution/src/main/release/samples/jax_rs/spark/src/main/java/demo/jaxrs/server/SparkStreamingListener.java -- diff --git a/distribution/src/main/release/samples/jax_rs/spark/src/main/java/demo/jaxrs/server/SparkStreamingListener.java b/distribution/src/main/release/samples/jax_rs/spark/src/main/java/demo/jaxrs/server/SparkStreamingListener.java index 3fd7284..8a891c2 100644 --- a/distribution/src/main/release/samples/jax_rs/spark/src/main/java/demo/jaxrs/server/SparkStreamingListener.java +++ b/distribution/src/main/release/samples/jax_rs/spark/src/main/java/demo/jaxrs/server/SparkStreamingListener.java @@ -1,3 +1,21 @@ +/** + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you 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 demo.jaxrs.server; import org.apache.spark.streaming.scheduler.StreamingListener; @@ -12,7 +30,8 @@ import org.apache.spark.streaming.scheduler.StreamingListenerReceiverStopped; public class SparkStreamingListener implements StreamingListener { private SparkStreamingOutput streamOutput; - +private boolean batchStarted; + public
cxf git commit: [CXF-6618] Minimizing the dep on the Spark api in StreamingOutputImpl
Repository: cxf Updated Branches: refs/heads/master e2c866a5c -> 46438c487 [CXF-6618] Minimizing the dep on the Spark api in StreamingOutputImpl Project: http://git-wip-us.apache.org/repos/asf/cxf/repo Commit: http://git-wip-us.apache.org/repos/asf/cxf/commit/46438c48 Tree: http://git-wip-us.apache.org/repos/asf/cxf/tree/46438c48 Diff: http://git-wip-us.apache.org/repos/asf/cxf/diff/46438c48 Branch: refs/heads/master Commit: 46438c487115889c4cadd86f70fd4109a0daa2b8 Parents: e2c866a Author: Sergey BeryozkinAuthored: Tue Sep 6 15:49:17 2016 +0100 Committer: Sergey Beryozkin Committed: Tue Sep 6 15:49:17 2016 +0100 -- .../jaxrs/server/SparkStreamingListener.java| 8 +-- .../demo/jaxrs/server/SparkStreamingOutput.java | 67 +++- .../demo/jaxrs/server/StreamingService.java | 27 ++-- 3 files changed, 49 insertions(+), 53 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cxf/blob/46438c48/distribution/src/main/release/samples/jax_rs/spark/src/main/java/demo/jaxrs/server/SparkStreamingListener.java -- diff --git a/distribution/src/main/release/samples/jax_rs/spark/src/main/java/demo/jaxrs/server/SparkStreamingListener.java b/distribution/src/main/release/samples/jax_rs/spark/src/main/java/demo/jaxrs/server/SparkStreamingListener.java index 1881857..3fd7284 100644 --- a/distribution/src/main/release/samples/jax_rs/spark/src/main/java/demo/jaxrs/server/SparkStreamingListener.java +++ b/distribution/src/main/release/samples/jax_rs/spark/src/main/java/demo/jaxrs/server/SparkStreamingListener.java @@ -11,14 +11,15 @@ import org.apache.spark.streaming.scheduler.StreamingListenerReceiverStarted; import org.apache.spark.streaming.scheduler.StreamingListenerReceiverStopped; public class SparkStreamingListener implements StreamingListener { -private SparkStreamingOutput sparkStreamingOutput; +private SparkStreamingOutput streamOutput; -public SparkStreamingListener(SparkStreamingOutput sparkStreamingOutput) { -this.sparkStreamingOutput = sparkStreamingOutput; +public SparkStreamingListener(SparkStreamingOutput streamOutput) { +this.streamOutput = streamOutput; } @Override public void onBatchCompleted(StreamingListenerBatchCompleted event) { +streamOutput.setSparkBatchCompleted(); } @Override @@ -31,7 +32,6 @@ public class SparkStreamingListener implements StreamingListener { @Override public void onOutputOperationCompleted(StreamingListenerOutputOperationCompleted event) { -sparkStreamingOutput.setOperationCompleted(); } @Override http://git-wip-us.apache.org/repos/asf/cxf/blob/46438c48/distribution/src/main/release/samples/jax_rs/spark/src/main/java/demo/jaxrs/server/SparkStreamingOutput.java -- diff --git a/distribution/src/main/release/samples/jax_rs/spark/src/main/java/demo/jaxrs/server/SparkStreamingOutput.java b/distribution/src/main/release/samples/jax_rs/spark/src/main/java/demo/jaxrs/server/SparkStreamingOutput.java index e28bb5a..43166fe 100644 --- a/distribution/src/main/release/samples/jax_rs/spark/src/main/java/demo/jaxrs/server/SparkStreamingOutput.java +++ b/distribution/src/main/release/samples/jax_rs/spark/src/main/java/demo/jaxrs/server/SparkStreamingOutput.java @@ -20,72 +20,49 @@ package demo.jaxrs.server; import java.io.IOException; import java.io.OutputStream; -import java.util.Map; +import java.util.concurrent.BlockingQueue; +import java.util.concurrent.LinkedBlockingQueue; +import java.util.concurrent.TimeUnit; import javax.ws.rs.WebApplicationException; import javax.ws.rs.core.StreamingOutput; -import org.apache.spark.api.java.JavaPairRDD; -import org.apache.spark.api.java.function.VoidFunction; -import org.apache.spark.streaming.api.java.JavaPairDStream; +import org.apache.cxf.common.util.StringUtils; import org.apache.spark.streaming.api.java.JavaStreamingContext; public class SparkStreamingOutput implements StreamingOutput { -private JavaPairDStream wordCounts; +private BlockingQueue responseQueue = new LinkedBlockingQueue(); + private JavaStreamingContext jssc; -private boolean operationCompleted; -public SparkStreamingOutput(JavaStreamingContext jssc, JavaPairDStream wordCounts) { +private volatile boolean sparkBatchCompleted; +public SparkStreamingOutput(JavaStreamingContext jssc) { this.jssc = jssc; -this.wordCounts = wordCounts; } @Override public void write(final OutputStream output) throws IOException, WebApplicationException { -wordCounts.foreachRDD(new OutputFunction(output)); -
cxf git commit: CXF-6604 - Only import a Node if we absolutely have to
Repository: cxf Updated Branches: refs/heads/3.1.x-fixes 267dc2107 -> 79fb59268 CXF-6604 - Only import a Node if we absolutely have to Project: http://git-wip-us.apache.org/repos/asf/cxf/repo Commit: http://git-wip-us.apache.org/repos/asf/cxf/commit/79fb5926 Tree: http://git-wip-us.apache.org/repos/asf/cxf/tree/79fb5926 Diff: http://git-wip-us.apache.org/repos/asf/cxf/diff/79fb5926 Branch: refs/heads/3.1.x-fixes Commit: 79fb59268605c1e2dfc64e4d5dd8d4a91108537e Parents: 267dc21 Author: Colm O hEigeartaighAuthored: Tue Sep 6 15:20:58 2016 +0100 Committer: Colm O hEigeartaigh Committed: Tue Sep 6 15:22:24 2016 +0100 -- .../security/wss4j/policyhandlers/AbstractBindingBuilder.java | 5 - 1 file changed, 4 insertions(+), 1 deletion(-) -- http://git-wip-us.apache.org/repos/asf/cxf/blob/79fb5926/rt/ws/security/src/main/java/org/apache/cxf/ws/security/wss4j/policyhandlers/AbstractBindingBuilder.java -- diff --git a/rt/ws/security/src/main/java/org/apache/cxf/ws/security/wss4j/policyhandlers/AbstractBindingBuilder.java b/rt/ws/security/src/main/java/org/apache/cxf/ws/security/wss4j/policyhandlers/AbstractBindingBuilder.java index 335f1ef..6247016 100644 --- a/rt/ws/security/src/main/java/org/apache/cxf/ws/security/wss4j/policyhandlers/AbstractBindingBuilder.java +++ b/rt/ws/security/src/main/java/org/apache/cxf/ws/security/wss4j/policyhandlers/AbstractBindingBuilder.java @@ -608,7 +608,10 @@ public abstract class AbstractBindingBuilder extends AbstractCommonBindingHandle } protected Element cloneElement(Element el) { -return (Element)secHeader.getSecurityHeader().getOwnerDocument().importNode(el, true); +if (!secHeader.getSecurityHeader().getOwnerDocument().equals(el.getOwnerDocument())) { +return (Element)secHeader.getSecurityHeader().getOwnerDocument().importNode(el, true); +} +return el; } protected void addSignatureParts(List tokenList, List sigParts) {
[1/2] cxf git commit: Recording .gitmergeinfo Changes
Repository: cxf Updated Branches: refs/heads/3.0.x-fixes 595c43e21 -> 0c2020e1d Recording .gitmergeinfo Changes Project: http://git-wip-us.apache.org/repos/asf/cxf/repo Commit: http://git-wip-us.apache.org/repos/asf/cxf/commit/0c2020e1 Tree: http://git-wip-us.apache.org/repos/asf/cxf/tree/0c2020e1 Diff: http://git-wip-us.apache.org/repos/asf/cxf/diff/0c2020e1 Branch: refs/heads/3.0.x-fixes Commit: 0c2020e1de7e9c7d147db765f008d658e5de3362 Parents: 88b381d Author: Colm O hEigeartaighAuthored: Tue Sep 6 15:22:42 2016 +0100 Committer: Colm O hEigeartaigh Committed: Tue Sep 6 15:22:42 2016 +0100 -- .gitmergeinfo | 1 + 1 file changed, 1 insertion(+) -- http://git-wip-us.apache.org/repos/asf/cxf/blob/0c2020e1/.gitmergeinfo -- diff --git a/.gitmergeinfo b/.gitmergeinfo index fed8572..903abcf 100644 --- a/.gitmergeinfo +++ b/.gitmergeinfo @@ -1339,6 +1339,7 @@ M 79156d8a23497b9ed9bd912b64f684e610d49863 M 7988c4a974118cc5c2a8bd956fe396a7d5e8bb5c M 79f8cee005bc09bae7bcb37bba15151bea27e416 M 79f9a1056d979b138041ef0693052d3f989ef522 +M 79fb59268605c1e2dfc64e4d5dd8d4a91108537e M 7a35d33145a7d1f2d00d01df130f836127d65f62 M 7abdac771c87f759615292fe40dbe313ab14cda5 M 7b31a2afca1ec599100511ce1f7428160618f389
cxf git commit: CXF-6604 - Only import a Node if we absolutely have to
Repository: cxf Updated Branches: refs/heads/master 203b5433b -> e2c866a5c CXF-6604 - Only import a Node if we absolutely have to Project: http://git-wip-us.apache.org/repos/asf/cxf/repo Commit: http://git-wip-us.apache.org/repos/asf/cxf/commit/e2c866a5 Tree: http://git-wip-us.apache.org/repos/asf/cxf/tree/e2c866a5 Diff: http://git-wip-us.apache.org/repos/asf/cxf/diff/e2c866a5 Branch: refs/heads/master Commit: e2c866a5cf89436f6453f686d0b703fde716aeb5 Parents: 203b543 Author: Colm O hEigeartaighAuthored: Tue Sep 6 15:20:58 2016 +0100 Committer: Colm O hEigeartaigh Committed: Tue Sep 6 15:22:01 2016 +0100 -- .../security/wss4j/policyhandlers/AbstractBindingBuilder.java | 5 - 1 file changed, 4 insertions(+), 1 deletion(-) -- http://git-wip-us.apache.org/repos/asf/cxf/blob/e2c866a5/rt/ws/security/src/main/java/org/apache/cxf/ws/security/wss4j/policyhandlers/AbstractBindingBuilder.java -- diff --git a/rt/ws/security/src/main/java/org/apache/cxf/ws/security/wss4j/policyhandlers/AbstractBindingBuilder.java b/rt/ws/security/src/main/java/org/apache/cxf/ws/security/wss4j/policyhandlers/AbstractBindingBuilder.java index 335f1ef..6247016 100644 --- a/rt/ws/security/src/main/java/org/apache/cxf/ws/security/wss4j/policyhandlers/AbstractBindingBuilder.java +++ b/rt/ws/security/src/main/java/org/apache/cxf/ws/security/wss4j/policyhandlers/AbstractBindingBuilder.java @@ -608,7 +608,10 @@ public abstract class AbstractBindingBuilder extends AbstractCommonBindingHandle } protected Element cloneElement(Element el) { -return (Element)secHeader.getSecurityHeader().getOwnerDocument().importNode(el, true); +if (!secHeader.getSecurityHeader().getOwnerDocument().equals(el.getOwnerDocument())) { +return (Element)secHeader.getSecurityHeader().getOwnerDocument().importNode(el, true); +} +return el; } protected void addSignatureParts(List tokenList, List sigParts) {
cxf git commit: [CXF-6618] Simplifying the sync code
Repository: cxf Updated Branches: refs/heads/master e6d84cf9f -> 203b5433b [CXF-6618] Simplifying the sync code Project: http://git-wip-us.apache.org/repos/asf/cxf/repo Commit: http://git-wip-us.apache.org/repos/asf/cxf/commit/203b5433 Tree: http://git-wip-us.apache.org/repos/asf/cxf/tree/203b5433 Diff: http://git-wip-us.apache.org/repos/asf/cxf/diff/203b5433 Branch: refs/heads/master Commit: 203b5433bc44aa831bdd9b1dd4ab474d192dea6c Parents: e6d84cf Author: Sergey BeryozkinAuthored: Tue Sep 6 13:55:53 2016 +0100 Committer: Sergey Beryozkin Committed: Tue Sep 6 13:55:53 2016 +0100 -- .../jaxrs/server/SparkStreamingListener.java| 5 +--- .../demo/jaxrs/server/SparkStreamingOutput.java | 28 +++- .../demo/jaxrs/server/StreamingService.java | 5 ++-- 3 files changed, 13 insertions(+), 25 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cxf/blob/203b5433/distribution/src/main/release/samples/jax_rs/spark/src/main/java/demo/jaxrs/server/SparkStreamingListener.java -- diff --git a/distribution/src/main/release/samples/jax_rs/spark/src/main/java/demo/jaxrs/server/SparkStreamingListener.java b/distribution/src/main/release/samples/jax_rs/spark/src/main/java/demo/jaxrs/server/SparkStreamingListener.java index 3ee5558..1881857 100644 --- a/distribution/src/main/release/samples/jax_rs/spark/src/main/java/demo/jaxrs/server/SparkStreamingListener.java +++ b/distribution/src/main/release/samples/jax_rs/spark/src/main/java/demo/jaxrs/server/SparkStreamingListener.java @@ -19,10 +19,6 @@ public class SparkStreamingListener implements StreamingListener { @Override public void onBatchCompleted(StreamingListenerBatchCompleted event) { -// as soon as the batch is finished we let the streaming context go -// but this may need to be revisited if a given InputStream happens to be processed in -// multiple batches ? -sparkStreamingOutput.setBatchCompleted(); } @Override @@ -35,6 +31,7 @@ public class SparkStreamingListener implements StreamingListener { @Override public void onOutputOperationCompleted(StreamingListenerOutputOperationCompleted event) { +sparkStreamingOutput.setOperationCompleted(); } @Override http://git-wip-us.apache.org/repos/asf/cxf/blob/203b5433/distribution/src/main/release/samples/jax_rs/spark/src/main/java/demo/jaxrs/server/SparkStreamingOutput.java -- diff --git a/distribution/src/main/release/samples/jax_rs/spark/src/main/java/demo/jaxrs/server/SparkStreamingOutput.java b/distribution/src/main/release/samples/jax_rs/spark/src/main/java/demo/jaxrs/server/SparkStreamingOutput.java index e3ac218..e28bb5a 100644 --- a/distribution/src/main/release/samples/jax_rs/spark/src/main/java/demo/jaxrs/server/SparkStreamingOutput.java +++ b/distribution/src/main/release/samples/jax_rs/spark/src/main/java/demo/jaxrs/server/SparkStreamingOutput.java @@ -33,8 +33,7 @@ import org.apache.spark.streaming.api.java.JavaStreamingContext; public class SparkStreamingOutput implements StreamingOutput { private JavaPairDStream wordCounts; private JavaStreamingContext jssc; -private boolean sparkDone; -private boolean batchCompleted; +private boolean operationCompleted; public SparkStreamingOutput(JavaStreamingContext jssc, JavaPairDStream wordCounts) { this.jssc = jssc; this.wordCounts = wordCounts; @@ -44,13 +43,13 @@ public class SparkStreamingOutput implements StreamingOutput { public void write(final OutputStream output) throws IOException, WebApplicationException { wordCounts.foreachRDD(new OutputFunction(output)); jssc.start(); -awaitTermination(); +waitForOperationCompleted(); jssc.stop(false); jssc.close(); } -private synchronized void awaitTermination() { -while (!sparkDone) { +private synchronized void waitForOperationCompleted() { +while (!operationCompleted) { try { wait(); } catch (InterruptedException e) { @@ -58,18 +57,14 @@ public class SparkStreamingOutput implements StreamingOutput { } } } -private synchronized void releaseStreamingContext() { -if (batchCompleted) { -sparkDone = true; -notify(); -} -} - -public synchronized void setBatchCompleted() { -batchCompleted = true; -} +public synchronized void setOperationCompleted() { +this.operationCompleted = true; +notify(); +} + + // This dedicated class was
cxf git commit: [CXF-6618] Another minor update
Repository: cxf Updated Branches: refs/heads/master da321593b -> e6d84cf9f [CXF-6618] Another minor update Project: http://git-wip-us.apache.org/repos/asf/cxf/repo Commit: http://git-wip-us.apache.org/repos/asf/cxf/commit/e6d84cf9 Tree: http://git-wip-us.apache.org/repos/asf/cxf/tree/e6d84cf9 Diff: http://git-wip-us.apache.org/repos/asf/cxf/diff/e6d84cf9 Branch: refs/heads/master Commit: e6d84cf9f3ac669003402d122178a55e8b7e4493 Parents: da32159 Author: Sergey BeryozkinAuthored: Tue Sep 6 13:34:38 2016 +0100 Committer: Sergey Beryozkin Committed: Tue Sep 6 13:34:38 2016 +0100 -- .../jaxrs/server/SparkStreamingListener.java| 56 .../demo/jaxrs/server/SparkStreamingOutput.java | 52 +- .../demo/jaxrs/server/StreamingService.java | 8 +-- 3 files changed, 63 insertions(+), 53 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cxf/blob/e6d84cf9/distribution/src/main/release/samples/jax_rs/spark/src/main/java/demo/jaxrs/server/SparkStreamingListener.java -- diff --git a/distribution/src/main/release/samples/jax_rs/spark/src/main/java/demo/jaxrs/server/SparkStreamingListener.java b/distribution/src/main/release/samples/jax_rs/spark/src/main/java/demo/jaxrs/server/SparkStreamingListener.java new file mode 100644 index 000..3ee5558 --- /dev/null +++ b/distribution/src/main/release/samples/jax_rs/spark/src/main/java/demo/jaxrs/server/SparkStreamingListener.java @@ -0,0 +1,56 @@ +package demo.jaxrs.server; + +import org.apache.spark.streaming.scheduler.StreamingListener; +import org.apache.spark.streaming.scheduler.StreamingListenerBatchCompleted; +import org.apache.spark.streaming.scheduler.StreamingListenerBatchStarted; +import org.apache.spark.streaming.scheduler.StreamingListenerBatchSubmitted; +import org.apache.spark.streaming.scheduler.StreamingListenerOutputOperationCompleted; +import org.apache.spark.streaming.scheduler.StreamingListenerOutputOperationStarted; +import org.apache.spark.streaming.scheduler.StreamingListenerReceiverError; +import org.apache.spark.streaming.scheduler.StreamingListenerReceiverStarted; +import org.apache.spark.streaming.scheduler.StreamingListenerReceiverStopped; + +public class SparkStreamingListener implements StreamingListener { +private SparkStreamingOutput sparkStreamingOutput; + +public SparkStreamingListener(SparkStreamingOutput sparkStreamingOutput) { +this.sparkStreamingOutput = sparkStreamingOutput; +} + +@Override +public void onBatchCompleted(StreamingListenerBatchCompleted event) { +// as soon as the batch is finished we let the streaming context go +// but this may need to be revisited if a given InputStream happens to be processed in +// multiple batches ? +sparkStreamingOutput.setBatchCompleted(); +} + +@Override +public void onBatchStarted(StreamingListenerBatchStarted event) { +} + +@Override +public void onBatchSubmitted(StreamingListenerBatchSubmitted event) { +} + +@Override +public void onOutputOperationCompleted(StreamingListenerOutputOperationCompleted event) { +} + +@Override +public void onOutputOperationStarted(StreamingListenerOutputOperationStarted event) { +} + +@Override +public void onReceiverError(StreamingListenerReceiverError event) { +} + +@Override +public void onReceiverStarted(StreamingListenerReceiverStarted event) { +} + +@Override +public void onReceiverStopped(StreamingListenerReceiverStopped arg0) { +} + +} http://git-wip-us.apache.org/repos/asf/cxf/blob/e6d84cf9/distribution/src/main/release/samples/jax_rs/spark/src/main/java/demo/jaxrs/server/SparkStreamingOutput.java -- diff --git a/distribution/src/main/release/samples/jax_rs/spark/src/main/java/demo/jaxrs/server/SparkStreamingOutput.java b/distribution/src/main/release/samples/jax_rs/spark/src/main/java/demo/jaxrs/server/SparkStreamingOutput.java index 2220dd4..e3ac218 100644 --- a/distribution/src/main/release/samples/jax_rs/spark/src/main/java/demo/jaxrs/server/SparkStreamingOutput.java +++ b/distribution/src/main/release/samples/jax_rs/spark/src/main/java/demo/jaxrs/server/SparkStreamingOutput.java @@ -29,15 +29,6 @@ import org.apache.spark.api.java.JavaPairRDD; import org.apache.spark.api.java.function.VoidFunction; import org.apache.spark.streaming.api.java.JavaPairDStream; import org.apache.spark.streaming.api.java.JavaStreamingContext; -import org.apache.spark.streaming.scheduler.StreamingListener; -import org.apache.spark.streaming.scheduler.StreamingListenerBatchCompleted; -import
cxf git commit: Starting introducing an async response support to the Spark demo
Repository: cxf Updated Branches: refs/heads/master df243e3d1 -> da321593b Starting introducing an async response support to the Spark demo Project: http://git-wip-us.apache.org/repos/asf/cxf/repo Commit: http://git-wip-us.apache.org/repos/asf/cxf/commit/da321593 Tree: http://git-wip-us.apache.org/repos/asf/cxf/tree/da321593 Diff: http://git-wip-us.apache.org/repos/asf/cxf/diff/da321593 Branch: refs/heads/master Commit: da321593b597711af7307a0fc2c11de070653356 Parents: df243e3 Author: Sergey BeryozkinAuthored: Tue Sep 6 13:11:41 2016 +0100 Committer: Sergey Beryozkin Committed: Tue Sep 6 13:11:41 2016 +0100 -- .../release/samples/jax_rs/spark/README.txt | 2 +- .../demo/jaxrs/server/SparkStreamingOutput.java | 14 +-- .../demo/jaxrs/server/StreamingService.java | 25 ++-- 3 files changed, 26 insertions(+), 15 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cxf/blob/da321593/distribution/src/main/release/samples/jax_rs/spark/README.txt -- diff --git a/distribution/src/main/release/samples/jax_rs/spark/README.txt b/distribution/src/main/release/samples/jax_rs/spark/README.txt index 7f94387..e6a218d 100644 --- a/distribution/src/main/release/samples/jax_rs/spark/README.txt +++ b/distribution/src/main/release/samples/jax_rs/spark/README.txt @@ -9,7 +9,7 @@ mvn exec:java Next do: -curl -X POST -H "Accept: text/plain" -H "Content-Type: text/plain" -d "Hello Spark" https://localhost:9000/stream +curl -X POST -H "Accept: text/plain" -H "Content-Type: text/plain" -d "Hello Spark" http://localhost:9000/stream Limitations: http://git-wip-us.apache.org/repos/asf/cxf/blob/da321593/distribution/src/main/release/samples/jax_rs/spark/src/main/java/demo/jaxrs/server/SparkStreamingOutput.java -- diff --git a/distribution/src/main/release/samples/jax_rs/spark/src/main/java/demo/jaxrs/server/SparkStreamingOutput.java b/distribution/src/main/release/samples/jax_rs/spark/src/main/java/demo/jaxrs/server/SparkStreamingOutput.java index b0d5a50..2220dd4 100644 --- a/distribution/src/main/release/samples/jax_rs/spark/src/main/java/demo/jaxrs/server/SparkStreamingOutput.java +++ b/distribution/src/main/release/samples/jax_rs/spark/src/main/java/demo/jaxrs/server/SparkStreamingOutput.java @@ -99,7 +99,7 @@ public class SparkStreamingOutput implements StreamingOutput { throw new WebApplicationException(); } } -// Right now we assume by the time we call it the batch the whole InputStream has been +// Right now we assume by the time we call it the whole InputStream has been // processed releaseStreamingContext(); } @@ -116,27 +116,27 @@ public class SparkStreamingOutput implements StreamingOutput { } @Override -public void onBatchStarted(StreamingListenerBatchStarted arg0) { +public void onBatchStarted(StreamingListenerBatchStarted event) { } @Override -public void onBatchSubmitted(StreamingListenerBatchSubmitted arg0) { +public void onBatchSubmitted(StreamingListenerBatchSubmitted event) { } @Override -public void onOutputOperationCompleted(StreamingListenerOutputOperationCompleted arg0) { +public void onOutputOperationCompleted(StreamingListenerOutputOperationCompleted event) { } @Override -public void onOutputOperationStarted(StreamingListenerOutputOperationStarted arg0) { +public void onOutputOperationStarted(StreamingListenerOutputOperationStarted event) { } @Override -public void onReceiverError(StreamingListenerReceiverError arg0) { +public void onReceiverError(StreamingListenerReceiverError event) { } @Override -public void onReceiverStarted(StreamingListenerReceiverStarted arg0) { +public void onReceiverStarted(StreamingListenerReceiverStarted event) { } @Override http://git-wip-us.apache.org/repos/asf/cxf/blob/da321593/distribution/src/main/release/samples/jax_rs/spark/src/main/java/demo/jaxrs/server/StreamingService.java -- diff --git a/distribution/src/main/release/samples/jax_rs/spark/src/main/java/demo/jaxrs/server/StreamingService.java b/distribution/src/main/release/samples/jax_rs/spark/src/main/java/demo/jaxrs/server/StreamingService.java index 801fa55..b65a68b 100644 --- a/distribution/src/main/release/samples/jax_rs/spark/src/main/java/demo/jaxrs/server/StreamingService.java +++
cxf git commit: [CXF-7040] Correctly identifying a Swagger UI root in repackaged JAR
Repository: cxf Updated Branches: refs/heads/3.1.x-fixes dac029e0e -> 267dc2107 [CXF-7040] Correctly identifying a Swagger UI root in repackaged JAR Project: http://git-wip-us.apache.org/repos/asf/cxf/repo Commit: http://git-wip-us.apache.org/repos/asf/cxf/commit/267dc210 Tree: http://git-wip-us.apache.org/repos/asf/cxf/tree/267dc210 Diff: http://git-wip-us.apache.org/repos/asf/cxf/diff/267dc210 Branch: refs/heads/3.1.x-fixes Commit: 267dc2107ed7e79f167bceaf3d228ea808a20dec Parents: dac029e Author: Sergey BeryozkinAuthored: Tue Sep 6 12:10:17 2016 +0100 Committer: Sergey Beryozkin Committed: Tue Sep 6 12:11:27 2016 +0100 -- .../release/samples/jax_rs/spring_boot/README | 2 ++ .../release/samples/jax_rs/spring_boot/pom.xml | 18 ++ .../cxf/jaxrs/swagger/SwaggerUiResolver.java| 20 +--- 3 files changed, 33 insertions(+), 7 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cxf/blob/267dc210/distribution/src/main/release/samples/jax_rs/spring_boot/README -- diff --git a/distribution/src/main/release/samples/jax_rs/spring_boot/README b/distribution/src/main/release/samples/jax_rs/spring_boot/README index 7fdc9c1..81b4b4d 100644 --- a/distribution/src/main/release/samples/jax_rs/spring_boot/README +++ b/distribution/src/main/release/samples/jax_rs/spring_boot/README @@ -7,6 +7,8 @@ The sample uses Maven. It can be built and run from the command line: $ mvn -Pserver +or +$ java -jar target/spring-boot-sample-rs-cxf-3.2.0-SNAPSHOT.jar http://localhost:8080/services/helloservice/sayHello/ApacheCxfUser http://git-wip-us.apache.org/repos/asf/cxf/blob/267dc210/distribution/src/main/release/samples/jax_rs/spring_boot/pom.xml -- diff --git a/distribution/src/main/release/samples/jax_rs/spring_boot/pom.xml b/distribution/src/main/release/samples/jax_rs/spring_boot/pom.xml index 9a21d31..932e55f 100644 --- a/distribution/src/main/release/samples/jax_rs/spring_boot/pom.xml +++ b/distribution/src/main/release/samples/jax_rs/spring_boot/pom.xml @@ -32,6 +32,24 @@ ${cxf.version} + + + +org.springframework.boot +spring-boot-maven-plugin + + sample.rs.service.SampleRestApplication + + + + +repackage + + + + + + server http://git-wip-us.apache.org/repos/asf/cxf/blob/267dc210/rt/rs/description-swagger/src/main/java/org/apache/cxf/jaxrs/swagger/SwaggerUiResolver.java -- diff --git a/rt/rs/description-swagger/src/main/java/org/apache/cxf/jaxrs/swagger/SwaggerUiResolver.java b/rt/rs/description-swagger/src/main/java/org/apache/cxf/jaxrs/swagger/SwaggerUiResolver.java index 1df1119..2ac9664 100644 --- a/rt/rs/description-swagger/src/main/java/org/apache/cxf/jaxrs/swagger/SwaggerUiResolver.java +++ b/rt/rs/description-swagger/src/main/java/org/apache/cxf/jaxrs/swagger/SwaggerUiResolver.java @@ -44,14 +44,20 @@ public class SwaggerUiResolver { final String resourcesRootStart = "META-INF/resources/webjars/swagger-ui/"; for (URL url : ((URLClassLoader)cl).getURLs()) { String urlStr = url.toString(); -if (urlStr.contains("/swagger-ui") && urlStr.toString().endsWith(".jar")) { -urlStr = urlStr.substring(0, urlStr.length() - 4); -String version = urlStr.substring(urlStr.lastIndexOf("/swagger-ui") + 12); -if (swaggerUiVersion != null && !swaggerUiVersion.equals(version)) { -continue; +int swaggerUiIndex = urlStr.lastIndexOf("/swagger-ui-"); +if (swaggerUiIndex != -1) { +boolean urlEndsWithJarSep = urlStr.endsWith(".jar!/"); +if (urlEndsWithJarSep || urlStr.endsWith(".jar")) { +int offset = urlEndsWithJarSep ? 6 : 4; +String version = urlStr.substring(swaggerUiIndex + 12, urlStr.length() - offset); +if (swaggerUiVersion != null && !swaggerUiVersion.equals(version)) { +continue; +} +if (!urlEndsWithJarSep) { +urlStr = "jar:" + urlStr + "!/"; +} +
cxf git commit: [CXF-7040] Correctly identifying a Swagger UI root in repackaged JAR
Repository: cxf Updated Branches: refs/heads/master 9247aad0c -> df243e3d1 [CXF-7040] Correctly identifying a Swagger UI root in repackaged JAR Project: http://git-wip-us.apache.org/repos/asf/cxf/repo Commit: http://git-wip-us.apache.org/repos/asf/cxf/commit/df243e3d Tree: http://git-wip-us.apache.org/repos/asf/cxf/tree/df243e3d Diff: http://git-wip-us.apache.org/repos/asf/cxf/diff/df243e3d Branch: refs/heads/master Commit: df243e3d17e182ed6d839411ce996429db4d75e6 Parents: 9247aad Author: Sergey BeryozkinAuthored: Tue Sep 6 12:10:17 2016 +0100 Committer: Sergey Beryozkin Committed: Tue Sep 6 12:10:17 2016 +0100 -- .../release/samples/jax_rs/spring_boot/README | 2 ++ .../release/samples/jax_rs/spring_boot/pom.xml | 18 ++ .../cxf/jaxrs/swagger/SwaggerUiResolver.java| 20 +--- 3 files changed, 33 insertions(+), 7 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cxf/blob/df243e3d/distribution/src/main/release/samples/jax_rs/spring_boot/README -- diff --git a/distribution/src/main/release/samples/jax_rs/spring_boot/README b/distribution/src/main/release/samples/jax_rs/spring_boot/README index 7fdc9c1..81b4b4d 100644 --- a/distribution/src/main/release/samples/jax_rs/spring_boot/README +++ b/distribution/src/main/release/samples/jax_rs/spring_boot/README @@ -7,6 +7,8 @@ The sample uses Maven. It can be built and run from the command line: $ mvn -Pserver +or +$ java -jar target/spring-boot-sample-rs-cxf-3.2.0-SNAPSHOT.jar http://localhost:8080/services/helloservice/sayHello/ApacheCxfUser http://git-wip-us.apache.org/repos/asf/cxf/blob/df243e3d/distribution/src/main/release/samples/jax_rs/spring_boot/pom.xml -- diff --git a/distribution/src/main/release/samples/jax_rs/spring_boot/pom.xml b/distribution/src/main/release/samples/jax_rs/spring_boot/pom.xml index 764f52f..46e8dcd 100644 --- a/distribution/src/main/release/samples/jax_rs/spring_boot/pom.xml +++ b/distribution/src/main/release/samples/jax_rs/spring_boot/pom.xml @@ -32,6 +32,24 @@ ${cxf.version} + + + +org.springframework.boot +spring-boot-maven-plugin + + sample.rs.service.SampleRestApplication + + + + +repackage + + + + + + server http://git-wip-us.apache.org/repos/asf/cxf/blob/df243e3d/rt/rs/description-swagger/src/main/java/org/apache/cxf/jaxrs/swagger/SwaggerUiResolver.java -- diff --git a/rt/rs/description-swagger/src/main/java/org/apache/cxf/jaxrs/swagger/SwaggerUiResolver.java b/rt/rs/description-swagger/src/main/java/org/apache/cxf/jaxrs/swagger/SwaggerUiResolver.java index 1df1119..2ac9664 100644 --- a/rt/rs/description-swagger/src/main/java/org/apache/cxf/jaxrs/swagger/SwaggerUiResolver.java +++ b/rt/rs/description-swagger/src/main/java/org/apache/cxf/jaxrs/swagger/SwaggerUiResolver.java @@ -44,14 +44,20 @@ public class SwaggerUiResolver { final String resourcesRootStart = "META-INF/resources/webjars/swagger-ui/"; for (URL url : ((URLClassLoader)cl).getURLs()) { String urlStr = url.toString(); -if (urlStr.contains("/swagger-ui") && urlStr.toString().endsWith(".jar")) { -urlStr = urlStr.substring(0, urlStr.length() - 4); -String version = urlStr.substring(urlStr.lastIndexOf("/swagger-ui") + 12); -if (swaggerUiVersion != null && !swaggerUiVersion.equals(version)) { -continue; +int swaggerUiIndex = urlStr.lastIndexOf("/swagger-ui-"); +if (swaggerUiIndex != -1) { +boolean urlEndsWithJarSep = urlStr.endsWith(".jar!/"); +if (urlEndsWithJarSep || urlStr.endsWith(".jar")) { +int offset = urlEndsWithJarSep ? 6 : 4; +String version = urlStr.substring(swaggerUiIndex + 12, urlStr.length() - offset); +if (swaggerUiVersion != null && !swaggerUiVersion.equals(version)) { +continue; +} +if (!urlEndsWithJarSep) { +urlStr = "jar:" + urlStr + "!/"; +} +
[3/4] cxf git commit: Recording .gitmergeinfo Changes
Recording .gitmergeinfo Changes Project: http://git-wip-us.apache.org/repos/asf/cxf/repo Commit: http://git-wip-us.apache.org/repos/asf/cxf/commit/47661310 Tree: http://git-wip-us.apache.org/repos/asf/cxf/tree/47661310 Diff: http://git-wip-us.apache.org/repos/asf/cxf/diff/47661310 Branch: refs/heads/3.0.x-fixes Commit: 476613109aeca68b5fd3775283c2aaf216c15d06 Parents: 144271e Author: Colm O hEigeartaighAuthored: Tue Sep 6 11:12:39 2016 +0100 Committer: Colm O hEigeartaigh Committed: Tue Sep 6 11:12:39 2016 +0100 -- .gitmergeinfo | 1 + 1 file changed, 1 insertion(+) -- http://git-wip-us.apache.org/repos/asf/cxf/blob/47661310/.gitmergeinfo -- diff --git a/.gitmergeinfo b/.gitmergeinfo index c03e6bd..fed8572 100644 --- a/.gitmergeinfo +++ b/.gitmergeinfo @@ -1468,6 +1468,7 @@ M d7b533636ab8216af87bdd46f95953d0f79ea1e6 M d9f4142e87bc8a4f31c1bd1560a01a18b5c66407 M da352523c42bf69ab743f75a5216a03e26a20bef M daac77b18e2693ef4ad424937aedc764229a63ee +M dac029e0ec994f3872b47e6c404a0f207dd3fd3c M dacc6f8691be77db8e5d1abd4815256f80138d5e M dbc4a26cd47c2609c601dc3640b655ea0a2b60b9 M dc1a867f9527ce3431f097fde27a984b0c3c324e
[4/4] cxf git commit: Fixing merge
Fixing merge Project: http://git-wip-us.apache.org/repos/asf/cxf/repo Commit: http://git-wip-us.apache.org/repos/asf/cxf/commit/595c43e2 Tree: http://git-wip-us.apache.org/repos/asf/cxf/tree/595c43e2 Diff: http://git-wip-us.apache.org/repos/asf/cxf/diff/595c43e2 Branch: refs/heads/3.0.x-fixes Commit: 595c43e2131e3b0d483faa821417450ab4701c1f Parents: 4766131 Author: Colm O hEigeartaighAuthored: Tue Sep 6 11:15:14 2016 +0100 Committer: Colm O hEigeartaigh Committed: Tue Sep 6 11:15:14 2016 +0100 -- ...AbstractRequestAssertionConsumerHandler.java | 36 1 file changed, 36 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cxf/blob/595c43e2/rt/rs/security/sso/saml/src/main/java/org/apache/cxf/rs/security/saml/sso/AbstractRequestAssertionConsumerHandler.java -- diff --git a/rt/rs/security/sso/saml/src/main/java/org/apache/cxf/rs/security/saml/sso/AbstractRequestAssertionConsumerHandler.java b/rt/rs/security/sso/saml/src/main/java/org/apache/cxf/rs/security/saml/sso/AbstractRequestAssertionConsumerHandler.java index f5c8aae..cbfeab5 100644 --- a/rt/rs/security/sso/saml/src/main/java/org/apache/cxf/rs/security/saml/sso/AbstractRequestAssertionConsumerHandler.java +++ b/rt/rs/security/sso/saml/src/main/java/org/apache/cxf/rs/security/saml/sso/AbstractRequestAssertionConsumerHandler.java @@ -70,12 +70,7 @@ public abstract class AbstractRequestAssertionConsumerHandler extends AbstractSS private TokenReplayCache replayCache; private MessageContext messageContext; -<<< HEAD -=== -private String applicationURL; -private boolean parseApplicationURLFromRelayState; private String assertionConsumerServiceAddress; ->>> dac029e... CXF-7039 - JAX-RS Security SAML web SSO consumer service can not validate SAML response behind reverse proxy @Context public void setMessageContext(MessageContext mc) { @@ -362,40 +357,9 @@ public abstract class AbstractRequestAssertionConsumerHandler extends AbstractSS public void setEnforceResponseSigned(boolean enforceResponseSigned) { this.enforceResponseSigned = enforceResponseSigned; } -<<< HEAD -=== - -public String getApplicationURL() { -return applicationURL; -} - -/** - * Set the Application URL to forward to, for the unsolicited IdP case. - * @param applicationURL - */ -public void setApplicationURL(String applicationURL) { -this.applicationURL = applicationURL; -} - -public boolean isParseApplicationURLFromRelayState() { -return parseApplicationURLFromRelayState; -} - -/** - * Whether to parse the application URL to forward to from the RelayState, for the unsolicted IdP case. - * @param parseApplicationURLFromRelayState - */ -public void setParseApplicationURLFromRelayState(boolean parseApplicationURLFromRelayState) { -this.parseApplicationURLFromRelayState = parseApplicationURLFromRelayState; -} - -public String getAssertionConsumerServiceAddress() { -return assertionConsumerServiceAddress; -} public void setAssertionConsumerServiceAddress(String assertionConsumerServiceAddress) { this.assertionConsumerServiceAddress = assertionConsumerServiceAddress; } ->>> dac029e... CXF-7039 - JAX-RS Security SAML web SSO consumer service can not validate SAML response behind reverse proxy }
[2/4] cxf git commit: CXF-7039 - JAX-RS Security SAML web SSO consumer service can not validate SAML response behind reverse proxy
CXF-7039 - JAX-RS Security SAML web SSO consumer service can not validate SAML response behind reverse proxy # Conflicts: # rt/rs/security/sso/saml/src/main/java/org/apache/cxf/rs/security/saml/sso/AbstractRequestAssertionConsumerHandler.java Project: http://git-wip-us.apache.org/repos/asf/cxf/repo Commit: http://git-wip-us.apache.org/repos/asf/cxf/commit/144271ed Tree: http://git-wip-us.apache.org/repos/asf/cxf/tree/144271ed Diff: http://git-wip-us.apache.org/repos/asf/cxf/diff/144271ed Branch: refs/heads/3.0.x-fixes Commit: 144271ed753b223c216e9848c3e748ff62d320e9 Parents: 67cef8f Author: Colm O hEigeartaighAuthored: Tue Sep 6 11:03:55 2016 +0100 Committer: Colm O hEigeartaigh Committed: Tue Sep 6 11:12:39 2016 +0100 -- ...AbstractRequestAssertionConsumerHandler.java | 49 +++- 1 file changed, 47 insertions(+), 2 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cxf/blob/144271ed/rt/rs/security/sso/saml/src/main/java/org/apache/cxf/rs/security/saml/sso/AbstractRequestAssertionConsumerHandler.java -- diff --git a/rt/rs/security/sso/saml/src/main/java/org/apache/cxf/rs/security/saml/sso/AbstractRequestAssertionConsumerHandler.java b/rt/rs/security/sso/saml/src/main/java/org/apache/cxf/rs/security/saml/sso/AbstractRequestAssertionConsumerHandler.java index 16afc2a..f5c8aae 100644 --- a/rt/rs/security/sso/saml/src/main/java/org/apache/cxf/rs/security/saml/sso/AbstractRequestAssertionConsumerHandler.java +++ b/rt/rs/security/sso/saml/src/main/java/org/apache/cxf/rs/security/saml/sso/AbstractRequestAssertionConsumerHandler.java @@ -70,6 +70,12 @@ public abstract class AbstractRequestAssertionConsumerHandler extends AbstractSS private TokenReplayCache replayCache; private MessageContext messageContext; +<<< HEAD +=== +private String applicationURL; +private boolean parseApplicationURLFromRelayState; +private String assertionConsumerServiceAddress; +>>> dac029e... CXF-7039 - JAX-RS Security SAML web SSO consumer service can not validate SAML response behind reverse proxy @Context public void setMessageContext(MessageContext mc) { @@ -310,8 +316,11 @@ public abstract class AbstractRequestAssertionConsumerHandler extends AbstractSS ) { try { SAMLSSOResponseValidator ssoResponseValidator = new SAMLSSOResponseValidator(); -ssoResponseValidator.setAssertionConsumerURL( -messageContext.getUriInfo().getAbsolutePath().toString()); +String racsAddress = assertionConsumerServiceAddress; +if (racsAddress == null) { +racsAddress = messageContext.getUriInfo().getAbsolutePath().toString(); +} +ssoResponseValidator.setAssertionConsumerURL(racsAddress); ssoResponseValidator.setClientAddress( messageContext.getHttpServletRequest().getRemoteAddr()); @@ -353,4 +362,40 @@ public abstract class AbstractRequestAssertionConsumerHandler extends AbstractSS public void setEnforceResponseSigned(boolean enforceResponseSigned) { this.enforceResponseSigned = enforceResponseSigned; } +<<< HEAD +=== + +public String getApplicationURL() { +return applicationURL; +} + +/** + * Set the Application URL to forward to, for the unsolicited IdP case. + * @param applicationURL + */ +public void setApplicationURL(String applicationURL) { +this.applicationURL = applicationURL; +} + +public boolean isParseApplicationURLFromRelayState() { +return parseApplicationURLFromRelayState; +} + +/** + * Whether to parse the application URL to forward to from the RelayState, for the unsolicted IdP case. + * @param parseApplicationURLFromRelayState + */ +public void setParseApplicationURLFromRelayState(boolean parseApplicationURLFromRelayState) { +this.parseApplicationURLFromRelayState = parseApplicationURLFromRelayState; +} + +public String getAssertionConsumerServiceAddress() { +return assertionConsumerServiceAddress; +} + +public void setAssertionConsumerServiceAddress(String assertionConsumerServiceAddress) { +this.assertionConsumerServiceAddress = assertionConsumerServiceAddress; +} + +>>> dac029e... CXF-7039 - JAX-RS Security SAML web SSO consumer service can not validate SAML response behind reverse proxy }