Re: [DISCUSS] Rework NMS.AMQP

2018-02-14 Thread cmorgan
Hi everyone,

Tim's post about not having a platform to run Visual Studio 2017 recently
sparked a discussion between Duane, Ragnar and I about adding project and
solution files for older versions of visual studio to the NMS AMQP Provider
and were looking for guidance. 

Currently, the project only contains visual studio 2017 project and solution
files. This was chosen among other things to, 1) reduce the number of of
project files by using the new csproj format multi-target framework
capabilities, and 2) leverage the nuget package integration in the new
csproj format. Other providers seem to contain whatever visual studio files
they need to build.  There were two points of discussion that we are looking
guidance in.

1) Is visual studio 2017 too new to expected a wide variety of developers to
be able to pickup and look at this project? Does anyone have any insight
into this? 

2) Is there an automated system that depends on building tools that predate
visual studio 2017 equivalent build tools? Would it easier for CI builds if
there were project/solution files that can be built with tools the predate
vs2017? If this is not the right place to ask this, then where should I ask
this?

Based on the feedback from the above two points we'd like to come to a
decision on adding project/solution files for previous Visual Studio
versions for initial release of the new AMQP Provider. 

If anyone has any question about this please let me know.

Chris Morgan




-
Chris Morgan
--
Sent from: http://activemq.2283324.n4.nabble.com/ActiveMQ-Dev-f2368404.html


Re: Activemq duplicate dlq deletion

2018-02-14 Thread Arthur Naseef
The presence of those queues suggests an application is using those
destination names.  Deleting those queues won't stop applications from
recreating them.

So first thing is to track down where those queues are being created.

There may be a way to prevent the creation of these odd queue names via
broker configuration.

Art


On Wed, Feb 14, 2018 at 5:30 AM, Saritha  wrote:

> I could see duplicate dlq's created on my activemq server. How do I
> configure
> to delete this?
>
> DLQ.DLQ.inqueue
> DLQ.DLQ.DLQ.inqueue
>
> its creating lot of such queues
>
>
>
> --
> Sent from: http://activemq.2283324.n4.nabble.com/ActiveMQ-Dev-
> f2368404.html
>


[GitHub] activemq-artemis issue #1869: ARTEMIS-1680 - Message load balancing type isn...

2018-02-14 Thread clebertsuconic
Github user clebertsuconic commented on the issue:

https://github.com/apache/activemq-artemis/pull/1869
  
can you tidy up the commit message...


I'm a bit flexible with long names.. some people are strict with 80 
characters on the first line... but your line is way too big.. it's hard to 
read with a git log


---


[GitHub] activemq-artemis pull request #1870: ARTEMIS-1681 fix hawtio console securit...

2018-02-14 Thread asfgit
Github user asfgit closed the pull request at:

https://github.com/apache/activemq-artemis/pull/1870


---


[GitHub] activemq-artemis pull request #1871: Test fixes...

2018-02-14 Thread asfgit
Github user asfgit closed the pull request at:

https://github.com/apache/activemq-artemis/pull/1871


---


[GitHub] activemq-artemis pull request #1871: Test fixes...

2018-02-14 Thread clebertsuconic
GitHub user clebertsuconic opened a pull request:

https://github.com/apache/activemq-artemis/pull/1871

Test fixes...

Please, merge this with high priority.
I have been able to merge anything else due to these test fixes.

You can merge this pull request into a Git repository by running:

$ git pull https://github.com/clebertsuconic/activemq-artemis tests

Alternatively you can review and apply these changes as the patch at:

https://github.com/apache/activemq-artemis/pull/1871.patch

To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

This closes #1871


commit 2b4a147d9319ac3cfa04b8657fa04845550b
Author: Clebert Suconic 
Date:   2018-02-14T15:15:01Z

NO-JIRA Test fixes

LargeServerMessageImpl.finalize is eventually causing deadlocks
CoreMessage needs to check properties before decoding
PagingTest tweaks
ServerLocatorImpl can deadlock eventually, avoiding a lock and using actors
ActiveMQServerImpl.finalize is also evil and can cause deadlocks on the 
testsuite

commit 8275c86bd86c993107bf82f997474c78310840e1
Author: Clebert Suconic 
Date:   2018-02-14T04:03:18Z

fixing MQTT test

commit 67609601942dd3ebb873a036efbfaf414e4d3756
Author: Clebert Suconic 
Date:   2018-02-13T19:40:37Z

NO-JIRA Fixing Deadlock on MQTTConnection

Found during a testsuite run




---


[GitHub] activemq-artemis pull request #1844: ARTEMIS-1645 fix test

2018-02-14 Thread asfgit
Github user asfgit closed the pull request at:

https://github.com/apache/activemq-artemis/pull/1844


---


[GitHub] activemq-artemis pull request #1845: ARTEMIS-1632 add PropertyPermission for...

2018-02-14 Thread asfgit
Github user asfgit closed the pull request at:

https://github.com/apache/activemq-artemis/pull/1845


---


Activemq duplicate dlq deletion

2018-02-14 Thread Saritha
I could see duplicate dlq's created on my activemq server. How do I configure
to delete this?

DLQ.DLQ.inqueue
DLQ.DLQ.DLQ.inqueue

its creating lot of such queues



--
Sent from: http://activemq.2283324.n4.nabble.com/ActiveMQ-Dev-f2368404.html


[GitHub] activemq-artemis pull request #1835: ARTEMIS-1651 Allow custom etc and data ...

2018-02-14 Thread asfgit
Github user asfgit closed the pull request at:

https://github.com/apache/activemq-artemis/pull/1835


---


Apache EU Roadshow CFP Closing Soon (23 February)

2018-02-14 Thread Sharan F

Hello Everyone

This is an initial reminder to let you all know that we are holding an 
Apache EU Roadshow co-located with FOSS Backstage in Berlin on 13^th and 
14^th June 2018. https://s.apache.org/tCHx


The Call for Proposals (CFP) for the Apache EU Roadshow is currently 
open and will close at the end of next week, so if you have been 
delaying making a submission because the closing date seemed a long way 
off, then it's time to start getting your proposals submitted.


