You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@qpid.apache.org by kg...@apache.org on 2012/12/07 20:25:04 UTC

svn commit: r1418449 - in /qpid/proton/branches/kgiusti-proton-136: ./ proton-c/ proton-c/bindings/ proton-c/bindings/perl/ proton-c/bindings/perl/lib/qpid/proton/ proton-c/bindings/php/ proton-c/bindings/python/ proton-c/bindings/ruby/ proton-c/includ...

Author: kgiusti
Date: Fri Dec  7 19:25:02 2012
New Revision: 1418449

URL: http://svn.apache.org/viewvc?rev=1418449&view=rev
Log:
PROTON-136: merge in latest from trunk

Added:
    qpid/proton/branches/kgiusti-proton-136/proton-c/src/platform.c
      - copied unchanged from r1418448, qpid/proton/trunk/proton-c/src/platform.c
    qpid/proton/branches/kgiusti-proton-136/proton-c/src/platform.h
      - copied unchanged from r1418448, qpid/proton/trunk/proton-c/src/platform.h
    qpid/proton/branches/kgiusti-proton-136/proton-j/proton/src/main/java/org/apache/qpid/proton/engine/impl/FrameTransport.java
      - copied unchanged from r1418448, qpid/proton/trunk/proton-j/proton/src/main/java/org/apache/qpid/proton/engine/impl/FrameTransport.java
    qpid/proton/branches/kgiusti-proton-136/proton-j/proton/src/main/java/org/apache/qpid/proton/engine/impl/TransportInput.java
      - copied unchanged from r1418448, qpid/proton/trunk/proton-j/proton/src/main/java/org/apache/qpid/proton/engine/impl/TransportInput.java
    qpid/proton/branches/kgiusti-proton-136/proton-j/proton/src/main/java/org/apache/qpid/proton/engine/impl/TransportOutput.java
      - copied unchanged from r1418448, qpid/proton/trunk/proton-j/proton/src/main/java/org/apache/qpid/proton/engine/impl/TransportOutput.java
    qpid/proton/branches/kgiusti-proton-136/proton-j/proton/src/main/java/org/apache/qpid/proton/engine/impl/TransportWrapper.java
      - copied unchanged from r1418448, qpid/proton/trunk/proton-j/proton/src/main/java/org/apache/qpid/proton/engine/impl/TransportWrapper.java
    qpid/proton/branches/kgiusti-proton-136/proton-j/proton/src/main/java/org/apache/qpid/proton/engine/impl/ssl/
      - copied from r1418448, qpid/proton/trunk/proton-j/proton/src/main/java/org/apache/qpid/proton/engine/impl/ssl/
    qpid/proton/branches/kgiusti-proton-136/proton-j/proton/src/test/java/org/apache/qpid/proton/engine/impl/ssl/
      - copied from r1418448, qpid/proton/trunk/proton-j/proton/src/test/java/org/apache/qpid/proton/engine/impl/ssl/
Removed:
    qpid/proton/branches/kgiusti-proton-136/proton-j/proton/src/main/java/org/apache/qpid/proton/engine/DeliveryBuffer.java
    qpid/proton/branches/kgiusti-proton-136/proton-j/proton/src/main/java/org/apache/qpid/proton/engine/DeliveryState.java
    qpid/proton/branches/kgiusti-proton-136/proton-j/proton/src/main/java/org/apache/qpid/proton/engine/FrameTransport.java
    qpid/proton/branches/kgiusti-proton-136/proton-j/proton/src/main/java/org/apache/qpid/proton/engine/Modified.java
    qpid/proton/branches/kgiusti-proton-136/proton-j/proton/src/main/java/org/apache/qpid/proton/engine/Outcome.java
    qpid/proton/branches/kgiusti-proton-136/proton-j/proton/src/main/java/org/apache/qpid/proton/engine/Received.java
    qpid/proton/branches/kgiusti-proton-136/proton-j/proton/src/main/java/org/apache/qpid/proton/engine/Rejected.java
    qpid/proton/branches/kgiusti-proton-136/proton-j/proton/src/main/java/org/apache/qpid/proton/engine/Released.java
    qpid/proton/branches/kgiusti-proton-136/proton-j/proton/src/main/java/org/apache/qpid/proton/engine/SaslClient.java
    qpid/proton/branches/kgiusti-proton-136/proton-j/proton/src/main/java/org/apache/qpid/proton/engine/SaslServer.java
    qpid/proton/branches/kgiusti-proton-136/proton-j/proton/src/main/java/org/apache/qpid/proton/engine/Sequence.java
    qpid/proton/branches/kgiusti-proton-136/proton-j/proton/src/main/java/org/apache/qpid/proton/engine/TransportInput.java
    qpid/proton/branches/kgiusti-proton-136/proton-j/proton/src/main/java/org/apache/qpid/proton/engine/TransportOutput.java
    qpid/proton/branches/kgiusti-proton-136/proton-j/proton/src/main/java/org/apache/qpid/proton/engine/TransportWrapper.java
    qpid/proton/branches/kgiusti-proton-136/proton-j/proton/src/main/java/org/apache/qpid/proton/engine/impl/DefaultSslEngineFacade.java
    qpid/proton/branches/kgiusti-proton-136/proton-j/proton/src/main/java/org/apache/qpid/proton/engine/impl/SaslClientImpl.java
    qpid/proton/branches/kgiusti-proton-136/proton-j/proton/src/main/java/org/apache/qpid/proton/engine/impl/SaslServerImpl.java
    qpid/proton/branches/kgiusti-proton-136/proton-j/proton/src/main/java/org/apache/qpid/proton/engine/impl/SimpleSslTransportWrapper.java
    qpid/proton/branches/kgiusti-proton-136/proton-j/proton/src/main/java/org/apache/qpid/proton/engine/impl/SslEngineFacade.java
    qpid/proton/branches/kgiusti-proton-136/proton-j/proton/src/main/java/org/apache/qpid/proton/engine/impl/SslEngineFacadeFactory.java
    qpid/proton/branches/kgiusti-proton-136/proton-j/proton/src/main/java/org/apache/qpid/proton/engine/impl/SslHandshakeSniffingTransportWrapper.java
    qpid/proton/branches/kgiusti-proton-136/proton-j/proton/src/main/java/org/apache/qpid/proton/engine/impl/SslImpl.java
    qpid/proton/branches/kgiusti-proton-136/proton-j/proton/src/main/java/org/apache/qpid/proton/engine/impl/SslTransportWrapper.java
    qpid/proton/branches/kgiusti-proton-136/proton-j/proton/src/test/java/org/apache/qpid/proton/engine/impl/CannedTransportOutput.java
    qpid/proton/branches/kgiusti-proton-136/proton-j/proton/src/test/java/org/apache/qpid/proton/engine/impl/CapitalisingDummySslEngine.java
    qpid/proton/branches/kgiusti-proton-136/proton-j/proton/src/test/java/org/apache/qpid/proton/engine/impl/RememberingTransportInput.java
    qpid/proton/branches/kgiusti-proton-136/proton-j/proton/src/test/java/org/apache/qpid/proton/engine/impl/SimpleSslTransportWrapperTest.java
    qpid/proton/branches/kgiusti-proton-136/proton-j/proton/src/test/java/org/apache/qpid/proton/engine/impl/SslHandshakeSniffingTransportWrapperTest.java
