[2/2] qpid-proton git commit: fNO-JIRA: [cpp] testme check program exists instead of using HAS_CPP11
fNO-JIRA: [cpp] testme check program exists instead of using HAS_CPP11 Using HAS_CPP11 won't work outside a build tree. Instead check for existence of test executables to detect tests that are not built under c++03 Project: http://git-wip-us.apache.org/repos/asf/qpid-proton/repo Commit: http://git-wip-us.apache.org/repos/asf/qpid-proton/commit/96972871 Tree: http://git-wip-us.apache.org/repos/asf/qpid-proton/tree/96972871 Diff: http://git-wip-us.apache.org/repos/asf/qpid-proton/diff/96972871 Branch: refs/heads/master Commit: 96972871c78ed9aabfca24e73e95b9e5f0f58c59 Parents: 32b9708 Author: Alan Conway Authored: Tue Sep 18 16:01:21 2018 -0400 Committer: Alan Conway Committed: Tue Sep 18 16:01:21 2018 -0400 -- cpp/examples/testme | 29 - tests/py/test_subprocess.py | 7 +++ 2 files changed, 23 insertions(+), 13 deletions(-) -- http://git-wip-us.apache.org/repos/asf/qpid-proton/blob/96972871/cpp/examples/testme -- diff --git a/cpp/examples/testme b/cpp/examples/testme index d4abc0a..5f30f23 100755 --- a/cpp/examples/testme +++ b/cpp/examples/testme @@ -21,7 +21,7 @@ # Run the C++ examples and verify that they behave as expected. # Example executables must be in PATH -import unittest, sys, shutil, os +import unittest, sys, shutil, os, errno from test_subprocess import Popen, TestProcessError, check_output import test_subprocess from os.path import dirname @@ -143,11 +143,13 @@ map{string(k1):int(42), symbol(k2):boolean(0)} self.assertTrue(len(out) > 0); self.assertEqual(["send"]*len(out), out) -@unittest.skipUnless(os.getenv('HAS_CPP11'), "not a C++11 build") def test_scheduled_send(self): -out = check_output(["scheduled_send", "-a", Broker.addr+"scheduled_send", "-t", "0.1", "-i", "0.001"]).split() -self.assertTrue(len(out) > 0); -self.assertEqual(["send"]*len(out), out) +try: +out = check_output(["scheduled_send", "-a", Broker.addr+"scheduled_send", "-t", "0.1", "-i", "0.001"]).split() +self.assertTrue(len(out) > 0); +self.assertEqual(["send"]*len(out), out) +except OSError as e: +if e.errno != errno.ENOENT: raise def test_message_properties(self): expect="""using put/get: short=123 string=foo symbol=sym @@ -161,15 +163,16 @@ expected conversion_error: "unexpected type, want: uint got: string" """ self.assertMultiLineEqual(expect, check_output(["message_properties"])) -@unittest.skipUnless(os.getenv('HAS_CPP11'), "not a C++11 build") def test_multithreaded_client(self): -got = check_output(["multithreaded_client", Broker.addr, "examples", "10"]) -self.maxDiff = None -self.assertIn("10 messages sent and received", got); - -#@unittest.skipUnless(os.getenv('HAS_CPP11'), "not a C++11 build") -@unittest.skip("Test is unstable, will enable when fixed") -def test_multithreaded_client_flow_control(self): +try: +got = check_output(["multithreaded_client", Broker.addr, "examples", "10"]) +self.maxDiff = None +self.assertIn("10 messages sent and received", got); +except OSError as e: +if e.errno != errno.ENOENT: raise + +# Test is unstable, enable when fixed +def skip_test_multithreaded_client_flow_control(self): got = check_output(["multithreaded_client_flow_control", Broker.addr, "examples", "10", "2"]) self.maxDiff = None self.assertIn("20 messages sent and received", got); http://git-wip-us.apache.org/repos/asf/qpid-proton/blob/96972871/tests/py/test_subprocess.py -- diff --git a/tests/py/test_subprocess.py b/tests/py/test_subprocess.py index 512123f..4905107 100644 --- a/tests/py/test_subprocess.py +++ b/tests/py/test_subprocess.py @@ -23,6 +23,13 @@ import subprocess, re, os, tempfile from subprocess import PIPE +def in_path(name): +"""Look for name in the PATH""" +for path in os.environ["PATH"].split(os.pathsep): +f = os.path.join(path, name) +if os.path.isfile(f) and os.access(f, os.X_OK): +return f + class TestProcessError(Exception): def __init__(self, proc, what, output=None): self.output = output - To unsubscribe, e-mail: commits-unsubscr...@qpid.apache.org For additional commands, e-mail: commits-h...@qpid.apache.org
[1/2] qpid-proton git commit: PROTON-1935: [cpp] fix minor c++03 compatibility issues.
Repository: qpid-proton Updated Branches: refs/heads/master 23a4b4f89 -> 96972871c PROTON-1935: [cpp] fix minor c++03 compatibility issues. Project: http://git-wip-us.apache.org/repos/asf/qpid-proton/repo Commit: http://git-wip-us.apache.org/repos/asf/qpid-proton/commit/32b9708c Tree: http://git-wip-us.apache.org/repos/asf/qpid-proton/tree/32b9708c Diff: http://git-wip-us.apache.org/repos/asf/qpid-proton/diff/32b9708c Branch: refs/heads/master Commit: 32b9708c6a1a59e5fce2c64930fdc16f02aa9cd4 Parents: 23a4b4f Author: Alan Conway Authored: Tue Sep 18 15:48:48 2018 -0400 Committer: Alan Conway Committed: Tue Sep 18 15:59:18 2018 -0400 -- cpp/src/connect_config.cpp | 2 +- cpp/src/value_test.cpp | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) -- http://git-wip-us.apache.org/repos/asf/qpid-proton/blob/32b9708c/cpp/src/connect_config.cpp -- diff --git a/cpp/src/connect_config.cpp b/cpp/src/connect_config.cpp index 0dc577a..3ec16fb 100644 --- a/cpp/src/connect_config.cpp +++ b/cpp/src/connect_config.cpp @@ -202,7 +202,7 @@ string parse_default(connection_options& opts) { std::ifstream f; try { f.exceptions(~std::ifstream::goodbit); -f.open(name); +f.open(name.c_str()); } catch (const std::exception& e) { raise(msg() << "error opening '" << name << "': " << e.what()); } http://git-wip-us.apache.org/repos/asf/qpid-proton/blob/32b9708c/cpp/src/value_test.cpp -- diff --git a/cpp/src/value_test.cpp b/cpp/src/value_test.cpp index 64a1d72..2d991c4 100644 --- a/cpp/src/value_test.cpp +++ b/cpp/src/value_test.cpp @@ -161,12 +161,12 @@ int main(int, char**) { many > restricted_pairs(si_pairs); RUN_TEST(failed, (map_test >( restricted_pairs, "{:a=0, :b=1, :c=2}"))); +RUN_TEST(failed, null_test()); #if PN_CPP_HAS_CPP11 RUN_TEST(failed, sequence_test >( ARRAY, many() + binary("xx") + binary("yy"), "@PN_BINARY[b\"xx\", b\"yy\"]")); RUN_TEST(failed, (map_test >(si_pairs, ""))); -RUN_TEST(failed, null_test()); #endif return failed; } catch (const std::exception& e) { - To unsubscribe, e-mail: commits-unsubscr...@qpid.apache.org For additional commands, e-mail: commits-h...@qpid.apache.org
qpid-proton git commit: PROTON-1935: minor correction to docs/connect_config.md
Repository: qpid-proton Updated Branches: refs/heads/master b164d99c8 -> 23a4b4f89 PROTON-1935: minor correction to docs/connect_config.md Project: http://git-wip-us.apache.org/repos/asf/qpid-proton/repo Commit: http://git-wip-us.apache.org/repos/asf/qpid-proton/commit/23a4b4f8 Tree: http://git-wip-us.apache.org/repos/asf/qpid-proton/tree/23a4b4f8 Diff: http://git-wip-us.apache.org/repos/asf/qpid-proton/diff/23a4b4f8 Branch: refs/heads/master Commit: 23a4b4f8993fb3814e7be4b2c851034339febfc1 Parents: b164d99 Author: Alan Conway Authored: Tue Sep 18 14:51:55 2018 -0400 Committer: Alan Conway Committed: Tue Sep 18 14:51:55 2018 -0400 -- docs/connect_config.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) -- http://git-wip-us.apache.org/repos/asf/qpid-proton/blob/23a4b4f8/docs/connect_config.md -- diff --git a/docs/connect_config.md b/docs/connect_config.md index f0419cc..63044be 100644 --- a/docs/connect_config.md +++ b/docs/connect_config.md @@ -29,7 +29,7 @@ values, all properties are optional. "enable": true, // [bool] Enable or disable SASL "mechanisms": null, // [list] List of allowed SASL mechanism names. // If null the library determines the default list. -"allow_insecure": false // [boolean] Allow mechanisms that send clear-text passwords +"allow_insecure": false // [boolean] Allow mechanisms that send unencrypted clear-text passwords }, // Note: it is an error to have a "tls" object unless scheme="amqps" - To unsubscribe, e-mail: commits-unsubscr...@qpid.apache.org For additional commands, e-mail: commits-h...@qpid.apache.org
qpid-broker-j git commit: QPID-8240 : Detect idle connections
Repository: qpid-broker-j Updated Branches: refs/heads/master c8c820330 -> 339a57f6f QPID-8240 : Detect idle connections Project: http://git-wip-us.apache.org/repos/asf/qpid-broker-j/repo Commit: http://git-wip-us.apache.org/repos/asf/qpid-broker-j/commit/339a57f6 Tree: http://git-wip-us.apache.org/repos/asf/qpid-broker-j/tree/339a57f6 Diff: http://git-wip-us.apache.org/repos/asf/qpid-broker-j/diff/339a57f6 Branch: refs/heads/master Commit: 339a57f6faf0edad685e9d72be105ca76d8ac9bb Parents: c8c8203 Author: Robert Godfrey Authored: Tue Sep 18 20:18:02 2018 +0200 Committer: Robert Godfrey Committed: Tue Sep 18 20:18:02 2018 +0200 -- .../server/consumer/AbstractConsumerTarget.java | 2 +- .../server/model/AbstractConfiguredObject.java | 6 +- .../apache/qpid/server/model/Connection.java| 20 ++- .../qpid/server/transport/AMQPConnection.java | 4 + .../transport/AbstractAMQPConnection.java | 98 +++--- .../protocol/v0_10/AMQPConnection_0_10Impl.java | 34 ++--- .../protocol/v0_8/AMQPConnection_0_8Impl.java | 42 ++ .../protocol/v1_0/AMQPConnection_1_0Impl.java | 128 +++ .../protocol/v1_0/FrameOutputHandler.java | 33 - .../server/protocol/v1_0/framing/AMQFrame.java | 10 -- .../protocol/v1_0/framing/TransportFrame.java | 1 + .../protocol/v1_0/ProtocolEngine_1_0_0Test.java | 10 +- 12 files changed, 182 insertions(+), 206 deletions(-) -- http://git-wip-us.apache.org/repos/asf/qpid-broker-j/blob/339a57f6/broker-core/src/main/java/org/apache/qpid/server/consumer/AbstractConsumerTarget.java -- diff --git a/broker-core/src/main/java/org/apache/qpid/server/consumer/AbstractConsumerTarget.java b/broker-core/src/main/java/org/apache/qpid/server/consumer/AbstractConsumerTarget.java index c590eca..7b5429e 100644 --- a/broker-core/src/main/java/org/apache/qpid/server/consumer/AbstractConsumerTarget.java +++ b/broker-core/src/main/java/org/apache/qpid/server/consumer/AbstractConsumerTarget.java @@ -208,7 +208,7 @@ public abstract class AbstractConsumerTarget public final void send(final MessageInstanceConsumer consumer, MessageInstance entry, boolean batch) { doSend(consumer, entry, batch); - +getSession().getAMQPConnection().updateLastMessageOutboundTime(); if (consumer.acquires()) { entry.makeAcquisitionStealable(); http://git-wip-us.apache.org/repos/asf/qpid-broker-j/blob/339a57f6/broker-core/src/main/java/org/apache/qpid/server/model/AbstractConfiguredObject.java -- diff --git a/broker-core/src/main/java/org/apache/qpid/server/model/AbstractConfiguredObject.java b/broker-core/src/main/java/org/apache/qpid/server/model/AbstractConfiguredObject.java index 3bc6c84..f7b77f1 100644 --- a/broker-core/src/main/java/org/apache/qpid/server/model/AbstractConfiguredObject.java +++ b/broker-core/src/main/java/org/apache/qpid/server/model/AbstractConfiguredObject.java @@ -3433,7 +3433,11 @@ public abstract class AbstractConfiguredObject> im { if(allStats || statistics.contains(stat.getName())) { -map.put(stat.getName(), stat.getValue(this)); +Object value = stat.getValue(this); +if(value != null) +{ +map.put(stat.getName(), value); +} } } return map; http://git-wip-us.apache.org/repos/asf/qpid-broker-j/blob/339a57f6/broker-core/src/main/java/org/apache/qpid/server/model/Connection.java -- diff --git a/broker-core/src/main/java/org/apache/qpid/server/model/Connection.java b/broker-core/src/main/java/org/apache/qpid/server/model/Connection.java index 14ee17a..62cefc1 100644 --- a/broker-core/src/main/java/org/apache/qpid/server/model/Connection.java +++ b/broker-core/src/main/java/org/apache/qpid/server/model/Connection.java @@ -120,7 +120,7 @@ public interface Connection> extends ConfiguredObject description = "Total size of all messages received by this connection.") long getBytesIn(); -// currently this reports outbound message content size without header. +// currently this reports outbound message content size without header. // See also QPID-7689: https://issues.apache.org/jira/browse/QPID-7689?focusedCommentId=16022923#comment-16022923 @SuppressWarnings("unused") @ManagedStatistic(statisticType = StatisticType.CUMULATIVE, units = StatisticUnit.BYTES, label = "Outbound", @@ -143,6 +143,24 @@ public interface Connection> extends ConfiguredObject Date getLastIoTime(); @SuppressWarnings("unused") +
qpid-dispatch git commit: DISPATCH-1123 - Added shell for link-endpoint implementation. Header now compiles.
Repository: qpid-dispatch Updated Branches: refs/heads/master 46549fa9e -> 290292eee DISPATCH-1123 - Added shell for link-endpoint implementation. Header now compiles. Project: http://git-wip-us.apache.org/repos/asf/qpid-dispatch/repo Commit: http://git-wip-us.apache.org/repos/asf/qpid-dispatch/commit/290292ee Tree: http://git-wip-us.apache.org/repos/asf/qpid-dispatch/tree/290292ee Diff: http://git-wip-us.apache.org/repos/asf/qpid-dispatch/diff/290292ee Branch: refs/heads/master Commit: 290292eeec33da784ed6e8d45f18b8c8299d297c Parents: 46549fa Author: Ted Ross Authored: Tue Sep 18 13:24:01 2018 -0400 Committer: Ted Ross Committed: Tue Sep 18 13:24:01 2018 -0400 -- src/CMakeLists.txt | 1 + src/router_core/core_link_endpoint.c | 66 +++ src/router_core/core_link_endpoint.h | 2 +- 3 files changed, 68 insertions(+), 1 deletion(-) -- http://git-wip-us.apache.org/repos/asf/qpid-dispatch/blob/290292ee/src/CMakeLists.txt -- diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index addd168..c533e9f 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -84,6 +84,7 @@ set(qpid_dispatch_SOURCES router_core/agent_link.c router_core/agent_router.c router_core/connections.c + router_core/core_link_endpoint.c router_core/edge_control.c router_core/error.c router_core/exchange_bindings.c http://git-wip-us.apache.org/repos/asf/qpid-dispatch/blob/290292ee/src/router_core/core_link_endpoint.c -- diff --git a/src/router_core/core_link_endpoint.c b/src/router_core/core_link_endpoint.c new file mode 100644 index 000..a2f95a0 --- /dev/null +++ b/src/router_core/core_link_endpoint.c @@ -0,0 +1,66 @@ +/* + * 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. + */ + +#include "core_link_endpoint.h" + + +void qdrc_endpoint_bind_mobile_address(qdr_core_t *core, + const char *address, + int phase, + qdrc_endpoint_descriptor_t *descriptor, + void *bind_context) +{ +} + + +qdrc_endpoint_t *qdrc_endpoint_create_link(qdr_core_t *core, + qd_direction_t dir, + qdr_terminus_t *source, + qdr_terminus_t *target, + qdrc_endpoint_descriptor_t *descriptor, + void *link_context) +{ +return 0; +} + + +qd_direction_t qdrc_endpoint_get_direction(const qdrc_endpoint_t *endpoint) +{ +return QD_INCOMING; +} + + +void qdrc_endpoint_flow(qdrc_endpoint_t *endpoint, int credit_added) +{ +} + + +void qdrc_endpoint_send(qdrc_endpoint_t *endpoint, qdr_delivery_t *delivery) +{ +} + + +void qdrc_endpoint_update(qdrc_endpoint_t *endpoint, qdr_delivery_t *delivery) +{ +} + + +void qdrc_endpoint_detach(qdrc_endpoint_t *endpoint, qdr_error_t *error) +{ +} http://git-wip-us.apache.org/repos/asf/qpid-dispatch/blob/290292ee/src/router_core/core_link_endpoint.h -- diff --git a/src/router_core/core_link_endpoint.h b/src/router_core/core_link_endpoint.h index 114a95c..4f01f94 100644 --- a/src/router_core/core_link_endpoint.h +++ b/src/router_core/core_link_endpoint.h @@ -46,7 +46,7 @@ typedef void (*qdrc_update_t) (void *link_context, qdr_delivery_t *delivery); typedef void (*qdrc_transfer_t) (void *link_context, - qdr_delivery_t *delivery; + qdr_delivery_t *delivery, qd_message_t *message); typedef void (*qdrc_detach_t)
qpid-dispatch git commit: DISPATCH-1100: fix typo in schema documentation
Repository: qpid-dispatch Updated Branches: refs/heads/master 6a56c1efa -> 46549fa9e DISPATCH-1100: fix typo in schema documentation Project: http://git-wip-us.apache.org/repos/asf/qpid-dispatch/repo Commit: http://git-wip-us.apache.org/repos/asf/qpid-dispatch/commit/46549fa9 Tree: http://git-wip-us.apache.org/repos/asf/qpid-dispatch/tree/46549fa9 Diff: http://git-wip-us.apache.org/repos/asf/qpid-dispatch/diff/46549fa9 Branch: refs/heads/master Commit: 46549fa9edbb110ac3b0515ebfc5b34034f0513e Parents: 6a56c1e Author: Kenneth Giusti Authored: Tue Sep 18 13:07:22 2018 -0400 Committer: Kenneth Giusti Committed: Tue Sep 18 13:07:22 2018 -0400 -- python/qpid_dispatch/management/qdrouter.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) -- http://git-wip-us.apache.org/repos/asf/qpid-dispatch/blob/46549fa9/python/qpid_dispatch/management/qdrouter.json -- diff --git a/python/qpid_dispatch/management/qdrouter.json b/python/qpid_dispatch/management/qdrouter.json index 06324af..77ac6e8 100644 --- a/python/qpid_dispatch/management/qdrouter.json +++ b/python/qpid_dispatch/management/qdrouter.json @@ -1146,13 +1146,13 @@ }, "containerId": { "type": "string", -"description": "ContainerID for the target container. Only one of containerId or connection should be specified for a linkRoute. Specifying both will result in the linkRoute not being created. For linkRoutes created with a lifetimePolicy of 'connection-close' the linkRoute configuration will be deleted when the last connection through which this container can be accessed is closed.", +"description": "ContainerID for the target container. Only one of containerId or connection should be specified for a linkRoute. Specifying both will result in the linkRoute not being created. For linkRoutes created with 'deleteOnClose' true the linkRoute configuration will be deleted when the last connection through which this container can be accessed is closed.", "create": true, "required": false }, "connection": { "type": "string", -"description": "The name from a connector or listener. Only one of containerId or connection should be specified for a linkRoute. Specifying both will result in the linkRoute not being created. For linkRoutes created with a lifetimePolicy of 'connection-close' the linkRoute configuration will be deleted when the connection is closed.", +"description": "The name from a connector or listener. Only one of containerId or connection should be specified for a linkRoute. Specifying both will result in the linkRoute not being created. For linkRoutes created with 'deleteOnClose' true the linkRoute configuration will be deleted when the connection is closed.", "create": true, "required": false }, - To unsubscribe, e-mail: commits-unsubscr...@qpid.apache.org For additional commands, e-mail: commits-h...@qpid.apache.org
qpid-dispatch git commit: DISPATCH-1123 - Added first draft of the API header for in-core link endpoints.
Repository: qpid-dispatch Updated Branches: refs/heads/master 92f00baf6 -> 6a56c1efa DISPATCH-1123 - Added first draft of the API header for in-core link endpoints. Project: http://git-wip-us.apache.org/repos/asf/qpid-dispatch/repo Commit: http://git-wip-us.apache.org/repos/asf/qpid-dispatch/commit/6a56c1ef Tree: http://git-wip-us.apache.org/repos/asf/qpid-dispatch/tree/6a56c1ef Diff: http://git-wip-us.apache.org/repos/asf/qpid-dispatch/diff/6a56c1ef Branch: refs/heads/master Commit: 6a56c1efa2be71836b137e5d494b3a284de9b01a Parents: 92f00ba Author: Ted Ross Authored: Tue Sep 18 11:50:32 2018 -0400 Committer: Ted Ross Committed: Tue Sep 18 11:50:32 2018 -0400 -- src/router_core/core_link_endpoint.h | 90 +++ 1 file changed, 90 insertions(+) -- http://git-wip-us.apache.org/repos/asf/qpid-dispatch/blob/6a56c1ef/src/router_core/core_link_endpoint.h -- diff --git a/src/router_core/core_link_endpoint.h b/src/router_core/core_link_endpoint.h new file mode 100644 index 000..114a95c --- /dev/null +++ b/src/router_core/core_link_endpoint.h @@ -0,0 +1,90 @@ +/* + * 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. + */ + +#ifndef qd_router_core_endpoint_types +#define qd_router_core_endpoint_types 1 + +typedef struct qdrc_endpoint_t qdrc_endpoint_t; + +#endif + + + +#ifndef qd_router_core_endpoint +#define qd_router_core_endpoint 1 + +#include "router_core_private.h" + +typedef bool (*qdrc_first_attach_t) (void *bind_context, + qdrc_endpoint_t *endpoint, + void**link_context, + qdr_error_t **error); + +typedef bool (*qdrc_second_attach_t) (void *link_context); + +typedef void (*qdrc_flow_t) (void *link_context, + int available_credit, + int available_window); + +typedef void (*qdrc_update_t) (void *link_context, + qdr_delivery_t *delivery); + +typedef void (*qdrc_transfer_t) (void *link_context, + qdr_delivery_t *delivery; + qd_message_t *message); + +typedef void (*qdrc_detach_t) (void*link_context, + qdr_error_t *error); + + +typedef struct qdrc_endpoint_descriptor_t { +qdrc_first_attach_t on_first_attach; +qdrc_second_attach_t on_second_attach; +qdrc_flow_t on_flow; +qdrc_update_t on_update; +qdrc_transfer_t on_transfer; +qdrc_detach_t on_detach; +} qdrc_endpoint_descriptor_t; + + +void qdrc_endpoint_bind_mobile_address(qdr_core_t *core, + const char *address, + int phase, + qdrc_endpoint_descriptor_t *descriptor, + void *bind_context); + + +qdrc_endpoint_t *qdrc_endpoint_create_link(qdr_core_t *core, + qd_direction_t dir, + qdr_terminus_t *source, + qdr_terminus_t *target, + qdrc_endpoint_descriptor_t *descriptor, + void *link_context); + +qd_direction_t qdrc_endpoint_get_direction(const qdrc_endpoint_t *endpoint); + +void qdrc_endpoint_flow(qdrc_endpoint_t *endpoint, int credit_added); + +void qdrc_endpoint_send(qdrc_endpoint_t *endpoint, qdr_delivery_t *delivery); + +void qdrc_endpoint_update(qdrc_endpoint_t *endpoint, qdr_delivery_t *delivery); + +void qdrc_endpoint_detach(qdrc_endpoint_t *endpoint, qdr_error_t *error); + +#endif - To
qpid-proton git commit: PROTON-1935: [cpp] connection configuration and default connect()
Repository: qpid-proton Updated Branches: refs/heads/master 348e9da89 -> b164d99c8 PROTON-1935: [cpp] connection configuration and default connect() docs/connect-config.md: describes connection configuration JSON format. container::connect() connects using the default configuration file Additional API in proton::connect_config allows the user to parse configuration and apply to a connection_options object for more flexible use. Project: http://git-wip-us.apache.org/repos/asf/qpid-proton/repo Commit: http://git-wip-us.apache.org/repos/asf/qpid-proton/commit/b164d99c Tree: http://git-wip-us.apache.org/repos/asf/qpid-proton/tree/b164d99c Diff: http://git-wip-us.apache.org/repos/asf/qpid-proton/diff/b164d99c Branch: refs/heads/master Commit: b164d99c80129a2a24ae7203846579569c9cf3b5 Parents: 348e9da Author: Alan Conway Authored: Tue Sep 18 09:31:47 2018 -0400 Committer: Alan Conway Committed: Tue Sep 18 11:03:25 2018 -0400 -- INSTALL.md| 2 + c/include/proton/cproton.i| 1 + c/include/proton/version.h.in | 2 + cpp/CMakeLists.txt| 20 ++- cpp/docs/CMakeLists.txt | 2 +- cpp/docs/user.doxygen.in | 3 +- cpp/include/proton/connect_config.hpp | 49 +++ cpp/include/proton/container.hpp | 6 + cpp/src/connect_config.cpp| 219 + cpp/src/connect_config_dummy.cpp | 31 cpp/src/connect_config_test.cpp | 142 +++ cpp/src/connection_options.cpp| 1 + cpp/src/container.cpp | 4 + cpp/src/proactor_container_impl.cpp | 7 + cpp/src/proactor_container_impl.hpp | 1 + cpp/src/test_bits.hpp | 8 ++ docs/connect_config.md| 42 ++ tools/cmake/Modules/FindJsonCpp.cmake | 70 + 18 files changed, 607 insertions(+), 3 deletions(-) -- http://git-wip-us.apache.org/repos/asf/qpid-proton/blob/b164d99c/INSTALL.md -- diff --git a/INSTALL.md b/INSTALL.md index 430d648..76e6af2 100644 --- a/INSTALL.md +++ b/INSTALL.md @@ -20,6 +20,7 @@ Linux dependencies - GCC 4.4+ - Cyrus SASL 2.1+ (for SASL support) - OpenSSL 1.0+ (for SSL support) + - JsonCpp 1.8+ for C++ connection configuration file support Windows dependencies @@ -46,6 +47,7 @@ language. $ yum install swig # Required for all bindings $ yum install python-devel # Python $ yum install ruby-devel rubygem-minitest# Ruby +$ yum install jsoncpp-devel # C++ optional config file # Dependencies needed to generate documentation $ yum install epydoc # Python http://git-wip-us.apache.org/repos/asf/qpid-proton/blob/b164d99c/c/include/proton/cproton.i -- diff --git a/c/include/proton/cproton.i b/c/include/proton/cproton.i index 430deca..c642438 100644 --- a/c/include/proton/cproton.i +++ b/c/include/proton/cproton.i @@ -37,6 +37,7 @@ typedef unsigned long int uintptr_t; %include "proton/import_export.h" %ignore _PROTON_VERSION_H; +%ignore PN_INSTALL_PREFIX; %include "proton/version.h" /* We cannot safely just wrap pn_bytes_t but each language binding must have a typemap for it - presumably to a string type */ http://git-wip-us.apache.org/repos/asf/qpid-proton/blob/b164d99c/c/include/proton/version.h.in -- diff --git a/c/include/proton/version.h.in b/c/include/proton/version.h.in index 133b0bb..13ee411 100644 --- a/c/include/proton/version.h.in +++ b/c/include/proton/version.h.in @@ -26,4 +26,6 @@ #define PN_VERSION_MINOR @PN_VERSION_MINOR@ #define PN_VERSION_POINT @PN_VERSION_POINT@ +#define PN_INSTALL_PREFIX "@CMAKE_INSTALL_PREFIX@" + #endif /* version.h */ http://git-wip-us.apache.org/repos/asf/qpid-proton/blob/b164d99c/cpp/CMakeLists.txt -- diff --git a/cpp/CMakeLists.txt b/cpp/CMakeLists.txt index d0b3cfb..35f5478 100644 --- a/cpp/CMakeLists.txt +++ b/cpp/CMakeLists.txt @@ -27,6 +27,16 @@ include(versions.cmake) set (BUILD_CPP_03 OFF CACHE BOOL "Compile the C++ binding as C++03 even when C++11 is available") +# Check for JSON-CPP support for connection configuration +find_package(JsonCpp) +option(ENABLE_JSONCPP "Use jsoncpp parser for connection configuration" ${JsonCpp_FOUND}) +if (ENABLE_JSONCPP) + set(CONNECT_CONFIG_SRC src/connect_config.cpp) + set(CONNECT_CONFIG_LIBS ${JsonCpp_LIBRARY}) +else() + set(CONNECT_CONFIG_SRC src/connect_config_dummy.cpp) +endif() + # This effectively
[3/3] qpid-broker-j git commit: QPID-8241 : Remove use of javax.xml.bind.DatatypeConverter
QPID-8241 : Remove use of javax.xml.bind.DatatypeConverter Project: http://git-wip-us.apache.org/repos/asf/qpid-broker-j/repo Commit: http://git-wip-us.apache.org/repos/asf/qpid-broker-j/commit/c8c82033 Tree: http://git-wip-us.apache.org/repos/asf/qpid-broker-j/tree/c8c82033 Diff: http://git-wip-us.apache.org/repos/asf/qpid-broker-j/diff/c8c82033 Branch: refs/heads/master Commit: c8c82033021fb8b0ebfea5bd6367832780a3a8c4 Parents: b770054 Author: Robert Godfrey Authored: Tue Sep 18 16:14:55 2018 +0200 Committer: Robert Godfrey Committed: Tue Sep 18 16:14:55 2018 +0200 -- .../berkeleydb/BDBAMQP10V0UpgradeTest.java | 4 +- .../server/model/AttributeValueConverter.java | 45 +- .../AutoGeneratedSelfSignedKeyStoreImpl.java| 8 +- .../security/SiteSpecificTrustStoreImpl.java| 4 +- .../security/auth/database/HashedUser.java | 5 +- .../AbstractScramAuthenticationManager.java | 12 +- .../manager/AuthenticationResultCacher.java | 4 +- .../auth/manager/MD5AuthenticationProvider.java | 5 +- .../OAuth2AuthenticationProviderImpl.java | 5 +- ...oudFoundryOAuth2IdentityResolverService.java | 5 +- .../auth/sasl/scram/ScramSaslServer.java| 6 +- .../encryption/AESKeyFileEncrypter.java | 4 +- .../apache/qpid/server/util/DataUrlUtils.java | 4 +- .../org/apache/qpid/server/util/StringUtil.java | 16 +- .../org/apache/qpid/server/util/Strings.java| 6 +- .../model/AttributeValueConverterTest.java | 2 +- .../singleton/AbstractConfiguredObjectTest.java | 2 +- .../server/security/NonJavaKeyStoreTest.java| 6 +- ...e64MD5PasswordFilePrincipalDatabaseTest.java | 4 +- .../auth/manager/oauth2/OAuth2MockEndpoint.java | 4 +- .../sasl/crammd5/CramMd5NegotiatorTest.java | 7 +- .../auth/sasl/scram/ScramNegotiatorTest.java| 8 +- .../transport/TCPandSSLTransportTest.java | 4 +- .../network/security/ssl/SSLUtilTest.java | 754 +-- .../servlet/ServletConnectionPrincipal.java | 4 +- .../ConfiguredObjectExpressionFactory.java | 54 +- .../plugin/servlet/rest/SaslServlet.java| 6 +- .../plugin/GunzipOutputStreamTest.java | 7 +- .../query/ConfiguredObjectQueryTest.java| 15 +- .../client/MessageVerifier.java | 7 +- .../apache/qpid/tests/protocol/SaslUtils.java | 15 +- .../apache/qpid/tests/http/HttpTestHelper.java | 4 +- .../tests/http/authentication/SaslTest.java | 17 +- .../jms_1_1/extensions/tls/TlsTest.java | 8 +- .../apache/qpid/tools/RestStressTestClient.java | 8 +- 35 files changed, 580 insertions(+), 489 deletions(-) -- http://git-wip-us.apache.org/repos/asf/qpid-broker-j/blob/c8c82033/bdbstore/systests/src/test/java/org/apache/qpid/server/store/berkeleydb/BDBAMQP10V0UpgradeTest.java -- diff --git a/bdbstore/systests/src/test/java/org/apache/qpid/server/store/berkeleydb/BDBAMQP10V0UpgradeTest.java b/bdbstore/systests/src/test/java/org/apache/qpid/server/store/berkeleydb/BDBAMQP10V0UpgradeTest.java index 2d8fd16..c8c5e9a 100644 --- a/bdbstore/systests/src/test/java/org/apache/qpid/server/store/berkeleydb/BDBAMQP10V0UpgradeTest.java +++ b/bdbstore/systests/src/test/java/org/apache/qpid/server/store/berkeleydb/BDBAMQP10V0UpgradeTest.java @@ -42,7 +42,6 @@ import javax.jms.Message; import javax.jms.MessageConsumer; import javax.jms.Queue; import javax.jms.Session; -import javax.xml.bind.DatatypeConverter; import org.junit.Before; import org.junit.BeforeClass; @@ -50,6 +49,7 @@ import org.junit.Test; import org.apache.qpid.server.model.Protocol; import org.apache.qpid.server.util.FileUtils; +import org.apache.qpid.server.util.StringUtil; import org.apache.qpid.server.virtualhostnode.berkeleydb.BDBVirtualHostNode; import org.apache.qpid.systests.JmsTestBase; import org.apache.qpid.tests.utils.ConfigItem; @@ -117,7 +117,7 @@ public class BDBAMQP10V0UpgradeTest extends UpgradeTestBase { MessageDigest digest = MessageDigest.getInstance("SHA-256"); byte[] hash = digest.digest(content); -return DatatypeConverter.printHexBinary(hash); +return StringUtil.toHex(hash); } @Override http://git-wip-us.apache.org/repos/asf/qpid-broker-j/blob/c8c82033/broker-core/src/main/java/org/apache/qpid/server/model/AttributeValueConverter.java -- diff --git a/broker-core/src/main/java/org/apache/qpid/server/model/AttributeValueConverter.java b/broker-core/src/main/java/org/apache/qpid/server/model/AttributeValueConverter.java index a335fd1..b0f50ab 100644 --- a/broker-core/src/main/java/org/apache/qpid/server/model/AttributeValueConverter.java +++
[2/3] qpid-broker-j git commit: QPID-8241 : Remove use of javax.xml.bind.DatatypeConverter
http://git-wip-us.apache.org/repos/asf/qpid-broker-j/blob/c8c82033/broker-core/src/test/java/org/apache/qpid/server/transport/network/security/ssl/SSLUtilTest.java -- diff --git a/broker-core/src/test/java/org/apache/qpid/server/transport/network/security/ssl/SSLUtilTest.java b/broker-core/src/test/java/org/apache/qpid/server/transport/network/security/ssl/SSLUtilTest.java index 85833c0..7498b6a 100644 --- a/broker-core/src/test/java/org/apache/qpid/server/transport/network/security/ssl/SSLUtilTest.java +++ b/broker-core/src/test/java/org/apache/qpid/server/transport/network/security/ssl/SSLUtilTest.java @@ -36,6 +36,7 @@ import java.security.cert.Certificate; import java.security.cert.CertificateException; import java.security.cert.X509Certificate; import java.util.Arrays; +import java.util.Base64; import java.util.Collections; import java.util.Enumeration; import java.util.List; @@ -45,7 +46,6 @@ import javax.net.ssl.SSLContext; import javax.net.ssl.SSLEngine; import javax.net.ssl.SSLEngineResult; import javax.net.ssl.TrustManagerFactory; -import javax.xml.bind.DatatypeConverter; import org.junit.Test; @@ -382,376 +382,376 @@ public class SSLUtilTest extends UnitTestBase return clientEngine; } -private static byte[] TRUSTSTORE = DatatypeConverter.parseBase64Binary("/u3+7QINAgAPa2V5c3RvcmUyLWFsaWFzAAABVutBZIkABVguNTA5AAAGHzCCBhsw" - +"ggQDoAMCAQICCQCrOvhXap7bYTANBgkqhkiG9w0BAQUFADBcMQswCQYDVQQGEwJVUzEQMA4GA1UE" - +"CBMHcHJpdmF0ZTERMA8GA1UEBxMIcHJvdmluY2UxDTALBgNVBAoTBGNpdHkxGTAXBgNVBAMTEGFt" - +"cXAuZXhhbXBsZS5jb20wHhcNMTYwOTAyMTQxNTE1WhcNMjYwNzEyMTQxNTE1WjBcMQswCQYDVQQG" - +"EwJVUzEQMA4GA1UECBMHcHJpdmF0ZTERMA8GA1UEBxMIcHJvdmluY2UxDTALBgNVBAoTBGNpdHkx" - +"GTAXBgNVBAMTEGFtcXAuZXhhbXBsZS5jb20wggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoIC" - +"AQCwc7RdXSWaFrtNp7RQ1YEh0n2S8VjtBosY5FB6BoNe2B14LyIVQqA/bmbgZJAfn2RTKnEcxyHL" - +"qM1PZThj2lyb9/mtvt2k4gRviP4/ZYbcrtByParZPERu7gmxe7eaJn7ghpqVY5zaJ96XQFSiSzNK" - +"6jBNswx2zMhMnLEzegXFbLL125K8B/++1dJNK2gB3o/M9692mygrJSvGwuPmDYcWQnzsyLPTYx0/" - +"Y+eNtnaBx+4NjsSLCvlp9G7pKqHiKb4agatLHNPyMubt600eV56xWeZ4ujvZgPuPmNhO0ogtZpFW" - +"tF7NrPSCbEXEMVhSgh9mrR1dyR5amEFWCvs23kSDtQZl895Z5CXm2GRAc10HYu5NJym4UE1utsAP" - +"nRhcJ7lOl/lnMfXG+rbn0fnBbh5zoXi32UcCkldNLbXn9fBSn17hRZ5TmXmGOpBxa7By8k+GRkGD" - +"ntQrWHIJdalI73c5Jne4W9NOkWKvTw5wKOUB9HGispvbrOXH9/Qfx/techw9qlK6WL3v7h9VE5w0" - +"+DXiDy4CGq19g9L+XAQq73AvROOTruiDFsPg5rqi4cZVEAhZbHAfe+s59ZOzGIgU5BXVtsmIyiK3" - +"wqQxOlsi6NNpdpv6FM8pQaOnq3tQr67R2xFmRQX6VBD+8X5xrpHNXVUR5VUJC3bc8d98J6Khi3RK" - +"uQIDAQABo4HfMIHcMB0GA1UdDgQWBBQdgOTsHaTNceb+faB5aBhus4mDyDCBjgYDVR0jBIGGMIGD" - +"gBQdgOTsHaTNceb+faB5aBhus4mDyKFgpF4wXDELMAkGA1UEBhMCVVMxEDAOBgNVBAgTB3ByaXZh" - +"dGUxETAPBgNVBAcTCHByb3ZpbmNlMQ0wCwYDVQQKEwRjaXR5MRkwFwYDVQQDExBhbXFwLmV4YW1w" - +"bGUuY29tggkAqzr4V2qe22EwDAYDVR0TBAUwAwEB/zAcBgNVHREEFTATghFhbXFwMS5leGFtcGxl" - +"LmNvbTANBgkqhkiG9w0BAQUFAAOCAgEAMR8mKY7ml9KrhnSMbvTauvuXNXT5hp0NRpmQc6Wt/Vyw" - +"V4BPVAPOz/KCmMj0tkz/LOSk5MbLxXfDDhQHA1zKPxYLM4DfObUhbJcsNo+HlC2EQ8vN4srqgNFv" - +"rY8yvfIgTILDUv02381njrz+GOLClSbLB7hcXvrIILENb72BwMv4QTIvXxYaJRa++s89I1OWe4f6" - +"CzseEIBQ2ezMsU4Qjgv6tfvgsn6K4tfpVLT4jeJkv7xZ6WAW6XKgEcDreVGm8E0/7B0E5IBFgfA3" -
[1/3] qpid-broker-j git commit: QPID-8241 : Remove use of javax.xml.bind.DatatypeConverter
Repository: qpid-broker-j Updated Branches: refs/heads/master b770054f4 -> c8c820330 http://git-wip-us.apache.org/repos/asf/qpid-broker-j/blob/c8c82033/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/servlet/ServletConnectionPrincipal.java -- diff --git a/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/servlet/ServletConnectionPrincipal.java b/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/servlet/ServletConnectionPrincipal.java index 6d442a8..543e7df 100644 --- a/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/servlet/ServletConnectionPrincipal.java +++ b/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/servlet/ServletConnectionPrincipal.java @@ -26,10 +26,10 @@ import java.net.SocketAddress; import java.nio.charset.StandardCharsets; import java.security.MessageDigest; import java.security.NoSuchAlgorithmException; +import java.util.Base64; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpSession; -import javax.xml.bind.DatatypeConverter; import org.apache.qpid.server.management.plugin.HttpManagementUtil; import org.apache.qpid.server.model.Port; @@ -66,7 +66,7 @@ public class ServletConnectionPrincipal implements ManagementConnectionPrincipal throw new RuntimeException("Cannot create SHA-256 hash", e); } byte[] digest = md.digest(); -_sessionId = DatatypeConverter.printBase64Binary(digest).substring(0, HASH_TRUNCATION_LENGTH); +_sessionId = Base64.getEncoder().encodeToString(digest).substring(0, HASH_TRUNCATION_LENGTH); } else { http://git-wip-us.apache.org/repos/asf/qpid-broker-j/blob/c8c82033/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/servlet/query/ConfiguredObjectExpressionFactory.java -- diff --git a/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/servlet/query/ConfiguredObjectExpressionFactory.java b/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/servlet/query/ConfiguredObjectExpressionFactory.java index 85e3a34..de8eb5a 100644 --- a/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/servlet/query/ConfiguredObjectExpressionFactory.java +++ b/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/servlet/query/ConfiguredObjectExpressionFactory.java @@ -20,6 +20,18 @@ */ package org.apache.qpid.server.management.plugin.servlet.query; +import java.time.LocalDate; +import java.time.LocalDateTime; +import java.time.LocalTime; +import java.time.ZoneId; +import java.time.ZoneOffset; +import java.time.ZonedDateTime; +import java.time.chrono.IsoChronology; +import java.time.format.DateTimeFormatter; +import java.time.format.DateTimeFormatterBuilder; +import java.time.format.DateTimeParseException; +import java.time.temporal.ChronoField; +import java.time.temporal.TemporalAccessor; import java.util.Arrays; import java.util.Calendar; import java.util.Collection; @@ -31,7 +43,6 @@ import java.util.Map; import java.util.Set; import java.util.TimeZone; -import javax.xml.bind.DatatypeConverter; import javax.xml.datatype.DatatypeConfigurationException; import javax.xml.datatype.DatatypeFactory; import javax.xml.datatype.Duration; @@ -48,6 +59,22 @@ public class ConfiguredObjectExpressionFactory private static final TimeZone UTC = TimeZone.getTimeZone("UTC"); private static final DatatypeFactory DATATYPE_FACTORY; +private static final DateTimeFormatter ISO_DATE_TIME_FORMAT = new DateTimeFormatterBuilder() +.parseCaseInsensitive() +.append(DateTimeFormatter.ISO_LOCAL_DATE) +.optionalStart() +.appendLiteral('T') +.append(DateTimeFormatter.ISO_LOCAL_TIME) +.optionalStart() +.appendOffsetId() +.optionalStart() +.appendLiteral('[') +.parseCaseSensitive() +.appendZoneRegionId() +.appendLiteral(']') +.toFormatter() +.withChronology(IsoChronology.INSTANCE); + static { try @@ -122,13 +149,28 @@ public class ConfiguredObjectExpressionFactory } try { -final Calendar calendar = DatatypeConverter.parseDateTime((String) dateTime); -return calendar.getTime(); + +return DateTimeFormatter.ISO_ZONED_DATE_TIME.parse((String)dateTime) +.query(this::convertToDate);
qpid-proton git commit: NO-JIRA: [Python] Trivial pylint fixes
Repository: qpid-proton Updated Branches: refs/heads/master 57f5ec14a -> 348e9da89 NO-JIRA: [Python] Trivial pylint fixes Project: http://git-wip-us.apache.org/repos/asf/qpid-proton/repo Commit: http://git-wip-us.apache.org/repos/asf/qpid-proton/commit/348e9da8 Tree: http://git-wip-us.apache.org/repos/asf/qpid-proton/tree/348e9da8 Diff: http://git-wip-us.apache.org/repos/asf/qpid-proton/diff/348e9da8 Branch: refs/heads/master Commit: 348e9da8923f590c67a9fd01e91011987f238038 Parents: 57f5ec1 Author: Andrew Stitcher Authored: Thu Sep 13 17:23:26 2018 -0400 Committer: Andrew Stitcher Committed: Tue Sep 18 09:16:00 2018 -0400 -- python/proton/_reactor.py | 22 +++--- python/proton/_reactor_impl.py | 2 +- 2 files changed, 12 insertions(+), 12 deletions(-) -- http://git-wip-us.apache.org/repos/asf/qpid-proton/blob/348e9da8/python/proton/_reactor.py -- diff --git a/python/proton/_reactor.py b/python/proton/_reactor.py index 1d09b18..63e89c8 100644 --- a/python/proton/_reactor.py +++ b/python/proton/_reactor.py @@ -51,10 +51,10 @@ from ._handlers import OutgoingMessageHandler from . import _compat from ._compat import queue -log = logging.getLogger("proton") +Logger = logging.getLogger("proton") -def generate_uuid(): +def _generate_uuid(): return uuid.uuid4() @@ -428,7 +428,7 @@ class Transaction(object): elif event.delivery.remote_state == Delivery.REJECTED: self.handler.on_transaction_declare_failed(event) else: -log.warning("Unexpected outcome for declare: %s" % event.delivery.remote_state) +Logger.warning("Unexpected outcome for declare: %s" % event.delivery.remote_state) self.handler.on_transaction_declare_failed(event) elif event.delivery == self._discharge: if event.delivery.remote_state == Delivery.REJECTED: @@ -614,7 +614,7 @@ class Connector(Handler): # if virtual-host not set, use host from address as default if self.virtual_host is None: connection.hostname = url.host -log.debug("connecting to %r..." % url) +Logger.debug("connecting to %r..." % url) transport = Transport() if self.sasl_enabled: @@ -645,7 +645,7 @@ class Connector(Handler): self._connect(event.connection, event.reactor) def on_connection_remote_open(self, event): -log.debug("connected to %s" % event.connection.hostname) +Logger.debug("connected to %s" % event.connection.hostname) if self.reconnect: self.reconnect.reset() self.transport = None @@ -660,15 +660,15 @@ class Connector(Handler): event.transport.unbind() delay = self.reconnect.next() if delay == 0: -log.info("Disconnected, reconnecting...") +Logger.info("Disconnected, reconnecting...") self._connect(self.connection, event.reactor) return else: -log.info("Disconnected will try to reconnect after %s seconds" % delay) +Logger.info("Disconnected will try to reconnect after %s seconds" % delay) event.reactor.schedule(delay, self) return else: -log.debug("Disconnected") +Logger.debug("Disconnected") # See connector.cpp: conn.free()/pn_connection_release() here? self.connection = None @@ -744,7 +744,7 @@ class Container(Reactor): self.ssl = None self.global_handler = GlobalOverrides(kwargs.get('global_handler', self.global_handler)) self.trigger = None -self.container_id = str(generate_uuid()) +self.container_id = str(_generate_uuid()) self.allow_insecure_mechs = True self.allowed_mechs = None self.sasl_enabled = True @@ -802,7 +802,7 @@ class Container(Reactor): """ conn = self.connection(handler) -conn.container = self.container_id or str(generate_uuid()) +conn.container = self.container_id or str(_generate_uuid()) conn.offered_capabilities = kwargs.get('offered_capabilities') conn.desired_capabilities = kwargs.get('desired_capabilities') conn.properties = kwargs.get('properties') @@ -850,7 +850,7 @@ class Container(Reactor): elif remote: return "%s-%s" % (container, remote) else: -return "%s-%s" % (container, str(generate_uuid())) +return "%s-%s" % (container, str(_generate_uuid())) def _get_session(self, context): if isinstance(context, Url):
qpid-proton git commit: NO-JIRA: Remove unused deprecated reactor functionality
Repository: qpid-proton Updated Branches: refs/heads/master 0800c1995 -> 57f5ec14a NO-JIRA: Remove unused deprecated reactor functionality Project: http://git-wip-us.apache.org/repos/asf/qpid-proton/repo Commit: http://git-wip-us.apache.org/repos/asf/qpid-proton/commit/57f5ec14 Tree: http://git-wip-us.apache.org/repos/asf/qpid-proton/tree/57f5ec14 Diff: http://git-wip-us.apache.org/repos/asf/qpid-proton/diff/57f5ec14 Branch: refs/heads/master Commit: 57f5ec14aebe374d718cbb87c079a7b56cb6b705 Parents: 0800c19 Author: Andrew Stitcher Authored: Mon Sep 17 13:59:38 2018 -0400 Committer: Andrew Stitcher Committed: Mon Sep 17 13:59:38 2018 -0400 -- c/include/proton/selectable.h | 27 --- c/src/reactor/selectable.c| 15 --- 2 files changed, 42 deletions(-) -- http://git-wip-us.apache.org/repos/asf/qpid-proton/blob/57f5ec14/c/include/proton/selectable.h -- diff --git a/c/include/proton/selectable.h b/c/include/proton/selectable.h index 9bfb867..c6d1722 100644 --- a/c/include/proton/selectable.h +++ b/c/include/proton/selectable.h @@ -36,11 +36,6 @@ extern "C" { */ /** - * An iterator for selectables. - */ -typedef pn_iterator_t pn_selectables_t; - -/** * A ::pn_socket_t provides an abstract handle to an IO stream. The * pipe version is uni-directional. The network socket version is * bi-directional. Both are non-blocking. @@ -88,28 +83,6 @@ typedef int pn_socket_t; */ typedef struct pn_selectable_t pn_selectable_t; -/** - * Construct a new selectables iterator. - * - * @return a pointer to a new selectables iterator - */ -PNX_EXTERN pn_selectables_t *pn_selectables(void); - -/** - * Get the next selectable from an iterator. - * - * @param[in] selectables a selectable iterator - * @return the next selectable from the iterator - */ -PNX_EXTERN pn_selectable_t *pn_selectables_next(pn_selectables_t *selectables); - -/** - * Free a selectables iterator. - * - * @param[in] selectables a selectables iterator (or NULL) - */ -PNX_EXTERN void pn_selectables_free(pn_selectables_t *selectables); - PNX_EXTERN pn_selectable_t *pn_selectable(void); PNX_EXTERN void pn_selectable_on_readable(pn_selectable_t *sel, void (*readable)(pn_selectable_t *)); http://git-wip-us.apache.org/repos/asf/qpid-proton/blob/57f5ec14/c/src/reactor/selectable.c -- diff --git a/c/src/reactor/selectable.c b/c/src/reactor/selectable.c index b42ad1f..473f113 100644 --- a/c/src/reactor/selectable.c +++ b/c/src/reactor/selectable.c @@ -28,21 +28,6 @@ #include #include -pn_selectables_t *pn_selectables(void) -{ - return pn_iterator(); -} - -pn_selectable_t *pn_selectables_next(pn_selectables_t *selectables) -{ - return (pn_selectable_t *) pn_iterator_next(selectables); -} - -void pn_selectables_free(pn_selectables_t *selectables) -{ - pn_free(selectables); -} - struct pn_selectable_t { pn_socket_t fd; int index; - To unsubscribe, e-mail: commits-unsubscr...@qpid.apache.org For additional commands, e-mail: commits-h...@qpid.apache.org
[2/2] qpid-dispatch git commit: DISPATCH 1096 - store priority in links
DISPATCH 1096 - store priority in links Project: http://git-wip-us.apache.org/repos/asf/qpid-dispatch/repo Commit: http://git-wip-us.apache.org/repos/asf/qpid-dispatch/commit/a9ace970 Tree: http://git-wip-us.apache.org/repos/asf/qpid-dispatch/tree/a9ace970 Diff: http://git-wip-us.apache.org/repos/asf/qpid-dispatch/diff/a9ace970 Branch: refs/heads/master Commit: a9ace9708ec8c48ca1868eb5998befe81640bfb0 Parents: 94bef70 Author: Michael Goulish Authored: Thu Sep 13 10:33:02 2018 -0400 Committer: Ted Ross Committed: Tue Sep 18 08:46:43 2018 -0400 -- src/router_core/connections.c | 18 ++ src/router_core/forwarder.c | 14 +++--- src/router_core/router_core_private.h | 3 ++- src/router_core/transfer.c| 3 +-- 4 files changed, 16 insertions(+), 22 deletions(-) -- http://git-wip-us.apache.org/repos/asf/qpid-dispatch/blob/a9ace970/src/router_core/connections.c -- diff --git a/src/router_core/connections.c b/src/router_core/connections.c index 2723c6c..32fbf48 100644 --- a/src/router_core/connections.c +++ b/src/router_core/connections.c @@ -817,9 +817,7 @@ static void qdr_link_cleanup_CT(qdr_core_t *core, qdr_connection_t *conn, qdr_li if (link->link_type == QD_LINK_CONTROL) core->control_links_by_mask_bit[conn->mask_bit] = 0; if (link->link_type == QD_LINK_ROUTER) -for (int priority = 0; priority < QDR_N_PRIORITIES; ++ priority) -if (link == core->data_links_by_mask_bit[conn->mask_bit].links[priority]) - core->data_links_by_mask_bit[conn->mask_bit].links[priority] = 0; +core->data_links_by_mask_bit[conn->mask_bit].links[link->priority] = 0; } // @@ -852,9 +850,7 @@ static void qdr_link_cleanup_CT(qdr_core_t *core, qdr_connection_t *conn, qdr_li // qdr_del_link_ref(>links, link, QDR_LINK_LIST_CLASS_CONNECTION); sys_mutex_lock(conn->work_lock); -for (int priority = 0; priority < QDR_N_PRIORITIES; ++ priority) { -qdr_del_link_ref(conn->links_with_work + priority, link, QDR_LINK_LIST_CLASS_WORK); -} +qdr_del_link_ref(conn->links_with_work + link->priority, link, QDR_LINK_LIST_CLASS_WORK); sys_mutex_unlock(conn->work_lock); // @@ -1438,11 +1434,14 @@ static void qdr_detach_link_control_CT(qdr_core_t *core, qdr_connection_t *conn, static void qdr_attach_link_data_CT(qdr_core_t *core, qdr_connection_t *conn, qdr_link_t *link) { if (conn->role == QDR_ROLE_INTER_ROUTER) { +// As inter-router links are attached to this connection, they +// are assigned priorities in the order in which they are attached. int next_slot = core->data_links_by_mask_bit[conn->mask_bit].count ++; if (next_slot >= QDR_N_PRIORITIES) { qd_log(core->log, QD_LOG_ERROR, "Attempt to attach too many inter-router links for priority sheaf."); return; } +link->priority = next_slot; core->data_links_by_mask_bit[conn->mask_bit].links[next_slot] = link; } @@ -1483,12 +1482,7 @@ static void qdr_attach_link_data_CT(qdr_core_t *core, qdr_connection_t *conn, qd static void qdr_detach_link_data_CT(qdr_core_t *core, qdr_connection_t *conn, qdr_link_t *link) { if (conn->role == QDR_ROLE_INTER_ROUTER) -for (int priority = 0; priority < QDR_N_PRIORITIES; ++ priority) { -if (link == core->data_links_by_mask_bit[conn->mask_bit].links[priority]) { -core->data_links_by_mask_bit[conn->mask_bit].links[priority] = 0; -break; -} -} +core->data_links_by_mask_bit[conn->mask_bit].links[link->priority] = 0; // // TODO - This needs to be refactored in terms of a non-inter-router link type // http://git-wip-us.apache.org/repos/asf/qpid-dispatch/blob/a9ace970/src/router_core/forwarder.c -- diff --git a/src/router_core/forwarder.c b/src/router_core/forwarder.c index 4364c47..8ccb049 100644 --- a/src/router_core/forwarder.c +++ b/src/router_core/forwarder.c @@ -175,7 +175,7 @@ static void qdr_forward_drop_presettled_CT_LH(qdr_core_t *core, qdr_link_t *link } -void qdr_forward_deliver_CT(qdr_core_t *core, qdr_link_t *out_link, qdr_delivery_t *out_dlv, int priority) +void qdr_forward_deliver_CT(qdr_core_t *core, qdr_link_t *out_link, qdr_delivery_t *out_dlv) { sys_mutex_lock(out_link->conn->work_lock); @@ -208,7 +208,7 @@ void qdr_forward_deliver_CT(qdr_core_t *core, qdr_link_t *out_link, qdr_delivery work->value = 1; DEQ_INSERT_TAIL(out_link->work_list, work); } -qdr_add_link_ref(out_link->conn->links_with_work + priority, out_link,
[1/2] qpid-dispatch git commit: DISPATCH-1096 - Added a new link-list-class for local (on-stack) lists. Tightened up some critical sections. This closes #375
Repository: qpid-dispatch Updated Branches: refs/heads/master 94bef705d -> 92f00baf6 DISPATCH-1096 - Added a new link-list-class for local (on-stack) lists. Tightened up some critical sections. This closes #375 Project: http://git-wip-us.apache.org/repos/asf/qpid-dispatch/repo Commit: http://git-wip-us.apache.org/repos/asf/qpid-dispatch/commit/92f00baf Tree: http://git-wip-us.apache.org/repos/asf/qpid-dispatch/tree/92f00baf Diff: http://git-wip-us.apache.org/repos/asf/qpid-dispatch/diff/92f00baf Branch: refs/heads/master Commit: 92f00baf66533d884cbeba186405cfee480f6992 Parents: a9ace97 Author: Ted Ross Authored: Tue Sep 18 08:42:48 2018 -0400 Committer: Ted Ross Committed: Tue Sep 18 08:46:43 2018 -0400 -- src/router_core/connections.c | 23 ++- src/router_core/router_core.c | 8 src/router_core/router_core_private.h | 4 +++- 3 files changed, 29 insertions(+), 6 deletions(-) -- http://git-wip-us.apache.org/repos/asf/qpid-dispatch/blob/92f00baf/src/router_core/connections.c -- diff --git a/src/router_core/connections.c b/src/router_core/connections.c index 32fbf48..cbece87 100644 --- a/src/router_core/connections.c +++ b/src/router_core/connections.c @@ -218,6 +218,16 @@ int qdr_connection_process(qdr_connection_t *conn) DEQ_MOVE(conn->work_list, work_list); for (int priority = 0; priority < QDR_N_PRIORITIES; ++ priority) { DEQ_MOVE(conn->links_with_work[priority], links_with_work[priority]); + +// +// Move the references from CLASS_WORK to CLASS_LOCAL so concurrent action in the core +// thread doesn't assume these links are referenced from the connection's list. +// +ref = DEQ_HEAD(links_with_work[priority]); +while (ref) { +move_link_ref(ref->link, QDR_LINK_LIST_CLASS_WORK, QDR_LINK_LIST_CLASS_LOCAL); +ref = DEQ_NEXT(ref); +} } sys_mutex_unlock(conn->work_lock); @@ -249,23 +259,26 @@ int qdr_connection_process(qdr_connection_t *conn) qdr_link_work_t *link_work; free_link = false; -sys_mutex_lock(conn->work_lock); ref = DEQ_HEAD(links_with_work[priority]); if (ref) { link = ref->link; -qdr_del_link_ref(links_with_work + priority, ref->link, QDR_LINK_LIST_CLASS_WORK); +qdr_del_link_ref(links_with_work + priority, ref->link, QDR_LINK_LIST_CLASS_LOCAL); +// +// The work lock must be used to protect accesses to the link's work_list and +// link_work->processing. +// +sys_mutex_lock(conn->work_lock); link_work = DEQ_HEAD(link->work_list); if (link_work) { DEQ_REMOVE_HEAD(link->work_list); link_work->processing = true; } +sys_mutex_unlock(conn->work_lock); } else link = 0; -sys_mutex_unlock(conn->work_lock); if (link) { - // // Handle disposition/settlement updates // @@ -848,8 +861,8 @@ static void qdr_link_cleanup_CT(qdr_core_t *core, qdr_connection_t *conn, qdr_li // // Remove the reference to this link in the connection's reference lists // -qdr_del_link_ref(>links, link, QDR_LINK_LIST_CLASS_CONNECTION); sys_mutex_lock(conn->work_lock); +qdr_del_link_ref(>links, link, QDR_LINK_LIST_CLASS_CONNECTION); qdr_del_link_ref(conn->links_with_work + link->priority, link, QDR_LINK_LIST_CLASS_WORK); sys_mutex_unlock(conn->work_lock); http://git-wip-us.apache.org/repos/asf/qpid-dispatch/blob/92f00baf/src/router_core/router_core.c -- diff --git a/src/router_core/router_core.c b/src/router_core/router_core.c index 580cb92..e41a633 100644 --- a/src/router_core/router_core.c +++ b/src/router_core/router_core.c @@ -451,6 +451,14 @@ void qdr_del_link_ref(qdr_link_ref_list_t *ref_list, qdr_link_t *link, int cls) } +void move_link_ref(qdr_link_t *link, int from_cls, int to_cls) +{ +assert(link->ref[to_cls] == 0); +link->ref[to_cls] = link->ref[from_cls]; +link->ref[from_cls] = 0; +} + + void qdr_add_connection_ref(qdr_connection_ref_list_t *ref_list, qdr_connection_t *conn) { qdr_connection_ref_t *ref = new_qdr_connection_ref_t(); http://git-wip-us.apache.org/repos/asf/qpid-dispatch/blob/92f00baf/src/router_core/router_core_private.h -- diff --git a/src/router_core/router_core_private.h b/src/router_core/router_core_private.h index
qpid-dispatch git commit: DISPATCH-1122: Use correct format specifier
Repository: qpid-dispatch Updated Branches: refs/heads/master 75a69f345 -> 94bef705d DISPATCH-1122: Use correct format specifier Project: http://git-wip-us.apache.org/repos/asf/qpid-dispatch/repo Commit: http://git-wip-us.apache.org/repos/asf/qpid-dispatch/commit/94bef705 Tree: http://git-wip-us.apache.org/repos/asf/qpid-dispatch/tree/94bef705 Diff: http://git-wip-us.apache.org/repos/asf/qpid-dispatch/diff/94bef705 Branch: refs/heads/master Commit: 94bef705d11a3ece802094aa8b603192344967a2 Parents: 75a69f3 Author: Ulf Lilleengen Authored: Tue Sep 18 09:48:54 2018 +0200 Committer: Ulf Lilleengen Committed: Tue Sep 18 09:48:54 2018 +0200 -- src/remote_sasl.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) -- http://git-wip-us.apache.org/repos/asf/qpid-dispatch/blob/94bef705/src/remote_sasl.c -- diff --git a/src/remote_sasl.c b/src/remote_sasl.c index 636d227..34eb51d 100644 --- a/src/remote_sasl.c +++ b/src/remote_sasl.c @@ -286,7 +286,7 @@ static void remote_sasl_prepare(pn_transport_t *transport) switch (impl->outcome) { case PN_SASL_OK: set_policy_settings(impl->upstream, >permissions); -qd_log(auth_service_log, QD_LOG_INFO, "authenticated as % ", impl->username); +qd_log(auth_service_log, QD_LOG_INFO, "authenticated as %s", impl->username); pnx_sasl_succeed_authentication(transport, impl->username); break; default: - To unsubscribe, e-mail: commits-unsubscr...@qpid.apache.org For additional commands, e-mail: commits-h...@qpid.apache.org