So what are we looking for?
We will have 2 Apache Devrooms available during the 2 day Roadshow so 
are looking for projects including incubating ones, to submit 
presentations, panel discussions, BoFs, or workshop proposals. The main 
focus of the Roadshow will be IoT, Cloud, Httpd and Tomcat so if your 
project is involved in or around any of these technologies at Apache 
then we are very interested in hearing from you.


Community and collaboration is important at Apache so if your project is 
interested in organising a project sprint, meetup or hackathon during 
the Roadshow, then please submit it inthe CFP as we do have some space 
available to allocate for these.


If you are wanting to submit a talk on open source community related 
topics such as the Apache Way, governance or legal aspects then please 
submit these to the CFP for FOSS Backstage.


Tickets for the Apache EU Roadshow are included as part of the 
registration for FOSS Backstage, so to attend the Roadshow you will need 
to register for FOSS Backstage. Early Bird tickets are still available 
until the 21^st February 2018.


Please see below for important URLs to remember:

-  To submit a CFP for the Apache EU Roadshow 
:http://apachecon.com/euroadshow18/ 


-  To submit a CFP for FOSS Backstage : 
https://foss-backstage.de/call-papers


-  To register to attend the Apache EU Roadshow and/or FOSS Backstage : 
https://foss-backstage.de/tickets


For further updates and information about the Apache EU Roadshowplease 
check http://apachecon.com/euroadshow18/


Thanks
Sharan Foga, VP Apache Community Development


[GitHub] activemq-artemis issue #1793: ARTEMIS-1498: Openwire internal headers should...

2018-02-14 Thread clebertsuconic
Github user clebertsuconic commented on the issue:

https://github.com/apache/activemq-artemis/pull/1793
  
for this kind of big PR to be merged, we need the full testsuite to be 
passing. 

Not talking about the PR testsuite.

There's an issue that we don't have an env at apache where we can run the 
whole tests.. so we have to do it on our boxes. I have a box at home where I do 
this. .and another box at work.


basically:

 mvn -Ptests test

and the same on the openwire tests..


---


[GitHub] activemq-artemis issue #1793: ARTEMIS-1498: Openwire internal headers should...

2018-02-14 Thread michaelandrepearce
Github user michaelandrepearce commented on the issue:

https://github.com/apache/activemq-artemis/pull/1793
  
Really need PR build to be green. Maybe re-push with a comment update to 
get try trigger another build.

Seems some methods have been still left in-implemented. Also could/should 
look to use string to SimpleString  pools.

Lastly have you checked that this persists to disk and is recoverable 
without converting to core.


---


[GitHub] activemq-artemis pull request #1793: ARTEMIS-1498: Openwire internal headers...

2018-02-14 Thread michaelandrepearce
Github user michaelandrepearce commented on a diff in the pull request:

https://github.com/apache/activemq-artemis/pull/1793#discussion_r168166944
  
--- Diff: 
artemis-protocols/artemis-openwire-protocol/src/main/java/org/apache/activemq/artemis/core/protocol/openwire/OpenWireMessage.java
 ---