Modified:
    qpid/proton/branches/kgiusti-proton-136/   (props changed)
    qpid/proton/branches/kgiusti-proton-136/proton-c/CMakeLists.txt
    qpid/proton/branches/kgiusti-proton-136/proton-c/bindings/CMakeLists.txt
    qpid/proton/branches/kgiusti-proton-136/proton-c/bindings/perl/CMakeLists.txt
    qpid/proton/branches/kgiusti-proton-136/proton-c/bindings/perl/ChangeLog
    qpid/proton/branches/kgiusti-proton-136/proton-c/bindings/perl/lib/qpid/proton/Message.pm
    qpid/proton/branches/kgiusti-proton-136/proton-c/bindings/php/CMakeLists.txt
    qpid/proton/branches/kgiusti-proton-136/proton-c/bindings/python/CMakeLists.txt
    qpid/proton/branches/kgiusti-proton-136/proton-c/bindings/ruby/CMakeLists.txt
    qpid/proton/branches/kgiusti-proton-136/proton-c/bindings/ruby/ChangeLog
    qpid/proton/branches/kgiusti-proton-136/proton-c/include/proton/driver.h
    qpid/proton/branches/kgiusti-proton-136/proton-c/src/codec/codec.c
    qpid/proton/branches/kgiusti-proton-136/proton-c/src/driver.c
    qpid/proton/branches/kgiusti-proton-136/proton-c/src/messenger.c
    qpid/proton/branches/kgiusti-proton-136/proton-c/src/proton.c
    qpid/proton/branches/kgiusti-proton-136/proton-j/proton/src/main/java/org/apache/qpid/proton/driver/impl/DriverImpl.java
    qpid/proton/branches/kgiusti-proton-136/proton-j/proton/src/main/java/org/apache/qpid/proton/engine/Link.java
    qpid/proton/branches/kgiusti-proton-136/proton-j/proton/src/main/java/org/apache/qpid/proton/engine/impl/ConnectionImpl.java
    qpid/proton/branches/kgiusti-proton-136/proton-j/proton/src/main/java/org/apache/qpid/proton/engine/impl/FrameParser.java
    qpid/proton/branches/kgiusti-proton-136/proton-j/proton/src/main/java/org/apache/qpid/proton/engine/impl/PlainTransportWrapper.java
    qpid/proton/branches/kgiusti-proton-136/proton-j/proton/src/main/java/org/apache/qpid/proton/engine/impl/ReceiverImpl.java
    qpid/proton/branches/kgiusti-proton-136/proton-j/proton/src/main/java/org/apache/qpid/proton/engine/impl/SaslImpl.java
    qpid/proton/branches/kgiusti-proton-136/proton-j/proton/src/main/java/org/apache/qpid/proton/engine/impl/SenderImpl.java
    qpid/proton/branches/kgiusti-proton-136/proton-j/proton/src/main/java/org/apache/qpid/proton/engine/impl/TransportImpl.java

Propchange: qpid/proton/branches/kgiusti-proton-136/
------------------------------------------------------------------------------
  Merged /qpid/proton/trunk:r1417075-1418448

Modified: qpid/proton/branches/kgiusti-proton-136/proton-c/CMakeLists.txt
URL: http://svn.apache.org/viewvc/qpid/proton/branches/kgiusti-proton-136/proton-c/CMakeLists.txt?rev=1418449&r1=1418448&r2=1418449&view=diff
==============================================================================
--- qpid/proton/branches/kgiusti-proton-136/proton-c/CMakeLists.txt (original)
+++ qpid/proton/branches/kgiusti-proton-136/proton-c/CMakeLists.txt Fri Dec  7 19:25:02 2012
@@ -100,47 +100,93 @@ else (SSL_IMPL STREQUAL openssl)
   set (pn_driver_ssl_impl src/ssl/ssl_stub.c)
 endif (SSL_IMPL STREQUAL openssl)
 
-find_package(SWIG)
-if (SWIG_FOUND)
-  add_subdirectory(bindings)
-endif (SWIG_FOUND)
-
-# When checking for clock_gettime etc. first check whether the symbol
-# is present in the library that it may be in, if it is not then check
-# whether the symbol works using just the regular C library
-CHECK_LIBRARY_EXISTS (rt clock_gettime "" CLOCK_GETTIME_IN_RT)
-if (CLOCK_GETTIME_IN_RT)
-  set (TIME_LIB rt)
-else (CLOCK_GETTIME_IN_RT)
-  CHECK_SYMBOL_EXISTS(clock_gettime "time.h" HAVE_CLOCK_GETTIME)
-  if (NOT HAVE_CLOCK_GETTIME)
-    message(FATAL_ERROR "clock_gettime() not found")
-  endif (NOT HAVE_CLOCK_GETTIME)
-endif (CLOCK_GETTIME_IN_RT)
-
-CHECK_LIBRARY_EXISTS (uuid uuid_generate "" UUID_GENERATE_IN_UUID)
-if (UUID_GENERATE_IN_UUID)
-  set (UUID_LIB uuid)
-else (UUID_GENERATE_IN_UUID)
-  CHECK_SYMBOL_EXISTS(uuid_generate "uuid/uuid.h" HAVE_UUID_GENERATE)
-  if (NOT HAVE_UUID_GENERATE)
-    message(FATAL_ERROR "uuid_generate() not found")
-  endif (NOT HAVE_UUID_GENERATE)
-endif (UUID_GENERATE_IN_UUID)
+# First check whether we get clock_gettime without any special library linked
+CHECK_SYMBOL_EXISTS(clock_gettime "time.h" CLOCK_GETTIME_IN_LIBC)
+if (CLOCK_GETTIME_IN_LIBC)
+  list(APPEND PLATFORM_DEFINITIONS "USE_CLOCK_GETTIME")
+else (CLOCK_GETTIME_IN_LIBC)
+  CHECK_LIBRARY_EXISTS (rt clock_gettime "" CLOCK_GETTIME_IN_RT)
+  if (CLOCK_GETTIME_IN_RT)
+    set (TIME_LIB rt)
+    list(APPEND PLATFORM_DEFINITIONS "USE_CLOCK_GETTIME")
+  else (CLOCK_GETTIME_IN_RT)
+    list(APPEND PLATFORM_DEFINITIONS "USE_GETTIMEOFDAY")
+  endif (CLOCK_GETTIME_IN_RT)
+endif (CLOCK_GETTIME_IN_LIBC)
+
+CHECK_SYMBOL_EXISTS(uuid_generate "uuid/uuid.h" UUID_GENERATE_IN_LIBC)
+if (UUID_GENERATE_IN_LIBC)
+  list(APPEND PLATFORM_DEFINITIONS "USE_UUID_GENERATE")
+else (UUID_GENERATE_IN_LIBC)
+  CHECK_LIBRARY_EXISTS (uuid uuid_generate "" UUID_GENERATE_IN_UUID)
+  if (UUID_GENERATE_IN_UUID)
+    set (UUID_LIB uuid)
+    list(APPEND PLATFORM_DEFINITIONS "USE_UUID_GENERATE")
+  else (UUID_GENERATE_IN_UUID)
+    CHECK_SYMBOL_EXISTS(uuid_create "uuid.h" UUID_CREATE_IN_LIBC)
+    if (UUID_CREATE_IN_LIBC)
+      list(APPEND PLATFORM_DEFINITIONS "USE_UUID_CREATE")
+    else (UUID_CREATE_IN_LIBC)
+      CHECK_SYMBOL_EXISTS(UuidToString "rpc.h" WIN_UUID)
+      if (WIN_UUID)
+        list(APPEND PLATFORM_DEFINITIONS "USE_WIN_UUID")
+      else (WIN_UUID)
+        message(FATAL_ERROR "No Uuid API found")
+      endif (WIN_UUID)
+    endif (UUID_CREATE_IN_LIBC)
+  endif (UUID_GENERATE_IN_UUID)
+endif (UUID_GENERATE_IN_LIBC)
+
+# Try to keep any platform specific overrides together here:
+
+# MacOS has a bunch of differences in build tools and process and so we have to turn some things
+# off if building there:
+if (APPLE)
+  set (NOBUILD_PHP ON)
+  set (NOENABLE_WARNING_ERROR ON)
+  set (NOENABLE_UNDEFINED_ERROR ON)
+endif (APPLE)
+
+# Add options here called <whatever> they will turn into "ENABLE_<whatever" and can be
+# overridden on a platform specific basis above by NOENABLE_<whatever>
+set (OPTIONS WARNING_ERROR UNDEFINED_ERROR)
+
+foreach (OPTION ${OPTIONS})
+  if (NOT "NOENABLE_${OPTION}")
+    set ("DEFAULT_${OPTION}" ON)
+  endif (NOT "NOENABLE_${OPTION}")
+endforeach (OPTION)
+
+# And add the option here too with help text
+option(ENABLE_WARNING_ERROR "Consider compiler warnings to be errors" ${DEFAULT_WARNING_ERROR})
+option(ENABLE_UNDEFINED_ERROR "Check for unresolved library symbols" ${DEFAULT_UNDEFINED_ERROR})
 
