StringBuilder implements CharSequence; the copy method takes a CharSequence
as its source of characters.

On Wednesday, 24 February 2016, Remko Popma <[email protected]> wrote:

> See TextEncoderHelper's methods,
> copy: from StringBuilder to CharBuffer
> encodeText: from CharBuffer to ByteBufferDestination
>
> We don't want to create the byte[] array object so we write directly into
> the ByteBuffer.
>
> On Wednesday, 24 February 2016, Mikael Ståldal <[email protected]
> <javascript:_e(%7B%7D,'cvml','[email protected]');>> wrote:
>
>> I still cannot find a way to convert a StringBuilder to a byte[].
>>
>> On Tue, Feb 23, 2016 at 11:03 PM, Gary Gregory <[email protected]>
>> wrote:
>>
>>> How about /dropping/ Serializer1 altogether? Having both is mighty
>>> complicated.
>>>
>>> Gary
>>>
>>> On Tue, Feb 23, 2016 at 8:52 AM, Remko Popma <[email protected]>
>>> wrote:
>>>
>>>> I wouldn't mind that (no strong opinion either way) but I won't have
>>>> time to do that work.
>>>>
>>>> On Wed, Feb 24, 2016 at 1:23 AM, Gary Gregory <[email protected]>
>>>> wrote:
>>>>
>>>>> I see we now have:
>>>>>
>>>>> org.apache.logging.log4j.core.layout.AbstractStringLayout.Serializer2
>>>>>
>>>>> Should we
>>>>> deprecate 
>>>>> org.apache.logging.log4j.core.layout.AbstractStringLayout.Serializer
>>>>> and reimplement everything in terms of Serializer2, even if objects are
>>>>> allocated?
>>>>>
>>>>> Gary
>>>>>
>>>>> On Tue, Feb 23, 2016 at 7:59 AM, Remko Popma <[email protected]>
>>>>> wrote:
>>>>>
>>>>>> Layout now extends Encoder so now it has this method:
>>>>>>
>>>>>> encode(LogEvent source, ByteBufferDestination destination)
>>>>>>
>>>>>> PatternLayout implements this method. It delegates the work of
>>>>>> converting the StringBuilder to bytes and writing these bytes into the
>>>>>> ByteBufferDestination to the TextEncoderHelper class. No objects are
>>>>>> created during this conversion.
>>>>>>
>>>>>> The final piece is (Rolling)RandomAccessFileAppender, whose manager
>>>>>> implements ByteBufferDestination. This appender calls the #encode() 
>>>>>> methos
>>>>>> on the layout (other managers still call Layout#toByteArray).
>>>>>>
>>>>>>
>>>>>>
>>>>>> On Wed, Feb 24, 2016 at 12:47 AM, Mikael Ståldal <
>>>>>> [email protected]> wrote:
>>>>>>
>>>>>>> I cannot really find it.
>>>>>>>
>>>>>>> On Tue, Feb 23, 2016 at 3:59 PM, Remko Popma <[email protected]>
>>>>>>> wrote:
>>>>>>>
>>>>>>>> Yes, that was implemented in
>>>>>>>> https://issues.apache.org/jira/browse/LOG4J2-1274.
>>>>>>>>
>>>>>>>> Please also see the description and discussion in the epic
>>>>>>>> https://issues.apache.org/jira/browse/LOG4J2-1270.
>>>>>>>>
>>>>>>>> Sent from my iPhone
>>>>>>>>
>>>>>>>> On 2016/02/23, at 23:56, Mikael Ståldal <[email protected]>
>>>>>>>> wrote:
>>>>>>>>
>>>>>>>> Do we have any way to convert a StringBuilder to a byte[], without
>>>>>>>> any intermediate String?
>>>>>>>>
>>>>>>>> It seems like org.apache.logging.log4j.core.util.StringEncoder cannot
>>>>>>>> do it.
>>>>>>>>
>>>>>>>> --
>>>>>>>> [image: MagineTV]
>>>>>>>>
>>>>>>>> *Mikael Ståldal*
>>>>>>>> Senior software developer
>>>>>>>>
>>>>>>>> *Magine TV*
>>>>>>>> [email protected]
>>>>>>>> Grev Turegatan 3  | 114 46 Stockholm, Sweden  |   www.magine.com
>>>>>>>>
>>>>>>>> Privileged and/or Confidential Information may be contained in this
>>>>>>>> message. If you are not the addressee indicated in this message
>>>>>>>> (or responsible for delivery of the message to such a person), you
>>>>>>>> may not copy or deliver this message to anyone. In such case,
>>>>>>>> you should destroy this message and kindly notify the sender by
>>>>>>>> reply email.
>>>>>>>>
>>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> --
>>>>>>> [image: MagineTV]
>>>>>>>
>>>>>>> *Mikael Ståldal*
>>>>>>> Senior software developer
>>>>>>>
>>>>>>> *Magine TV*
>>>>>>> [email protected]
>>>>>>> Grev Turegatan 3  | 114 46 Stockholm, Sweden  |   www.magine.com
>>>>>>>
>>>>>>> Privileged and/or Confidential Information may be contained in this
>>>>>>> message. If you are not the addressee indicated in this message
>>>>>>> (or responsible for delivery of the message to such a person), you
>>>>>>> may not copy or deliver this message to anyone. In such case,
>>>>>>> you should destroy this message and kindly notify the sender by
>>>>>>> reply email.
>>>>>>>
>>>>>>
>>>>>>
>>>>>
>>>>>
>>>>> --
>>>>> E-Mail: [email protected] | [email protected]
>>>>> Java Persistence with Hibernate, Second Edition
>>>>> <http://www.manning.com/bauer3/>
>>>>> JUnit in Action, Second Edition <http://www.manning.com/tahchiev/>
>>>>> Spring Batch in Action <http://www.manning.com/templier/>
>>>>> Blog: http://garygregory.wordpress.com
>>>>> Home: http://garygregory.com/
>>>>> Tweet! http://twitter.com/GaryGregory
>>>>>
>>>>
>>>>
>>>
>>>
>>> --
>>> E-Mail: [email protected] | [email protected]
>>> Java Persistence with Hibernate, Second Edition
>>> <http://www.manning.com/bauer3/>
>>> JUnit in Action, Second Edition <http://www.manning.com/tahchiev/>
>>> Spring Batch in Action <http://www.manning.com/templier/>
>>> Blog: http://garygregory.wordpress.com
>>> Home: http://garygregory.com/
>>> Tweet! http://twitter.com/GaryGregory
>>>
>>
>>
>>
>> --
>> [image: MagineTV]
>>
>> *Mikael Ståldal*
>> Senior software developer
>>
>> *Magine TV*
>> [email protected]
>> Grev Turegatan 3  | 114 46 Stockholm, Sweden  |   www.magine.com
>>
>> Privileged and/or Confidential Information may be contained in this
>> message. If you are not the addressee indicated in this message
>> (or responsible for delivery of the message to such a person), you may
>> not copy or deliver this message to anyone. In such case,
>> you should destroy this message and kindly notify the sender by reply
>> email.
>>
>

Reply via email to