@@ -0,0 +1,673 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ * 
+ * http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.activemq.artemis.core.protocol.openwire;
+
+import javax.jms.JMSException;
+import java.io.IOException;
+import java.util.Enumeration;
+import java.util.HashSet;
+import java.util.Set;
+
+import io.netty.buffer.ByteBuf;
+import io.netty.buffer.Unpooled;
+import org.apache.activemq.artemis.api.core.ActiveMQBuffer;
+import org.apache.activemq.artemis.api.core.ActiveMQException;
+import 
org.apache.activemq.artemis.api.core.ActiveMQPropertyConversionException;
+import org.apache.activemq.artemis.api.core.ICoreMessage;
+import org.apache.activemq.artemis.api.core.Message;
+import org.apache.activemq.artemis.api.core.RefCountMessage;
+import org.apache.activemq.artemis.api.core.SimpleString;
+import org.apache.activemq.artemis.core.buffers.impl.ChannelBufferWrapper;
+import 
org.apache.activemq.artemis.core.message.impl.CoreMessageObjectPools;
+import org.apache.activemq.artemis.core.persistence.Persister;
+import org.apache.activemq.artemis.utils.DataConstants;
+import org.apache.activemq.command.ActiveMQDestination;
+import org.apache.activemq.command.ActiveMQMessage;
+import org.apache.activemq.openwire.OpenWireFormat;
+import org.apache.activemq.util.ByteSequence;
+import org.apache.activemq.wireformat.WireFormat;
+
+public class OpenWireMessage extends RefCountMessage {
+
+   private org.apache.activemq.command.ActiveMQMessage message;
+   private WireFormat wireFormat;
+   ByteBuf data;
+   boolean bufferValid;
+
+
+   public OpenWireMessage(org.apache.activemq.command.ActiveMQMessage 
message, WireFormat wireFormat) {
+  this.message = message;
+  this.wireFormat = wireFormat;
+  try {
+ ByteSequence byteSequence = this.wireFormat.marshal(message);
+ setBuffer(Unpooled.copiedBuffer(byteSequence.getData(), 
byteSequence.getOffset(), byteSequence.getLength()));
+  } catch (IOException e) {
+ throw new ActiveMQPropertyConversionException(e.getMessage());
+  }
+   }
+
+   public OpenWireMessage() {
+   }
+
+   public void setMarsheller(WireFormat wireFormat) {
+  this.wireFormat = wireFormat;
+   }
+
+   public ActiveMQMessage getAMQMessage() {
+  if (message == null) {
+ if (data != null) {
+try {
+   message = (ActiveMQMessage) wireFormat.unmarshal(new 
ChannelBufferWrapper(data));
+} catch (IOException e) {
+   throw new 
ActiveMQPropertyConversionException(e.getMessage());
+}
+return message;
+ } else {
+return new ActiveMQMessage();
+ }
+  }
+  return message;
+   }
+
+   @Override
+   public void messageChanged() {
+   }
+
+   @Override
+   public Long getScheduledDeliveryTime() {
+  return message.getArrival();
+   }
+
+   @Override
+   public SimpleString getReplyTo() {
+  return 
SimpleString.toSimpleString(message.getReplyTo().getPhysicalName());
+   }
+
+   @Override
+   public Message setReplyTo(SimpleString address) {
+  
message.setReplyTo(ActiveMQDestination.createDestination(address.toString(), 
ActiveMQDestination.QUEUE_TYPE));
+  return this;
+   }
+
+   @Override
+   public Message setBuffer(ByteBuf buffer) {
+  this.data = buffer;
+  return this;
+   }
+
+   @Override
+   public ByteBuf getBuffer() {
+  if (data == null) {
+ return null;
+  } else {
+ return 

[GitHub] activemq-artemis pull request #1793: ARTEMIS-1498: Openwire internal headers...

2018-02-14 Thread michaelandrepearce
Github user michaelandrepearce commented on a diff in the pull request:

https://github.com/apache/activemq-artemis/pull/1793#discussion_r168166771
  
--- Diff: 
artemis-protocols/artemis-openwire-protocol/src/main/java/org/apache/activemq/artemis/core/protocol/openwire/OpenWireMessage.java
 ---
@@ -0,0 +1,673 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ * 
+ * http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.activemq.artemis.core.protocol.openwire;
+
+import javax.jms.JMSException;
+import java.io.IOException;
+import java.util.Enumeration;
+import java.util.HashSet;
+import java.util.Set;
+
+import io.netty.buffer.ByteBuf;
+import io.netty.buffer.Unpooled;
+import org.apache.activemq.artemis.api.core.ActiveMQBuffer;
+import org.apache.activemq.artemis.api.core.ActiveMQException;
+import 
org.apache.activemq.artemis.api.core.ActiveMQPropertyConversionException;
+import org.apache.activemq.artemis.api.core.ICoreMessage;
+import org.apache.activemq.artemis.api.core.Message;
+import org.apache.activemq.artemis.api.core.RefCountMessage;
+import org.apache.activemq.artemis.api.core.SimpleString;
+import org.apache.activemq.artemis.core.buffers.impl.ChannelBufferWrapper;
+import 
org.apache.activemq.artemis.core.message.impl.CoreMessageObjectPools;
+import org.apache.activemq.artemis.core.persistence.Persister;
+import org.apache.activemq.artemis.utils.DataConstants;
+import org.apache.activemq.command.ActiveMQDestination;
+import org.apache.activemq.command.ActiveMQMessage;
+import org.apache.activemq.openwire.OpenWireFormat;
+import org.apache.activemq.util.ByteSequence;
+import org.apache.activemq.wireformat.WireFormat;
+
+public class OpenWireMessage extends RefCountMessage {
+
+   private org.apache.activemq.command.ActiveMQMessage message;
+   private WireFormat wireFormat;
+   ByteBuf data;
+   boolean bufferValid;
+
+
+   public OpenWireMessage(org.apache.activemq.command.ActiveMQMessage 
message, WireFormat wireFormat) {
+  this.message = message;
+  this.wireFormat = wireFormat;
+  try {
+ ByteSequence byteSequence = this.wireFormat.marshal(message);
+ setBuffer(Unpooled.copiedBuffer(byteSequence.getData(), 
byteSequence.getOffset(), byteSequence.getLength()));
+  } catch (IOException e) {
+ throw new ActiveMQPropertyConversionException(e.getMessage());
+  }
+   }
+
+   public OpenWireMessage() {
+   }
+
+   public void setMarsheller(WireFormat wireFormat) {
+  this.wireFormat = wireFormat;
+   }
+
+   public ActiveMQMessage getAMQMessage() {
+  if (message == null) {
+ if (data != null) {
+try {
+   message = (ActiveMQMessage) wireFormat.unmarshal(new 
ChannelBufferWrapper(data));
+} catch (IOException e) {
+   throw new 
ActiveMQPropertyConversionException(e.getMessage());
+}
+return message;
+ } else {
+return new ActiveMQMessage();
+ }
+  }
+  return message;
+   }
+
+   @Override
+   public void messageChanged() {
+   }
+
+   @Override
+   public Long getScheduledDeliveryTime() {
+  return message.getArrival();
+   }
+
+   @Override
+   public SimpleString getReplyTo() {
+  return 
SimpleString.toSimpleString(message.getReplyTo().getPhysicalName());
+   }
+
+   @Override
+   public Message setReplyTo(SimpleString address) {
+  
message.setReplyTo(ActiveMQDestination.createDestination(address.toString(), 
ActiveMQDestination.QUEUE_TYPE));
+  return this;
+   }
+
+   @Override
+   public Message setBuffer(ByteBuf buffer) {
+  this.data = buffer;
+  return this;
+   }
+
+   @Override
+   public ByteBuf getBuffer() {
+  if (data == null) {
+ return null;
+  } else {
+ return 

[GitHub] activemq-artemis pull request #1793: ARTEMIS-1498: Openwire internal headers...

2018-02-14 Thread michaelandrepearce
Github user michaelandrepearce commented on a diff in the pull request:

https://github.com/apache/activemq-artemis/pull/1793#discussion_r168166219
  
--- Diff: 
artemis-protocols/artemis-openwire-protocol/src/main/java/org/apache/activemq/artemis/core/protocol/openwire/OpenWireMessage.java
 ---
@@ -0,0 +1,673 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ * 
+ * http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.activemq.artemis.core.protocol.openwire;
+
+import javax.jms.JMSException;
+import java.io.IOException;
+import java.util.Enumeration;
+import java.util.HashSet;
+import java.util.Set;
+
+import io.netty.buffer.ByteBuf;
+import io.netty.buffer.Unpooled;
+import org.apache.activemq.artemis.api.core.ActiveMQBuffer;
+import org.apache.activemq.artemis.api.core.ActiveMQException;
+import 
org.apache.activemq.artemis.api.core.ActiveMQPropertyConversionException;
+import org.apache.activemq.artemis.api.core.ICoreMessage;
+import org.apache.activemq.artemis.api.core.Message;
+import org.apache.activemq.artemis.api.core.RefCountMessage;
+import org.apache.activemq.artemis.api.core.SimpleString;
+import org.apache.activemq.artemis.core.buffers.impl.ChannelBufferWrapper;
+import 
org.apache.activemq.artemis.core.message.impl.CoreMessageObjectPools;
+import org.apache.activemq.artemis.core.persistence.Persister;
+import org.apache.activemq.artemis.utils.DataConstants;
+import org.apache.activemq.command.ActiveMQDestination;
+import org.apache.activemq.command.ActiveMQMessage;
+import org.apache.activemq.openwire.OpenWireFormat;
+import org.apache.activemq.util.ByteSequence;
+import org.apache.activemq.wireformat.WireFormat;
+
+public class OpenWireMessage extends RefCountMessage {
+
+   private org.apache.activemq.command.ActiveMQMessage message;
+   private WireFormat wireFormat;
+   ByteBuf data;
+   boolean bufferValid;
+
+
+   public OpenWireMessage(org.apache.activemq.command.ActiveMQMessage 
message, WireFormat wireFormat) {
+  this.message = message;
+  this.wireFormat = wireFormat;
+  try {
+ ByteSequence byteSequence = this.wireFormat.marshal(message);
+ setBuffer(Unpooled.copiedBuffer(byteSequence.getData(), 
byteSequence.getOffset(), byteSequence.getLength()));
+  } catch (IOException e) {
+ throw new ActiveMQPropertyConversionException(e.getMessage());
+  }
+   }
+
+   public OpenWireMessage() {
+   }
+
+   public void setMarsheller(WireFormat wireFormat) {
+  this.wireFormat = wireFormat;
+   }
+
+   public ActiveMQMessage getAMQMessage() {
+  if (message == null) {
+ if (data != null) {
+try {
+   message = (ActiveMQMessage) wireFormat.unmarshal(new 
ChannelBufferWrapper(data));
+} catch (IOException e) {
+   throw new 
ActiveMQPropertyConversionException(e.getMessage());
+}
+return message;
+ } else {
+return new ActiveMQMessage();
+ }
+  }
+  return message;
+   }
+
+   @Override
+   public void messageChanged() {
+   }
+
+   @Override
+   public Long getScheduledDeliveryTime() {
+  return message.getArrival();
+   }
+
+   @Override
+   public SimpleString getReplyTo() {
+  return 
SimpleString.toSimpleString(message.getReplyTo().getPhysicalName());
+   }
+
+   @Override
+   public Message setReplyTo(SimpleString address) {
+  
message.setReplyTo(ActiveMQDestination.createDestination(address.toString(), 
ActiveMQDestination.QUEUE_TYPE));
+  return this;
+   }
+
+   @Override
+   public Message setBuffer(ByteBuf buffer) {
+  this.data = buffer;
+  return this;
+   }
+
+   @Override
+   public ByteBuf getBuffer() {
+  if (data == null) {
+ return null;
+  } else {
+ return 

[GitHub] activemq-artemis pull request #1793: ARTEMIS-1498: Openwire internal headers...

2018-02-14 Thread michaelandrepearce
Github user michaelandrepearce commented on a diff in the pull request:

https://github.com/apache/activemq-artemis/pull/1793#discussion_r168166679
  
--- Diff: 
artemis-protocols/artemis-openwire-protocol/src/main/java/org/apache/activemq/artemis/core/protocol/openwire/OpenWireMessage.java
 ---
@@ -0,0 +1,673 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ * 
+ * http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.activemq.artemis.core.protocol.openwire;
+
+import javax.jms.JMSException;
+import java.io.IOException;
+import java.util.Enumeration;
+import java.util.HashSet;
+import java.util.Set;
+
+import io.netty.buffer.ByteBuf;
+import io.netty.buffer.Unpooled;
+import org.apache.activemq.artemis.api.core.ActiveMQBuffer;
+import org.apache.activemq.artemis.api.core.ActiveMQException;
+import 
org.apache.activemq.artemis.api.core.ActiveMQPropertyConversionException;
+import org.apache.activemq.artemis.api.core.ICoreMessage;
+import org.apache.activemq.artemis.api.core.Message;
+import org.apache.activemq.artemis.api.core.RefCountMessage;
+import org.apache.activemq.artemis.api.core.SimpleString;
+import org.apache.activemq.artemis.core.buffers.impl.ChannelBufferWrapper;
+import 
org.apache.activemq.artemis.core.message.impl.CoreMessageObjectPools;
+import org.apache.activemq.artemis.core.persistence.Persister;
+import org.apache.activemq.artemis.utils.DataConstants;
+import org.apache.activemq.command.ActiveMQDestination;
+import org.apache.activemq.command.ActiveMQMessage;
+import org.apache.activemq.openwire.OpenWireFormat;
+import org.apache.activemq.util.ByteSequence;
+import org.apache.activemq.wireformat.WireFormat;
+
+public class OpenWireMessage extends RefCountMessage {
+
+   private org.apache.activemq.command.ActiveMQMessage message;
+   private WireFormat wireFormat;
+   ByteBuf data;
+   boolean bufferValid;
+
+
+   public OpenWireMessage(org.apache.activemq.command.ActiveMQMessage 
message, WireFormat wireFormat) {
+  this.message = message;
+  this.wireFormat = wireFormat;
+  try {
+ ByteSequence byteSequence = this.wireFormat.marshal(message);
+ setBuffer(Unpooled.copiedBuffer(byteSequence.getData(), 
byteSequence.getOffset(), byteSequence.getLength()));
+  } catch (IOException e) {
+ throw new ActiveMQPropertyConversionException(e.getMessage());
+  }
+   }
+
+   public OpenWireMessage() {
+   }
+
+   public void setMarsheller(WireFormat wireFormat) {
+  this.wireFormat = wireFormat;
+   }
+
+   public ActiveMQMessage getAMQMessage() {
+  if (message == null) {
+ if (data != null) {
+try {
+   message = (ActiveMQMessage) wireFormat.unmarshal(new 
ChannelBufferWrapper(data));
+} catch (IOException e) {
+   throw new 
ActiveMQPropertyConversionException(e.getMessage());
+}
+return message;
+ } else {
+return new ActiveMQMessage();
+ }
+  }
+  return message;
+   }
+
+   @Override
+   public void messageChanged() {
+   }
+
+   @Override
+   public Long getScheduledDeliveryTime() {
+  return message.getArrival();
+   }
+
+   @Override
+   public SimpleString getReplyTo() {
+  return 
SimpleString.toSimpleString(message.getReplyTo().getPhysicalName());
+   }
+
+   @Override
+   public Message setReplyTo(SimpleString address) {
+  
message.setReplyTo(ActiveMQDestination.createDestination(address.toString(), 
ActiveMQDestination.QUEUE_TYPE));
+  return this;
+   }
+
+   @Override
+   public Message setBuffer(ByteBuf buffer) {
+  this.data = buffer;
+  return this;
+   }
+
+   @Override
+   public ByteBuf getBuffer() {
+  if (data == null) {
+ return null;
+  } else {
+ return 

[GitHub] activemq-artemis pull request #1793: ARTEMIS-1498: Openwire internal headers...

2018-02-14 Thread michaelandrepearce
Github user michaelandrepearce commented on a diff in the pull request:

https://github.com/apache/activemq-artemis/pull/1793#discussion_r168166465
  
--- Diff: 
artemis-protocols/artemis-openwire-protocol/src/main/java/org/apache/activemq/artemis/core/protocol/openwire/OpenWireMessage.java
 ---
@@ -0,0 +1,673 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ * 
+ * http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.activemq.artemis.core.protocol.openwire;
+
+import javax.jms.JMSException;
+import java.io.IOException;
+import java.util.Enumeration;
+import java.util.HashSet;
+import java.util.Set;
+
+import io.netty.buffer.ByteBuf;
+import io.netty.buffer.Unpooled;
+import org.apache.activemq.artemis.api.core.ActiveMQBuffer;
+import org.apache.activemq.artemis.api.core.ActiveMQException;
+import 
org.apache.activemq.artemis.api.core.ActiveMQPropertyConversionException;
+import org.apache.activemq.artemis.api.core.ICoreMessage;
+import org.apache.activemq.artemis.api.core.Message;
+import org.apache.activemq.artemis.api.core.RefCountMessage;
+import org.apache.activemq.artemis.api.core.SimpleString;
+import org.apache.activemq.artemis.core.buffers.impl.ChannelBufferWrapper;
+import 
org.apache.activemq.artemis.core.message.impl.CoreMessageObjectPools;
+import org.apache.activemq.artemis.core.persistence.Persister;
+import org.apache.activemq.artemis.utils.DataConstants;
+import org.apache.activemq.command.ActiveMQDestination;
+import org.apache.activemq.command.ActiveMQMessage;
+import org.apache.activemq.openwire.OpenWireFormat;
+import org.apache.activemq.util.ByteSequence;
+import org.apache.activemq.wireformat.WireFormat;
+
+public class OpenWireMessage extends RefCountMessage {
+
+   private org.apache.activemq.command.ActiveMQMessage message;
+   private WireFormat wireFormat;
+   ByteBuf data;
+   boolean bufferValid;
+
+
+   public OpenWireMessage(org.apache.activemq.command.ActiveMQMessage 
message, WireFormat wireFormat) {
+  this.message = message;
+  this.wireFormat = wireFormat;
+  try {
+ ByteSequence byteSequence = this.wireFormat.marshal(message);
+ setBuffer(Unpooled.copiedBuffer(byteSequence.getData(), 
byteSequence.getOffset(), byteSequence.getLength()));
+  } catch (IOException e) {
+ throw new ActiveMQPropertyConversionException(e.getMessage());
+  }
+   }
+
+   public OpenWireMessage() {
+   }
+
+   public void setMarsheller(WireFormat wireFormat) {
+  this.wireFormat = wireFormat;
+   }
+
+   public ActiveMQMessage getAMQMessage() {
+  if (message == null) {
+ if (data != null) {
+try {
+   message = (ActiveMQMessage) wireFormat.unmarshal(new 
ChannelBufferWrapper(data));
+} catch (IOException e) {
+   throw new 
ActiveMQPropertyConversionException(e.getMessage());
+}
+return message;
+ } else {
+return new ActiveMQMessage();
+ }
+  }
+  return message;
+   }
+
+   @Override
+   public void messageChanged() {
+   }
--- End diff --

Does this need implementing 


---


[GitHub] activemq-artemis pull request #1793: ARTEMIS-1498: Openwire internal headers...

2018-02-14 Thread michaelandrepearce
Github user michaelandrepearce commented on a diff in the pull request:

https://github.com/apache/activemq-artemis/pull/1793#discussion_r168166093
  
--- Diff: 
artemis-protocols/artemis-openwire-protocol/src/main/java/org/apache/activemq/artemis/core/protocol/openwire/OpenWireMessage.java
 ---
@@ -0,0 +1,673 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ * 
+ * http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.activemq.artemis.core.protocol.openwire;
+
+import javax.jms.JMSException;
+import java.io.IOException;
+import java.util.Enumeration;
+import java.util.HashSet;
+import java.util.Set;
+
+import io.netty.buffer.ByteBuf;
+import io.netty.buffer.Unpooled;
+import org.apache.activemq.artemis.api.core.ActiveMQBuffer;
+import org.apache.activemq.artemis.api.core.ActiveMQException;
+import 
org.apache.activemq.artemis.api.core.ActiveMQPropertyConversionException;
+import org.apache.activemq.artemis.api.core.ICoreMessage;
+import org.apache.activemq.artemis.api.core.Message;
+import org.apache.activemq.artemis.api.core.RefCountMessage;
+import org.apache.activemq.artemis.api.core.SimpleString;
+import org.apache.activemq.artemis.core.buffers.impl.ChannelBufferWrapper;
+import 
org.apache.activemq.artemis.core.message.impl.CoreMessageObjectPools;
+import org.apache.activemq.artemis.core.persistence.Persister;
+import org.apache.activemq.artemis.utils.DataConstants;
+import org.apache.activemq.command.ActiveMQDestination;
+import org.apache.activemq.command.ActiveMQMessage;
+import org.apache.activemq.openwire.OpenWireFormat;
+import org.apache.activemq.util.ByteSequence;
+import org.apache.activemq.wireformat.WireFormat;
+
+public class OpenWireMessage extends RefCountMessage {
+
+   private org.apache.activemq.command.ActiveMQMessage message;
+   private WireFormat wireFormat;
+   ByteBuf data;
+   boolean bufferValid;
+
+
+   public OpenWireMessage(org.apache.activemq.command.ActiveMQMessage 
message, WireFormat wireFormat) {
+  this.message = message;
+  this.wireFormat = wireFormat;
+  try {
+ ByteSequence byteSequence = this.wireFormat.marshal(message);
+ setBuffer(Unpooled.copiedBuffer(byteSequence.getData(), 
byteSequence.getOffset(), byteSequence.getLength()));
+  } catch (IOException e) {
+ throw new ActiveMQPropertyConversionException(e.getMessage());
+  }
+   }
+
+   public OpenWireMessage() {
+   }
+
+   public void setMarsheller(WireFormat wireFormat) {
+  this.wireFormat = wireFormat;
+   }
+
+   public ActiveMQMessage getAMQMessage() {
+  if (message == null) {
+ if (data != null) {
+try {
+   message = (ActiveMQMessage) wireFormat.unmarshal(new 
ChannelBufferWrapper(data));
+} catch (IOException e) {
+   throw new 
ActiveMQPropertyConversionException(e.getMessage());
+}
+return message;
+ } else {
+return new ActiveMQMessage();
+ }
+  }
+  return message;
+   }
+
+   @Override
+   public void messageChanged() {
+   }
+
+   @Override
+   public Long getScheduledDeliveryTime() {
+  return message.getArrival();
+   }
+
+   @Override
+   public SimpleString getReplyTo() {
+  return 
SimpleString.toSimpleString(message.getReplyTo().getPhysicalName());
+   }
+
+   @Override
+   public Message setReplyTo(SimpleString address) {
+  
message.setReplyTo(ActiveMQDestination.createDestination(address.toString(), 
ActiveMQDestination.QUEUE_TYPE));
+  return this;
+   }
+
+   @Override
+   public Message setBuffer(ByteBuf buffer) {
+  this.data = buffer;
+  return this;
+   }
+
+   @Override
+   public ByteBuf getBuffer() {
+  if (data == null) {
+ return null;
+  } else {
+ return 

[GitHub] activemq-artemis pull request #1793: ARTEMIS-1498: Openwire internal headers...

2018-02-14 Thread michaelandrepearce
Github user michaelandrepearce commented on a diff in the pull request:

https://github.com/apache/activemq-artemis/pull/1793#discussion_r168166559
  
--- Diff: 
artemis-protocols/artemis-openwire-protocol/src/main/java/org/apache/activemq/artemis/core/protocol/openwire/OpenWireMessage.java
 ---
@@ -0,0 +1,673 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ * 
+ * http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.activemq.artemis.core.protocol.openwire;
+
+import javax.jms.JMSException;
+import java.io.IOException;
+import java.util.Enumeration;
+import java.util.HashSet;
+import java.util.Set;
+
+import io.netty.buffer.ByteBuf;
+import io.netty.buffer.Unpooled;
+import org.apache.activemq.artemis.api.core.ActiveMQBuffer;
+import org.apache.activemq.artemis.api.core.ActiveMQException;
+import 
org.apache.activemq.artemis.api.core.ActiveMQPropertyConversionException;
+import org.apache.activemq.artemis.api.core.ICoreMessage;
+import org.apache.activemq.artemis.api.core.Message;
+import org.apache.activemq.artemis.api.core.RefCountMessage;
+import org.apache.activemq.artemis.api.core.SimpleString;
+import org.apache.activemq.artemis.core.buffers.impl.ChannelBufferWrapper;
+import 
org.apache.activemq.artemis.core.message.impl.CoreMessageObjectPools;
+import org.apache.activemq.artemis.core.persistence.Persister;
+import org.apache.activemq.artemis.utils.DataConstants;
+import org.apache.activemq.command.ActiveMQDestination;
+import org.apache.activemq.command.ActiveMQMessage;
+import org.apache.activemq.openwire.OpenWireFormat;
+import org.apache.activemq.util.ByteSequence;
+import org.apache.activemq.wireformat.WireFormat;
+
+public class OpenWireMessage extends RefCountMessage {
+
+   private org.apache.activemq.command.ActiveMQMessage message;
+   private WireFormat wireFormat;
+   ByteBuf data;
+   boolean bufferValid;
+
+
+   public OpenWireMessage(org.apache.activemq.command.ActiveMQMessage 
message, WireFormat wireFormat) {
+  this.message = message;
+  this.wireFormat = wireFormat;
+  try {
+ ByteSequence byteSequence = this.wireFormat.marshal(message);
+ setBuffer(Unpooled.copiedBuffer(byteSequence.getData(), 
byteSequence.getOffset(), byteSequence.getLength()));
+  } catch (IOException e) {
+ throw new ActiveMQPropertyConversionException(e.getMessage());
+  }
+   }
+
+   public OpenWireMessage() {
+   }
+
+   public void setMarsheller(WireFormat wireFormat) {
+  this.wireFormat = wireFormat;
+   }
+
+   public ActiveMQMessage getAMQMessage() {
+  if (message == null) {
+ if (data != null) {
+try {
+   message = (ActiveMQMessage) wireFormat.unmarshal(new 
ChannelBufferWrapper(data));
+} catch (IOException e) {
+   throw new 
ActiveMQPropertyConversionException(e.getMessage());
+}
+return message;
+ } else {
+return new ActiveMQMessage();
+ }
+  }
+  return message;
+   }
+
+   @Override
+   public void messageChanged() {
+   }
+
+   @Override
+   public Long getScheduledDeliveryTime() {
+  return message.getArrival();
+   }
+
+   @Override
+   public SimpleString getReplyTo() {
+  return 
SimpleString.toSimpleString(message.getReplyTo().getPhysicalName());
--- End diff --

Could use pool


---


[GitHub] activemq-artemis pull request #1793: ARTEMIS-1498: Openwire internal headers...

2018-02-14 Thread michaelandrepearce
Github user michaelandrepearce commented on a diff in the pull request:

https://github.com/apache/activemq-artemis/pull/1793#discussion_r168166047
  
--- Diff: 
artemis-protocols/artemis-openwire-protocol/src/main/java/org/apache/activemq/artemis/core/protocol/openwire/OpenWireMessage.java
 ---
@@ -0,0 +1,673 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ * 
+ * http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.activemq.artemis.core.protocol.openwire;
+
+import javax.jms.JMSException;
+import java.io.IOException;
+import java.util.Enumeration;
+import java.util.HashSet;
+import java.util.Set;
+
+import io.netty.buffer.ByteBuf;
+import io.netty.buffer.Unpooled;
+import org.apache.activemq.artemis.api.core.ActiveMQBuffer;
+import org.apache.activemq.artemis.api.core.ActiveMQException;
+import 
org.apache.activemq.artemis.api.core.ActiveMQPropertyConversionException;
+import org.apache.activemq.artemis.api.core.ICoreMessage;
+import org.apache.activemq.artemis.api.core.Message;
+import org.apache.activemq.artemis.api.core.RefCountMessage;
+import org.apache.activemq.artemis.api.core.SimpleString;
+import org.apache.activemq.artemis.core.buffers.impl.ChannelBufferWrapper;
+import 
org.apache.activemq.artemis.core.message.impl.CoreMessageObjectPools;
+import org.apache.activemq.artemis.core.persistence.Persister;
+import org.apache.activemq.artemis.utils.DataConstants;
+import org.apache.activemq.command.ActiveMQDestination;
+import org.apache.activemq.command.ActiveMQMessage;
+import org.apache.activemq.openwire.OpenWireFormat;
+import org.apache.activemq.util.ByteSequence;
+import org.apache.activemq.wireformat.WireFormat;
+
+public class OpenWireMessage extends RefCountMessage {
+
+   private org.apache.activemq.command.ActiveMQMessage message;
+   private WireFormat wireFormat;
+   ByteBuf data;
+   boolean bufferValid;
+
+
+   public OpenWireMessage(org.apache.activemq.command.ActiveMQMessage 
message, WireFormat wireFormat) {
+  this.message = message;
+  this.wireFormat = wireFormat;
+  try {
+ ByteSequence byteSequence = this.wireFormat.marshal(message);
+ setBuffer(Unpooled.copiedBuffer(byteSequence.getData(), 
byteSequence.getOffset(), byteSequence.getLength()));
+  } catch (IOException e) {
+ throw new ActiveMQPropertyConversionException(e.getMessage());
+  }
+   }
+
+   public OpenWireMessage() {
+   }
+
+   public void setMarsheller(WireFormat wireFormat) {
+  this.wireFormat = wireFormat;
+   }
+
+   public ActiveMQMessage getAMQMessage() {
+  if (message == null) {
+ if (data != null) {
+try {
+   message = (ActiveMQMessage) wireFormat.unmarshal(new 
ChannelBufferWrapper(data));
+} catch (IOException e) {
+   throw new 
ActiveMQPropertyConversionException(e.getMessage());
+}
+return message;
+ } else {
+return new ActiveMQMessage();
+ }
+  }
+  return message;
+   }
+
+   @Override
+   public void messageChanged() {
+   }
+
+   @Override
+   public Long getScheduledDeliveryTime() {
+  return message.getArrival();
+   }
+
+   @Override
+   public SimpleString getReplyTo() {
+  return 
SimpleString.toSimpleString(message.getReplyTo().getPhysicalName());
+   }
+
+   @Override
+   public Message setReplyTo(SimpleString address) {
+  
message.setReplyTo(ActiveMQDestination.createDestination(address.toString(), 
ActiveMQDestination.QUEUE_TYPE));
+  return this;
+   }
+
+   @Override
+   public Message setBuffer(ByteBuf buffer) {
+  this.data = buffer;
+  return this;
+   }
+
+   @Override
+   public ByteBuf getBuffer() {
+  if (data == null) {
+ return null;
+  } else {
+ return 

[GitHub] activemq-artemis pull request #1793: ARTEMIS-1498: Openwire internal headers...

2018-02-14 Thread michaelandrepearce
Github user michaelandrepearce commented on a diff in the pull request:

https://github.com/apache/activemq-artemis/pull/1793#discussion_r168166856
  
--- Diff: 
artemis-protocols/artemis-openwire-protocol/src/main/java/org/apache/activemq/artemis/core/protocol/openwire/OpenWireMessage.java
 ---
@@ -0,0 +1,673 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ * 
+ * http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.activemq.artemis.core.protocol.openwire;
+
+import javax.jms.JMSException;
+import java.io.IOException;
+import java.util.Enumeration;
+import java.util.HashSet;
+import java.util.Set;
+
+import io.netty.buffer.ByteBuf;
+import io.netty.buffer.Unpooled;
+import org.apache.activemq.artemis.api.core.ActiveMQBuffer;
+import org.apache.activemq.artemis.api.core.ActiveMQException;
+import 
org.apache.activemq.artemis.api.core.ActiveMQPropertyConversionException;
+import org.apache.activemq.artemis.api.core.ICoreMessage;
+import org.apache.activemq.artemis.api.core.Message;
+import org.apache.activemq.artemis.api.core.RefCountMessage;
+import org.apache.activemq.artemis.api.core.SimpleString;
+import org.apache.activemq.artemis.core.buffers.impl.ChannelBufferWrapper;
+import 
org.apache.activemq.artemis.core.message.impl.CoreMessageObjectPools;
+import org.apache.activemq.artemis.core.persistence.Persister;
+import org.apache.activemq.artemis.utils.DataConstants;
+import org.apache.activemq.command.ActiveMQDestination;
+import org.apache.activemq.command.ActiveMQMessage;
+import org.apache.activemq.openwire.OpenWireFormat;
+import org.apache.activemq.util.ByteSequence;
+import org.apache.activemq.wireformat.WireFormat;
+
+public class OpenWireMessage extends RefCountMessage {
+
+   private org.apache.activemq.command.ActiveMQMessage message;
+   private WireFormat wireFormat;
+   ByteBuf data;
+   boolean bufferValid;
+
+
+   public OpenWireMessage(org.apache.activemq.command.ActiveMQMessage 
message, WireFormat wireFormat) {
+  this.message = message;
+  this.wireFormat = wireFormat;
+  try {
+ ByteSequence byteSequence = this.wireFormat.marshal(message);
+ setBuffer(Unpooled.copiedBuffer(byteSequence.getData(), 
byteSequence.getOffset(), byteSequence.getLength()));
+  } catch (IOException e) {
+ throw new ActiveMQPropertyConversionException(e.getMessage());
+  }
+   }
+
+   public OpenWireMessage() {
+   }
+
+   public void setMarsheller(WireFormat wireFormat) {
+  this.wireFormat = wireFormat;
+   }
+
+   public ActiveMQMessage getAMQMessage() {
+  if (message == null) {
+ if (data != null) {
+try {
+   message = (ActiveMQMessage) wireFormat.unmarshal(new 
ChannelBufferWrapper(data));
+} catch (IOException e) {
+   throw new 
ActiveMQPropertyConversionException(e.getMessage());
+}
+return message;
+ } else {
+return new ActiveMQMessage();
+ }
+  }
+  return message;
+   }
+
+   @Override
+   public void messageChanged() {
+   }
+
+   @Override
+   public Long getScheduledDeliveryTime() {
+  return message.getArrival();
+   }
+
+   @Override
+   public SimpleString getReplyTo() {
+  return 
SimpleString.toSimpleString(message.getReplyTo().getPhysicalName());
+   }
+
+   @Override
+   public Message setReplyTo(SimpleString address) {
+  
message.setReplyTo(ActiveMQDestination.createDestination(address.toString(), 
ActiveMQDestination.QUEUE_TYPE));
+  return this;
+   }
+
+   @Override
+   public Message setBuffer(ByteBuf buffer) {
+  this.data = buffer;
+  return this;
+   }
+
+   @Override
+   public ByteBuf getBuffer() {
+  if (data == null) {
+ return null;
+  } else {
+ return 

[GitHub] activemq-artemis issue #1793: ARTEMIS-1498: Openwire internal headers should...

2018-02-14 Thread franz1981
Github user franz1981 commented on the issue:

https://github.com/apache/activemq-artemis/pull/1793
  
@RaiSaurabh @michaelandrepearce 
I've run a couple of benchmarks and the results are strange, perf wire the 
improvements are on par or (slightly) less than 
https://github.com/apache/activemq-artemis/pull/1849, but the number are 
"strange" eg:
```
4 producers - 4 consumers

EndToEnd Throughput: 145985 ops/sec
EndToEnd SERVICE-TIME Latencies distribution in MICROSECONDS
mean   10032775.17
min 220.74
50.00% 10066329.60
90.00% 10066329.60
99.00% 10066329.60
99.90% 10066329.60
99.99% 10066329.60
max10066329.60
count   40
-
1 producer - 1 consumer
-
EndToEnd Throughput: 78247 ops/sec
EndToEnd SERVICE-TIME Latencies distribution in MICROSECONDS
mean   10032775.17
min 220.74
50.00% 10066329.60
90.00% 10066329.60
99.00% 10066329.60
99.90% 10066329.60
99.99% 10066329.60
max10066329.60
count   10
```
It is weird: the end-2-end latencies are stucked being ALWAYS the same with 
performances a little less from the PR above: probably there is something not 
working on message translation, please takes a look to the Open Wire tests to 
spot if everything is ok...


---


[GitHub] activemq-artemis issue #1793: ARTEMIS-1498: Openwire internal headers should...

2018-02-14 Thread franz1981
Github user franz1981 commented on the issue:

https://github.com/apache/activemq-artemis/pull/1793
  
@RaiSaurabh I'm doing some preliminary benchmarks to see if the number of 
buffer copies are decreased :+1: 


---


[GitHub] activemq-artemis pull request #1870: ARTEMIS-1681 fix hawtio console securit...

2018-02-14 Thread stanlyDoge
GitHub user stanlyDoge opened a pull request:

https://github.com/apache/activemq-artemis/pull/1870

ARTEMIS-1681 fix hawtio console security issue



You can merge this pull request into a Git repository by running:

$ git pull https://github.com/stanlyDoge/activemq-artemis E1016

Alternatively you can review and apply these changes as the patch at:

https://github.com/apache/activemq-artemis/pull/1870.patch

To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

This closes #1870


commit ef5080e344f4c58c1c8666d926fbc748fa073ed7
Author: Stanislav Knot 
Date:   2018-02-14T11:48:19Z

ARTEMIS-1681 fix hawtio console security issue




---


[GitHub] activemq-artemis issue #1793: ARTEMIS-1498: Openwire internal headers should...

2018-02-14 Thread RaiSaurabh
Github user RaiSaurabh commented on the issue:

https://github.com/apache/activemq-artemis/pull/1793
  
@franz1981 I have implemented the changes @michaelandrepearce requested. 
@michaelandrepearce could you please review it.


---


[GitHub] activemq-artemis issue #1793: ARTEMIS-1498: Openwire internal headers should...

2018-02-14 Thread franz1981
Github user franz1981 commented on the issue:

https://github.com/apache/activemq-artemis/pull/1793
  
@RaiSaurabh Please check the @michaelandrepearce comments about this PR 
first :+1: 


---


[GitHub] activemq-artemis issue #1793: ARTEMIS-1498: Openwire internal headers should...

2018-02-14 Thread RaiSaurabh
Github user RaiSaurabh commented on the issue:

https://github.com/apache/activemq-artemis/pull/1793
  
@michaelandrepearce Looks like another issue with GIT repo. Could you 
please check. 


---