-# Set any additional platform specific C compiler flags
+# Set any additional compiler specific flags
 if (CMAKE_COMPILER_IS_GNUCC)
-  set (COMPILE_WARNING_FLAGS "-Wall -Werror -pedantic-errors")
+  if (ENABLE_WARNING_ERROR)
+    set (WERROR "-Werror")
+  endif (ENABLE_WARNING_ERROR)
+  set (COMPILE_WARNING_FLAGS "${WERROR} -Wall -pedantic-errors")
   set (COMPILE_LANGUAGE_FLAGS "-std=c99")
   set (COMPILE_PLATFORM_FLAGS "-std=gnu99")
+  if (ENABLE_UNDEFINED_ERROR)
+    set (CATCH_UNDEFINED "-Wl,--no-undefined")
+    set (ALLOW_UNDEFINED "-Wl,--allow-shlib-undefined")
+  endif (ENABLE_UNDEFINED_ERROR)
 endif (CMAKE_COMPILER_IS_GNUCC)
 
+find_package(SWIG)
+if (SWIG_FOUND)
+  add_subdirectory(bindings)
+endif (SWIG_FOUND)
+
 add_subdirectory(docs/api)
 add_subdirectory(docs/man)
 add_subdirectory(examples/messenger/c)
 
 set (qpid-proton-platform
   src/driver.c
+  src/platform.c
   ${pn_driver_ssl_impl}
 )
 
@@ -177,6 +223,7 @@ set_source_files_properties (
     ${qpid-proton-platform}
     PROPERTIES
     COMPILE_FLAGS "${COMPILE_WARNING_FLAGS} ${COMPILE_PLATFORM_FLAGS}"
+    COMPILE_DEFINITIONS "${PLATFORM_DEFINITIONS}"
 )
 
 add_library (
@@ -193,6 +240,7 @@ set_target_properties (
   PROPERTIES
   VERSION   "${PN_LIB_SOMAJOR}.${PN_LIB_SOMINOR}"
   SOVERSION "${PN_LIB_SOMAJOR}"
+  LINK_FLAGS "${CATCH_UNDEFINED}"
 )
 
 add_executable (proton src/proton.c)
@@ -204,7 +252,7 @@ target_link_libraries (proton-dump qpid-
 set_target_properties (
     proton proton-dump
     PROPERTIES
-    COMPILE_FLAGS "${COMPILE_WARNING_FLAGS} ${COMPILE_LANGUAGE_FLAGS}"
+    COMPILE_FLAGS "${COMPILE_WARNING_FLAGS} ${COMPILE_PLATFORM_FLAGS}"
 )
 
 # Install executables and libraries

Modified: qpid/proton/branches/kgiusti-proton-136/proton-c/bindings/CMakeLists.txt
URL: http://svn.apache.org/viewvc/qpid/proton/branches/kgiusti-proton-136/proton-c/bindings/CMakeLists.txt?rev=1418449&r1=1418448&r2=1418449&view=diff
==============================================================================
--- qpid/proton/branches/kgiusti-proton-136/proton-c/bindings/CMakeLists.txt (original)
+++ qpid/proton/branches/kgiusti-proton-136/proton-c/bindings/CMakeLists.txt Fri Dec  7 19:25:02 2012
@@ -19,32 +19,54 @@
 
 include(UseSWIG)
 
+# Add any new bindings here - the directory name must be the same as the binding name
+set (BINDINGS python ruby php perl)
+
 set (BINDING_DEPS qpid-proton)
 
-# Build wrapper for Python:
+# Add a block here to detect the prerequisites to build each language binding:
+#
+# If the prerequisites for the binding are present set a variable called
+# DEFAULT_{uppercase name of binding} to ON
+
+# Prerequisites for Python wrapper:
 find_package (PythonLibs)
 if (PYTHONLIBS_FOUND)
-  add_subdirectory(python)
+  set (DEFAULT_PYTHON ON)
 endif (PYTHONLIBS_FOUND)
 
-# Build wrapper for Ruby:
+# Prerequisites for Ruby:
 find_package(Ruby)
 if (RUBY_FOUND)
-  add_subdirectory(ruby)
+  set (DEFAULT_RUBY ON)
 endif (RUBY_FOUND)
 
-# Build wrapper for PHP
+# Prerequites for PHP:
 # For now, assume PHP support if the 'php-config' tool is present.
 # @todo: allow user to specify which php-config if multiple PHP sources installed!
 find_program(PHP_CONFIG_EXE php-config)
 if (PHP_CONFIG_EXE)
   find_program(PHP_EXE php)
   if (PHP_EXE)
-    add_subdirectory(php)
+    set (DEFAULT_PHP ON)
   endif (PHP_EXE)
 endif (PHP_CONFIG_EXE)
 
+# Prerequisites for Perl:
 include(FindPerlLibs)
 if (PERLLIBS_FOUND)
-  add_subdirectory(perl)
+  set (DEFAULT_PERL ON)
 endif (PERLLIBS_FOUND)
+
+# Shouldn't need to modify below here when adding new language binding
+foreach(BINDING ${BINDINGS})
+  string(TOUPPER ${BINDING} UBINDING)
+  # Check whether default was overridden
+  if ("NOBUILD_${UBINDING}")
+    set ("DEFAULT_${UBINDING}" OFF)
+  endif ()
+  option("BUILD_${UBINDING}" "Build ${BINDING} language binding" ${DEFAULT_${UBINDING}})
+  if ("BUILD_${UBINDING}")
+    add_subdirectory(${BINDING})
+  endif ()
+endforeach(BINDING)

Modified: qpid/proton/branches/kgiusti-proton-136/proton-c/bindings/perl/CMakeLists.txt
URL: http://svn.apache.org/viewvc/qpid/proton/branches/kgiusti-proton-136/proton-c/bindings/perl/CMakeLists.txt?rev=1418449&r1=1418448&r2=1418449&view=diff
==============================================================================
--- qpid/proton/branches/kgiusti-proton-136/proton-c/bindings/perl/CMakeLists.txt (original)
+++ qpid/proton/branches/kgiusti-proton-136/proton-c/bindings/perl/CMakeLists.txt Fri Dec  7 19:25:02 2012
@@ -19,6 +19,13 @@
 
 include_directories("${PERL_INCLUDE_PATH}")
 
+# honor the install prefix
+execute_process(COMMAND ${PERL_EXECUTABLE} "-V::prefix:"
+                OUTPUT_VARIABLE QPERL_PREFIX
+                OUTPUT_STRIP_TRAILING_WHITESPACE)
+string(REGEX REPLACE "'(.*)'" "\\1" PERL_PREFIX ${QPERL_PREFIX})
+string(REPLACE ${PERL_PREFIX} ${CMAKE_INSTALL_PREFIX} PERL_PFX_ARCHLIB ${PERL_ARCHLIB})
+
 # Need to pass in the same compiler flags used to build Perl itself
 execute_process(COMMAND perl -MConfig -e "print \$Config{ccflags}"
                 OUTPUT_VARIABLE PERLCFLAGS)
@@ -29,6 +36,6 @@ swig_link_libraries(cproton_perl ${BINDI
 
 install(FILES ${CMAKE_CURRENT_BINARY_DIR}/libcproton_perl.so
               ${CMAKE_CURRENT_BINARY_DIR}/cproton_perl.pm
-        DESTINATION ${PERL_ARCHLIB}
+        DESTINATION ${PERL_PFX_ARCHLIB}
         COMPONENT Perl)
 

Modified: qpid/proton/branches/kgiusti-proton-136/proton-c/bindings/perl/ChangeLog
URL: http://svn.apache.org/viewvc/qpid/proton/branches/kgiusti-proton-136/proton-c/bindings/perl/ChangeLog?rev=1418449&r1=1418448&r2=1418449&view=diff
==============================================================================
--- qpid/proton/branches/kgiusti-proton-136/proton-c/bindings/perl/ChangeLog (original)
+++ qpid/proton/branches/kgiusti-proton-136/proton-c/bindings/perl/ChangeLog Fri Dec  7 19:25:02 2012
@@ -1,4 +1,6 @@
-version 0.2: (TBA)
+version 0.3: (TBA)
+
+version 0.2: (30 November 2012)
 	* First implementation of the stable APIs on top of swig.
 	* Provides the qpid::proton::Message class.
 	* Provides the qpid::proton::Messenger class.

Modified: qpid/proton/branches/kgiusti-proton-136/proton-c/bindings/perl/lib/qpid/proton/Message.pm
URL: http://svn.apache.org/viewvc/qpid/proton/branches/kgiusti-proton-136/proton-c/bindings/perl/lib/qpid/proton/Message.pm?rev=1418449&r1=1418448&r2=1418449&view=diff
==============================================================================
--- qpid/proton/branches/kgiusti-proton-136/proton-c/bindings/perl/lib/qpid/proton/Message.pm (original)
+++ qpid/proton/branches/kgiusti-proton-136/proton-c/bindings/perl/lib/qpid/proton/Message.pm Fri Dec  7 19:25:02 2012
@@ -256,130 +256,5 @@ sub get_reply_to_group_id {
     return cproton_perl::pn_message_get_reply_to_group_id($self->{_impl});
 }
 
-
-
-package qpid::proton::Messenger;
-
-sub new {
-    my ($class) = @_;
-    my ($self) = {};
-
-    my $impl = cproton_perl::pn_messenger($_[1]);
-    $self->{_impl} = $impl;
-
-    bless $self, $class;
-    return $self;
-}
-
-sub DESTROY {
-    my ($self) = @_;
-    cproton_perl::pn_messenger_stop($self->{_impl});
-    cproton_perl::pn_messenger_free($self->{_impl});
-}
-
-sub get_name {
-    my ($self) = @_;
-    return cproton_perl::pn_messenger_get_name($self->{_impl});
-}
-
-sub set_timeout {
-    my ($self) = @_;
-    cproton_perl::pn_messenger_set_timeout($self->{_impl}, $_[1]);
-}
-
-sub get_timeout {
-    my ($self) = @_;
-    return cproton_perl::pn_messenger_get_timeout($self->{_impl});
-}
-
-sub get_error {
-    my ($self) = @_;
-    return cproton_perl::pn_messenger_error($self->{_impl});
-}
-
-sub get_errno {
-    my ($self) = @_;
-    return cproton_perl::pn_messenger_errno($self->{_impl});
-}
-
-sub start {
-    my ($self) = @_;
-    cproton_perl::pn_messenger_start($self->{_impl});
-}
-
-sub stop {
-    my ($self) = @_;
-    cproton_perl::pn_messenger_stop($self->{_impl});
-}
-
-sub subscribe {
-    my ($self) = @_;
-    cproton_perl::pn_messenger_subscribe($self->{_impl}, $_[1]);
-}
-
-sub set_certificate {
-    my ($self) = @_;
-    cproton_perl::pn_messenger_set_certificate($self->{_impl}, $_[1]);
-}
-
-sub get_certificate {
-    my ($self) = @_;
-    return cproton_perl::pn_messenger_get_certificate($self->{_impl});
-}
-
-sub set_private_key {
-    my ($self) = @_;
-    cproton_perl::pn_messenger_set_private_key($self->{_impl}, $_[1]);
-}
-
-sub get_private_key {
-    my ($self) = @_;
-    return cproton_perl::pn_messenger_get_private_key($self->{_impl});
-}
-
-sub set_trusted_certificates {
-    my ($self) = @_;
-    cproton_perl::pn_messenger_set_trusted_certificates($self->{_impl}, $_[1]);
-}
-
-sub get_trusted_certificates {
-    my ($self) = @_;
-    return cproton_perl::pn_messenger_get_trusted_certificates($self->{_impl});
-}
-
-sub put {
-    my ($self) = @_;
-    my $message = $_[1];
-    cproton_perl::pn_messenger_put($self->{_impl}, $message->get_impl);
-}
-
-sub send {
-    my ($self) = @_;
-    cproton_perl::pn_messenger_send($self->{_impl});
-}
-
-sub get {
-    my ($self) = @_;
-
-    my $message = $_[1] || new proton::Message();
-    cproton_perl::pn_messenger_get($self->{_impl}, $message->get_impl());
-    return $message;
-}
-
-sub receive {
-    my ($self) = @_;
-    cproton_perl::pn_messenger_recv($self->{_impl}, $_[1]);
-}
-
-sub outgoing {
-    my ($self) = @_;
-    return cproton_perl::pn_messenger_outgoing($self->{_impl});
-}
-
-sub incoming {
-    my ($self) = @_;
-    return cproton_perl::pn_messenger_incoming($self->{_impl});
-}
-
 1;
 

Modified: qpid/proton/branches/kgiusti-proton-136/proton-c/bindings/php/CMakeLists.txt
URL: http://svn.apache.org/viewvc/qpid/proton/branches/kgiusti-proton-136/proton-c/bindings/php/CMakeLists.txt?rev=1418449&r1=1418448&r2=1418449&view=diff
==============================================================================
--- qpid/proton/branches/kgiusti-proton-136/proton-c/bindings/php/CMakeLists.txt (original)
+++ qpid/proton/branches/kgiusti-proton-136/proton-c/bindings/php/CMakeLists.txt Fri Dec  7 19:25:02 2012
@@ -23,7 +23,6 @@
 
 # Uses the php-config command line tool from PHP to extract the location of the PHP header
 # files
-
 execute_process(COMMAND ${PHP_CONFIG_EXE} --includes
                 OUTPUT_VARIABLE PHP_INCLUDES
                 RESULT_VARIABLE retval
@@ -32,22 +31,30 @@ execute_process(COMMAND ${PHP_CONFIG_EXE
 
 set_source_files_properties(${CMAKE_CURRENT_SOURCE_DIR}/php.i PROPERTIES SWIG_FLAGS "-I${PROJECT_SOURCE_DIR}/include")
 swig_add_module(cproton php ${CMAKE_CURRENT_SOURCE_DIR}/php.i)
-set_target_properties(cproton PROPERTIES PREFIX "")
 set_source_files_properties(${swig_generated_file_fullname} PROPERTIES COMPILE_FLAGS "${PHP_INCLUDES}")
 swig_link_libraries(cproton ${BINDING_DEPS})
+# PHP modules must be linked with unresolved symbols as they are presumably satisfied only when loaded by php itself
+set_target_properties(cproton
+    PROPERTIES
+    PREFIX ""
+    LINK_FLAGS "${ALLOW_UNDEFINED}")
 
 execute_process(COMMAND ${PHP_CONFIG_EXE} --extension-dir
                 OUTPUT_VARIABLE PHP_EXT_DIR_DEFAULT
                 OUTPUT_STRIP_TRAILING_WHITESPACE)
 execute_process(COMMAND ${PHP_CONFIG_EXE} --prefix
-                OUTPUT_VARIABLE PHP_PFX
+                OUTPUT_VARIABLE QPHP_PREFIX
                 OUTPUT_STRIP_TRAILING_WHITESPACE)
 execute_process(COMMAND ${PHP_CONFIG_EXE} --config-options
                 OUTPUT_VARIABLE PHP_OPTS
                 OUTPUT_STRIP_TRAILING_WHITESPACE)
 
+# prepend install prefix to the extension directory
+string(REPLACE ${QPHP_PREFIX} ${CMAKE_INSTALL_PREFIX}
+       PHP_PFX_EXT_DIR ${PHP_EXT_DIR_DEFAULT})
+
 set(GET_INCLUDE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/get_include_dir.php)
-execute_process(COMMAND ${PHP_EXE} -n ${GET_INCLUDE_DIR} ${PHP_PFX}
+execute_process(COMMAND ${PHP_EXE} -n ${GET_INCLUDE_DIR} ${QPHP_PREFIX}
                 OUTPUT_VARIABLE PHP_INCLUDE_DIR_DEFAULT
                 OUTPUT_STRIP_TRAILING_WHITESPACE)
 
@@ -55,6 +62,10 @@ if ("${PHP_INCLUDE_DIR_DEFAULT}" STREQUA
   set(PHP_INCLUDE_DIR_DEFAULT "/usr/share/php")
 endif()
 
+# prepend install prefix to the include directory
+string(REPLACE ${QPHP_PREFIX} ${CMAKE_INSTALL_PREFIX}
+       PHP_PFX_INCLUDE_DIR ${PHP_INCLUDE_DIR_DEFAULT})
+
 string(REGEX MATCH "--with-config-file-scan-dir=([^ ]*)" PHP_OPT_MATCH ${PHP_OPTS})
 set (PHP_INI_DIR_DEFAULT ${CMAKE_MATCH_1})
 
@@ -64,13 +75,13 @@ endif()
 
 if (IS_ABSOLUTE "${PHP_INI_DIR_DEFAULT}" AND (NOT (IS_ABSOLUTE ${CMAKE_INSTALL_PREFIX})))
   string(SUBSTRING ${PHP_INI_DIR_DEFAULT} 1 -1 PHP_INI_DIR_DEFAULT)
-  string(SUBSTRING ${PHP_EXT_DIR_DEFAULT} 1 -1 PHP_EXT_DIR_DEFAULT)
-  string(SUBSTRING ${PHP_INCLUDE_DIR_DEFAULT} 1 -1 PHP_INCLUDE_DIR_DEFAULT)
+  string(SUBSTRING ${PHP_PFX_EXT_DIR}     1 -1 PHP_PFX_EXT_DIR)
+  string(SUBSTRING ${PHP_PFX_INCLUDE_DIR} 1 -1 PHP_PFX_INCLUDE_DIR)
 endif ()
 
-set(PHP_EXT_DIR ${PHP_EXT_DIR_DEFAULT} CACHE PATH "PHP extensions directory.")
+set(PHP_EXT_DIR ${PHP_PFX_EXT_DIR} CACHE PATH "PHP extensions directory.")
 set(PHP_INI_DIR ${PHP_INI_DIR_DEFAULT} CACHE PATH "Directory scanned for PHP ini files.")
-set(PHP_INCLUDE_DIR ${PHP_INCLUDE_DIR_DEFAULT} CACHE PATH "PHP include directory.")
+set(PHP_INCLUDE_DIR ${PHP_PFX_INCLUDE_DIR} CACHE PATH "PHP include directory.")
 
 install(TARGETS cproton
         DESTINATION ${PHP_EXT_DIR}

Modified: qpid/proton/branches/kgiusti-proton-136/proton-c/bindings/python/CMakeLists.txt
URL: http://svn.apache.org/viewvc/qpid/proton/branches/kgiusti-proton-136/proton-c/bindings/python/CMakeLists.txt?rev=1418449&r1=1418448&r2=1418449&view=diff
==============================================================================
--- qpid/proton/branches/kgiusti-proton-136/proton-c/bindings/python/CMakeLists.txt (original)
+++ qpid/proton/branches/kgiusti-proton-136/proton-c/bindings/python/CMakeLists.txt Fri Dec  7 19:25:02 2012
@@ -21,6 +21,9 @@ set(CMAKE_SWIG_FLAGS "-threads")
 include_directories (${PYTHON_INCLUDE_PATH})
 swig_add_module(cproton python python.i)
 swig_link_libraries(cproton ${BINDING_DEPS} ${PYTHON_LIBRARIES})
+set_target_properties(_cproton
+    PROPERTIES
+    LINK_FLAGS "${CATCH_UNDEFINED}")
 
 find_package(PythonInterp REQUIRED)
 

Modified: qpid/proton/branches/kgiusti-proton-136/proton-c/bindings/ruby/CMakeLists.txt
URL: http://svn.apache.org/viewvc/qpid/proton/branches/kgiusti-proton-136/proton-c/bindings/ruby/CMakeLists.txt?rev=1418449&r1=1418448&r2=1418449&view=diff
==============================================================================
--- qpid/proton/branches/kgiusti-proton-136/proton-c/bindings/ruby/CMakeLists.txt (original)
+++ qpid/proton/branches/kgiusti-proton-136/proton-c/bindings/ruby/CMakeLists.txt Fri Dec  7 19:25:02 2012
@@ -20,7 +20,11 @@
 include_directories (${RUBY_INCLUDE_PATH})
 swig_add_module(cproton-ruby ruby ruby.i)
 swig_link_libraries(cproton-ruby ${BINDING_DEPS} ${RUBY_LIBRARY})
-set_target_properties(cproton-ruby PROPERTIES PREFIX "" OUTPUT_NAME "cproton")
+set_target_properties(cproton-ruby
+    PROPERTIES
+    PREFIX ""
+    OUTPUT_NAME "cproton"
+    LINK_FLAGS "${CATCH_UNDEFINED}" )
 
 execute_process(COMMAND ${RUBY_EXECUTABLE} -r rbconfig -e "puts RbConfig::CONFIG['prefix']"
                 OUTPUT_VARIABLE RUBY_PREFIX

Modified: qpid/proton/branches/kgiusti-proton-136/proton-c/bindings/ruby/ChangeLog
URL: http://svn.apache.org/viewvc/qpid/proton/branches/kgiusti-proton-136/proton-c/bindings/ruby/ChangeLog?rev=1418449&r1=1418448&r2=1418449&view=diff
==============================================================================
--- qpid/proton/branches/kgiusti-proton-136/proton-c/bindings/ruby/ChangeLog (original)
+++ qpid/proton/branches/kgiusti-proton-136/proton-c/bindings/ruby/ChangeLog Fri Dec  7 19:25:02 2012
@@ -1,4 +1,6 @@
-version 0.1 (TBA):
+version 0.3 (TBA):
+
+version 0.2 (30 November 2012):
 	* First implementation of the stable APIs on top of swig.
 	* Wrote the Rspec tests to test the new APIs.
 	* Added SimpleCov support to monitor Rspec test coverage.

Modified: qpid/proton/branches/kgiusti-proton-136/proton-c/include/proton/driver.h
URL: http://svn.apache.org/viewvc/qpid/proton/branches/kgiusti-proton-136/proton-c/include/proton/driver.h?rev=1418449&r1=1418448&r2=1418449&view=diff
==============================================================================
--- qpid/proton/branches/kgiusti-proton-136/proton-c/include/proton/driver.h (original)
+++ qpid/proton/branches/kgiusti-proton-136/proton-c/include/proton/driver.h Fri Dec  7 19:25:02 2012
@@ -121,16 +121,6 @@ pn_listener_t *pn_driver_listener(pn_dri
  */
 pn_connector_t *pn_driver_connector(pn_driver_t *driver);
 
-/** Get the current time in pn_timestamp_t format.
- *
- * Returns current time in milliseconds since Unix Epoch,
- * as defined by AMQP 1.0
- *
- * @param[in] driver the driver
- * @return current time
- */
-pn_timestamp_t pn_driver_now(pn_driver_t *driver);
-
 /** Free the driver allocated via pn_driver, and all associated
  *  listeners and connectors.
  *

Modified: qpid/proton/branches/kgiusti-proton-136/proton-c/src/codec/codec.c
URL: http://svn.apache.org/viewvc/qpid/proton/branches/kgiusti-proton-136/proton-c/src/codec/codec.c?rev=1418449&r1=1418448&r2=1418449&view=diff
==============================================================================
--- qpid/proton/branches/kgiusti-proton-136/proton-c/src/codec/codec.c (original)
+++ qpid/proton/branches/kgiusti-proton-136/proton-c/src/codec/codec.c Fri Dec  7 19:25:02 2012
@@ -19,8 +19,6 @@
  *
  */
 
-#define _GNU_SOURCE
-
 #include <proton/codec.h>
 #include <proton/error.h>
 #include <proton/buffer.h>

Modified: qpid/proton/branches/kgiusti-proton-136/proton-c/src/driver.c
URL: http://svn.apache.org/viewvc/qpid/proton/branches/kgiusti-proton-136/proton-c/src/driver.c?rev=1418449&r1=1418448&r2=1418449&view=diff
==============================================================================
--- qpid/proton/branches/kgiusti-proton-136/proton-c/src/driver.c (original)
+++ qpid/proton/branches/kgiusti-proton-136/proton-c/src/driver.c Fri Dec  7 19:25:02 2012
@@ -22,7 +22,6 @@
 #include <assert.h>
 #include <poll.h>
 #include <stdio.h>
-#include <time.h>
 #include <ctype.h>
 #include <sys/types.h>
 #include <sys/socket.h>
@@ -37,6 +36,7 @@
 #include <proton/ssl.h>
 #include <proton/util.h>
 #include "util.h"
+#include "platform.h"
 #include "ssl/ssl-internal.h"
 
 /* Decls */
@@ -44,6 +44,35 @@
 #define PN_SEL_RD (0x0001)
 #define PN_SEL_WR (0x0002)
 
+/* Abstract away turning off SIGPIPE */
+#ifdef MSG_NOSIGNAL
+static inline ssize_t pn_send(int sockfd, const void *buf, size_t len) {
+    return send(sockfd, buf, len, MSG_NOSIGNAL);
+}
+
+static inline int pn_create_socket() {
+    return socket(AF_INET, SOCK_STREAM, getprotobyname("tcp")->p_proto);
+}
+#elif defined(SO_NOSIGPIPE)
+static inline ssize_t pn_send(int sockfd, const void *buf, size_t len) {
+    return send(sockfd, buf, len, 0);
+}
+
+static inline int pn_create_socket() {
+    int sock = socket(AF_INET, SOCK_STREAM, getprotobyname("tcp")->p_proto);
+    if (sock == -1) return sock;
+
+    int optval = 1;
+    if (setsockopt(sock, SOL_SOCKET, SO_NOSIGPIPE, &optval, sizeof(optval)) == -1) {
+        close(sock);
+        return -1;
+    }
+    return sock;
+}
+#else
+#error "Don't know how to turn off SIGPIPE on this platform"
+#endif
+
 struct pn_driver_t {
   pn_error_t *error;
   pn_listener_t *listener_head;
@@ -143,9 +172,9 @@ pn_listener_t *pn_listener(pn_driver_t *
     return NULL;
   }
 
-  int sock = socket(AF_INET, SOCK_STREAM, getprotobyname("tcp")->p_proto);
+  int sock = pn_create_socket();
   if (sock == -1) {
-    pn_error_from_errno(driver->error, "socket");
+    pn_error_from_errno(driver->error, "pn_create_socket");
     return NULL;
   }
 
@@ -319,9 +348,9 @@ pn_connector_t *pn_connector(pn_driver_t
     return NULL;
   }
 
-  int sock = socket(AF_INET, SOCK_STREAM, getprotobyname("tcp")->p_proto);
+  int sock = pn_create_socket();
   if (sock == -1) {
-    pn_error_from_errno(driver->error, "socket");
+    pn_error_from_errno(driver->error, "pn_create_socket");
     return NULL;
   }
 
@@ -551,7 +580,7 @@ void pn_connector_activate(pn_connector_
 static void pn_connector_write(pn_connector_t *ctor)
 {
   if (ctor->output_size > 0) {
-    ssize_t n = send(ctor->fd, ctor->output, ctor->output_size, MSG_NOSIGNAL);
+    ssize_t n = pn_send(ctor->fd, ctor->output, ctor->output_size);
     if (n < 0) {
       // XXX
         if (errno != EAGAIN) {
@@ -586,7 +615,7 @@ void pn_connector_process(pn_connector_t
     }
     pn_connector_process_input(c);
 
-    c->wakeup = pn_connector_tick(c, pn_driver_now(c->driver));
+    c->wakeup = pn_connector_tick(c, pn_i_now());
 
     pn_connector_process_output(c);
     if (c->pending_write) {
@@ -730,7 +759,7 @@ void pn_driver_wait_1(pn_driver_t *d)
 int pn_driver_wait_2(pn_driver_t *d, int timeout)
 {
   if (d->wakeup) {
-    pn_timestamp_t now = pn_driver_now(d);
+    pn_timestamp_t now = pn_i_now();
     if (now >= d->wakeup)
       timeout = 0;
     else
@@ -755,7 +784,7 @@ void pn_driver_wait_3(pn_driver_t *d)
     l = l->listener_next;
   }
 
-  pn_timestamp_t now = pn_driver_now(d);
+  pn_timestamp_t now = pn_i_now();
   pn_connector_t *c = d->connector_head;
   while (c) {
     if (c->closed) {
@@ -825,10 +854,3 @@ pn_connector_t *pn_driver_connector(pn_d
 
   return NULL;
 }
-
-pn_timestamp_t pn_driver_now(pn_driver_t *driver)
-{
-  struct timespec now;
-  if (clock_gettime(CLOCK_REALTIME, &now)) pn_fatal("clock_gettime() failed\n");
-  return ((pn_timestamp_t)now.tv_sec) * 1000 + (now.tv_nsec / 1000000);
-}

Modified: qpid/proton/branches/kgiusti-proton-136/proton-c/src/messenger.c
URL: http://svn.apache.org/viewvc/qpid/proton/branches/kgiusti-proton-136/proton-c/src/messenger.c?rev=1418449&r1=1418448&r2=1418449&view=diff
==============================================================================
--- qpid/proton/branches/kgiusti-proton-136/proton-c/src/messenger.c (original)
+++ qpid/proton/branches/kgiusti-proton-136/proton-c/src/messenger.c Fri Dec  7 19:25:02 2012
@@ -29,8 +29,8 @@
 #include <string.h>
 #include <stdio.h>
 #include <sys/time.h>
-#include <uuid/uuid.h>
 #include "util.h"
+#include "platform.h"
 
 typedef struct {
   size_t capacity;
@@ -230,11 +230,7 @@ static char *build_name(const char *name
   if (name) {
     return pn_strdup(name);
   } else {
-    char *generated = malloc(37*sizeof(char));
-    uuid_t uuid;
-    uuid_generate(uuid);
-    uuid_unparse_lower(uuid, generated);
-    return generated;
+    return pn_i_genuuid();
   }
 }
 
@@ -475,7 +471,7 @@ int pn_messenger_tsync(pn_messenger_t *m
     ctor = pn_connector_next(ctor);
   }
 
-  pn_timestamp_t now = pn_driver_now(messenger->driver);
+  pn_timestamp_t now = pn_i_now();
   long int deadline = now + timeout;
   bool pred;
 
@@ -530,7 +526,7 @@ int pn_messenger_tsync(pn_messenger_t *m
     }
 
     if (timeout >= 0) {
-      now = pn_driver_now(messenger->driver);
+      now = pn_i_now();
     }
   }
 

Modified: qpid/proton/branches/kgiusti-proton-136/proton-c/src/proton.c
URL: http://svn.apache.org/viewvc/qpid/proton/branches/kgiusti-proton-136/proton-c/src/proton.c?rev=1418449&r1=1418448&r2=1418449&view=diff
==============================================================================
--- qpid/proton/branches/kgiusti-proton-136/proton-c/src/proton.c (original)
+++ qpid/proton/branches/kgiusti-proton-136/proton-c/src/proton.c Fri Dec  7 19:25:02 2012
@@ -19,8 +19,6 @@
  *
  */
 
-#define _GNU_SOURCE
-
 #include <stdio.h>
 #include <string.h>
 #include <proton/driver.h>

Modified: qpid/proton/branches/kgiusti-proton-136/proton-j/proton/src/main/java/org/apache/qpid/proton/driver/impl/DriverImpl.java
URL: http://svn.apache.org/viewvc/qpid/proton/branches/kgiusti-proton-136/proton-j/proton/src/main/java/org/apache/qpid/proton/driver/impl/DriverImpl.java?rev=1418449&r1=1418448&r2=1418449&view=diff
==============================================================================
--- qpid/proton/branches/kgiusti-proton-136/proton-j/proton/src/main/java/org/apache/qpid/proton/driver/impl/DriverImpl.java (original)
+++ qpid/proton/branches/kgiusti-proton-136/proton-j/proton/src/main/java/org/apache/qpid/proton/driver/impl/DriverImpl.java Fri Dec  7 19:25:02 2012
@@ -38,8 +38,7 @@ import java.util.logging.Logger;
 import org.apache.qpid.proton.driver.Connector;
 import org.apache.qpid.proton.driver.Driver;
 import org.apache.qpid.proton.driver.Listener;
-import org.apache.qpid.proton.engine.impl.SaslClientImpl;
-import org.apache.qpid.proton.engine.impl.SaslServerImpl;
+import org.apache.qpid.proton.engine.impl.SaslImpl;
 
 public class DriverImpl implements Driver
 {
@@ -217,7 +216,9 @@ public class DriverImpl implements Drive
     public <C> Connector<C> createConnector(SelectableChannel c, C context)
     {
         SelectionKey key = registerInterest(c,SelectionKey.OP_READ);
-        Connector<C> co = new ConnectorImpl<C>(this, null, new SaslClientImpl(),(SocketChannel)c, context, key);
+        SaslImpl sasl = new SaslImpl();
+        sasl.client();
+        Connector<C> co = new ConnectorImpl<C>(this, null, sasl,(SocketChannel)c, context, key);
         key.attach(co);
         return co;
     }
@@ -225,7 +226,9 @@ public class DriverImpl implements Drive
     protected <C> Connector<C> createServerConnector(SelectableChannel c, C context, Listener<C> l)
     {
         SelectionKey key = registerInterest(c,SelectionKey.OP_READ);
-        Connector<C> co = new ConnectorImpl<C>(this, l, new SaslServerImpl(),(SocketChannel)c, context, key);
+        SaslImpl sasl = new SaslImpl();
+        sasl.server();
+        Connector<C> co = new ConnectorImpl<C>(this, l, sasl,(SocketChannel)c, context, key);
         key.attach(co);
         return co;
     }

Modified: qpid/proton/branches/kgiusti-proton-136/proton-j/proton/src/main/java/org/apache/qpid/proton/engine/Link.java
URL: http://svn.apache.org/viewvc/qpid/proton/branches/kgiusti-proton-136/proton-j/proton/src/main/java/org/apache/qpid/proton/engine/Link.java?rev=1418449&r1=1418448&r2=1418449&view=diff
==============================================================================
--- qpid/proton/branches/kgiusti-proton-136/proton-j/proton/src/main/java/org/apache/qpid/proton/engine/Link.java (original)
+++ qpid/proton/branches/kgiusti-proton-136/proton-j/proton/src/main/java/org/apache/qpid/proton/engine/Link.java Fri Dec  7 19:25:02 2012
@@ -21,6 +21,7 @@
 package org.apache.qpid.proton.engine;
 
 import java.util.EnumSet;
+import java.util.Iterator;
 import org.apache.qpid.proton.type.UnsignedByte;
 import org.apache.qpid.proton.type.transport.Source;
 import org.apache.qpid.proton.type.transport.Target;
@@ -51,7 +52,7 @@ public interface Link extends Endpoint
     /**
      * @return the unsettled deliveries for this link
      */
-    public Sequence<Delivery> unsettled();
+    public Iterator<Delivery> unsettled();
 
     /**
      * @return return the current delivery

Modified: qpid/proton/branches/kgiusti-proton-136/proton-j/proton/src/main/java/org/apache/qpid/proton/engine/impl/ConnectionImpl.java
URL: http://svn.apache.org/viewvc/qpid/proton/branches/kgiusti-proton-136/proton-j/proton/src/main/java/org/apache/qpid/proton/engine/impl/ConnectionImpl.java?rev=1418449&r1=1418448&r2=1418449&view=diff
==============================================================================
--- qpid/proton/branches/kgiusti-proton-136/proton-j/proton/src/main/java/org/apache/qpid/proton/engine/impl/ConnectionImpl.java (original)
+++ qpid/proton/branches/kgiusti-proton-136/proton-j/proton/src/main/java/org/apache/qpid/proton/engine/impl/ConnectionImpl.java Fri Dec  7 19:25:02 2012
@@ -22,6 +22,7 @@ package org.apache.qpid.proton.engine.im
 
 import java.util.ArrayList;
 import java.util.EnumSet;
+import java.util.Iterator;
 import java.util.List;
 import org.apache.qpid.proton.engine.*;
 import org.apache.qpid.proton.type.transport.Open;
@@ -328,7 +329,7 @@ public class ConnectionImpl extends Endp
         }
     }
 
-    public Sequence<DeliveryImpl> getWorkSequence()
+    public Iterator<DeliveryImpl> getWorkSequence()
     {
         return new WorkSequence(_workHead);
     }
@@ -343,7 +344,7 @@ public class ConnectionImpl extends Endp
         return _bound;
     }
 
-    private class WorkSequence implements Sequence<DeliveryImpl>
+    private class WorkSequence implements Iterator<DeliveryImpl>
     {
         private DeliveryImpl _next;
 
@@ -352,6 +353,18 @@ public class ConnectionImpl extends Endp
             _next = workHead;
         }
 
+        @Override
+        public boolean hasNext()
+        {
+            return _next != null;
+        }
+
+        @Override
+        public void remove()
+        {
+            throw new UnsupportedOperationException();
+        }
+
         public DeliveryImpl next()
         {
             DeliveryImpl next = _next;

Modified: qpid/proton/branches/kgiusti-proton-136/proton-j/proton/src/main/java/org/apache/qpid/proton/engine/impl/FrameParser.java
URL: http://svn.apache.org/viewvc/qpid/proton/branches/kgiusti-proton-136/proton-j/proton/src/main/java/org/apache/qpid/proton/engine/impl/FrameParser.java?rev=1418449&r1=1418448&r2=1418449&view=diff
==============================================================================
--- qpid/proton/branches/kgiusti-proton-136/proton-j/proton/src/main/java/org/apache/qpid/proton/engine/impl/FrameParser.java (original)
+++ qpid/proton/branches/kgiusti-proton-136/proton-j/proton/src/main/java/org/apache/qpid/proton/engine/impl/FrameParser.java Fri Dec  7 19:25:02 2012
@@ -27,10 +27,7 @@ import org.apache.qpid.proton.codec.Deco
 import org.apache.qpid.proton.codec.DecoderImpl;
 import org.apache.qpid.proton.codec.EncoderImpl;
 import org.apache.qpid.proton.engine.EndpointError;
-import org.apache.qpid.proton.engine.ProtonException;
-import org.apache.qpid.proton.engine.FrameTransport;
 import org.apache.qpid.proton.engine.TransportException;
-import org.apache.qpid.proton.engine.TransportInput;
 import org.apache.qpid.proton.framing.TransportFrame;
 import org.apache.qpid.proton.type.AMQPDefinedTypes;
 import org.apache.qpid.proton.type.Binary;

Modified: qpid/proton/branches/kgiusti-proton-136/proton-j/proton/src/main/java/org/apache/qpid/proton/engine/impl/PlainTransportWrapper.java
URL: http://svn.apache.org/viewvc/qpid/proton/branches/kgiusti-proton-136/proton-j/proton/src/main/java/org/apache/qpid/proton/engine/impl/PlainTransportWrapper.java?rev=1418449&r1=1418448&r2=1418449&view=diff
==============================================================================
--- qpid/proton/branches/kgiusti-proton-136/proton-j/proton/src/main/java/org/apache/qpid/proton/engine/impl/PlainTransportWrapper.java (original)
+++ qpid/proton/branches/kgiusti-proton-136/proton-j/proton/src/main/java/org/apache/qpid/proton/engine/impl/PlainTransportWrapper.java Fri Dec  7 19:25:02 2012
@@ -20,16 +20,12 @@
  */
 package org.apache.qpid.proton.engine.impl;
 
-import org.apache.qpid.proton.engine.TransportInput;
-import org.apache.qpid.proton.engine.TransportOutput;
-import org.apache.qpid.proton.engine.TransportWrapper;
-
-class PlainTransportWrapper implements TransportWrapper
+public class PlainTransportWrapper implements TransportWrapper
 {
     private final TransportOutput _outputProcessor;
     private final TransportInput _inputProcessor;
 
-    PlainTransportWrapper(TransportOutput outputProcessor,
+    public PlainTransportWrapper(TransportOutput outputProcessor,
             TransportInput inputProcessor)
     {
         _outputProcessor = outputProcessor;

Modified: qpid/proton/branches/kgiusti-proton-136/proton-j/proton/src/main/java/org/apache/qpid/proton/engine/impl/ReceiverImpl.java
URL: http://svn.apache.org/viewvc/qpid/proton/branches/kgiusti-proton-136/proton-j/proton/src/main/java/org/apache/qpid/proton/engine/impl/ReceiverImpl.java?rev=1418449&r1=1418448&r2=1418449&view=diff
==============================================================================
--- qpid/proton/branches/kgiusti-proton-136/proton-j/proton/src/main/java/org/apache/qpid/proton/engine/impl/ReceiverImpl.java (original)
+++ qpid/proton/branches/kgiusti-proton-136/proton-j/proton/src/main/java/org/apache/qpid/proton/engine/impl/ReceiverImpl.java Fri Dec  7 19:25:02 2012
@@ -20,9 +20,9 @@
  */
 package org.apache.qpid.proton.engine.impl;
 
+import java.util.Iterator;
 import org.apache.qpid.proton.engine.Delivery;
 import org.apache.qpid.proton.engine.Receiver;
-import org.apache.qpid.proton.engine.Sequence;
 
 public class ReceiverImpl extends LinkImpl implements Receiver
 {
@@ -73,7 +73,7 @@ public class ReceiverImpl extends LinkIm
         return _current.recv(bytes, offset, size);
     }
 
-    public Sequence<Delivery> unsettled()
+    public Iterator<Delivery> unsettled()
     {
         return null;  //TODO.
     }

Modified: qpid/proton/branches/kgiusti-proton-136/proton-j/proton/src/main/java/org/apache/qpid/proton/engine/impl/SaslImpl.java
URL: http://svn.apache.org/viewvc/qpid/proton/branches/kgiusti-proton-136/proton-j/proton/src/main/java/org/apache/qpid/proton/engine/impl/SaslImpl.java?rev=1418449&r1=1418448&r2=1418449&view=diff
==============================================================================
--- qpid/proton/branches/kgiusti-proton-136/proton-j/proton/src/main/java/org/apache/qpid/proton/engine/impl/SaslImpl.java (original)
+++ qpid/proton/branches/kgiusti-proton-136/proton-j/proton/src/main/java/org/apache/qpid/proton/engine/impl/SaslImpl.java Fri Dec  7 19:25:02 2012
@@ -28,9 +28,6 @@ import org.apache.qpid.proton.codec.Deco
 import org.apache.qpid.proton.codec.EncoderImpl;
 import org.apache.qpid.proton.codec.WritableBuffer;
 import org.apache.qpid.proton.engine.Sasl;
-import org.apache.qpid.proton.engine.TransportInput;
-import org.apache.qpid.proton.engine.TransportOutput;
-import org.apache.qpid.proton.engine.TransportWrapper;
 import org.apache.qpid.proton.type.AMQPDefinedTypes;
 import org.apache.qpid.proton.type.Binary;
 import org.apache.qpid.proton.type.Symbol;

Modified: qpid/proton/branches/kgiusti-proton-136/proton-j/proton/src/main/java/org/apache/qpid/proton/engine/impl/SenderImpl.java
URL: http://svn.apache.org/viewvc/qpid/proton/branches/kgiusti-proton-136/proton-j/proton/src/main/java/org/apache/qpid/proton/engine/impl/SenderImpl.java?rev=1418449&r1=1418448&r2=1418449&view=diff
==============================================================================
--- qpid/proton/branches/kgiusti-proton-136/proton-j/proton/src/main/java/org/apache/qpid/proton/engine/impl/SenderImpl.java (original)
+++ qpid/proton/branches/kgiusti-proton-136/proton-j/proton/src/main/java/org/apache/qpid/proton/engine/impl/SenderImpl.java Fri Dec  7 19:25:02 2012
@@ -20,10 +20,10 @@
  */
 package org.apache.qpid.proton.engine.impl;
 
+import java.util.Iterator;
 import org.apache.qpid.proton.engine.Delivery;
 import org.apache.qpid.proton.engine.EndpointState;
 import org.apache.qpid.proton.engine.Sender;
-import org.apache.qpid.proton.engine.Sequence;
 
 public class SenderImpl  extends LinkImpl implements Sender
 {
@@ -60,7 +60,7 @@ public class SenderImpl  extends LinkImp
         //TODO.
     }
 
-    public Sequence<Delivery> unsettled()
+    public Iterator<Delivery> unsettled()
     {
         return null;  //TODO.
     }

Modified: qpid/proton/branches/kgiusti-proton-136/proton-j/proton/src/main/java/org/apache/qpid/proton/engine/impl/TransportImpl.java
URL: http://svn.apache.org/viewvc/qpid/proton/branches/kgiusti-proton-136/proton-j/proton/src/main/java/org/apache/qpid/proton/engine/impl/TransportImpl.java?rev=1418449&r1=1418448&r2=1418449&view=diff
==============================================================================
--- qpid/proton/branches/kgiusti-proton-136/proton-j/proton/src/main/java/org/apache/qpid/proton/engine/impl/TransportImpl.java (original)
+++ qpid/proton/branches/kgiusti-proton-136/proton-j/proton/src/main/java/org/apache/qpid/proton/engine/impl/TransportImpl.java Fri Dec  7 19:25:02 2012
@@ -27,14 +27,11 @@ import org.apache.qpid.proton.codec.Writ
 import org.apache.qpid.proton.engine.Connection;
 import org.apache.qpid.proton.engine.EndpointError;
 import org.apache.qpid.proton.engine.EndpointState;
-import org.apache.qpid.proton.engine.FrameTransport;
 import org.apache.qpid.proton.engine.Sasl;
 import org.apache.qpid.proton.engine.Ssl;
 import org.apache.qpid.proton.engine.Transport;
 import org.apache.qpid.proton.engine.TransportException;
-import org.apache.qpid.proton.engine.TransportInput;
-import org.apache.qpid.proton.engine.TransportOutput;
-import org.apache.qpid.proton.engine.TransportWrapper;
+import org.apache.qpid.proton.engine.impl.ssl.SslImpl;
 import org.apache.qpid.proton.framing.TransportFrame;
 import org.apache.qpid.proton.type.*;
 import org.apache.qpid.proton.type.transport.Attach;



---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@qpid.apache.org
For additional commands, e-mail: commits-help@qpid.apache.org