StrLookup and StrSubstitutor originated in Commons but were modified to support 
log events.

Again, who needs to serialize these? What is the use case?

Ralph

> On Feb 28, 2016, at 10:55 PM, Matt Sicker <[email protected]> wrote:
> 
> No, that's not it. That's a custom class for the GC-free epic.
> 
>> On 28 February 2016 at 23:40, Matt Sicker <[email protected]> wrote:
>> FixedDateFormat? If so, I'll have to go look up how to commit to commons.
>> 
>>> On 28 February 2016 at 23:34, Matt Sicker <[email protected]> wrote:
>>> Wait, which class are you talking about?
>>> 
>>>> On 28 February 2016 at 23:33, Gary Gregory <[email protected]> wrote:
>>>> Again, no tests AND this is a special case. I mentioned on the ML porting 
>>>> the class from Commons Lang again to pick up the latest fixes, so we 
>>>> should look at it from the Commons POV.
>>>> 
>>>> If this class is really useful as Serializable, then I strongly suggest 
>>>> you make the changes in Commons Lang. Note that any Apache committer can 
>>>> commit to any Commons component. If you fell shy in that project, just 
>>>> create a Jira and I'll apply it.
>>>> 
>>>> Gary
>>>> 
>>>> ---------- Forwarded message ----------
>>>> From: <[email protected]>
>>>> Date: Sun, Feb 28, 2016 at 8:48 PM
>>>> Subject: [2/2] logging-log4j2 git commit: [LOG4J2-1300] Make remaing 
>>>> StrLookups serializable.
>>>> To: [email protected]
>>>> 
>>>> 
>>>> [LOG4J2-1300] Make remaing StrLookups serializable.
>>>> 
>>>> 
>>>> Project: http://git-wip-us.apache.org/repos/asf/logging-log4j2/repo
>>>> Commit: 
>>>> http://git-wip-us.apache.org/repos/asf/logging-log4j2/commit/21c2f4e1
>>>> Tree: http://git-wip-us.apache.org/repos/asf/logging-log4j2/tree/21c2f4e1
>>>> Diff: http://git-wip-us.apache.org/repos/asf/logging-log4j2/diff/21c2f4e1
>>>> 
>>>> Branch: refs/heads/master
>>>> Commit: 21c2f4e15f11fc6ffd423710a3d64256dbfcf44d
>>>> Parents: c575c00
>>>> Author: Matt Sicker <[email protected]>
>>>> Authored: Sun Feb 28 22:48:29 2016 -0600
>>>> Committer: Matt Sicker <[email protected]>
>>>> Committed: Sun Feb 28 22:48:29 2016 -0600
>>>> 
>>>> ----------------------------------------------------------------------
>>>>  .../org/apache/logging/log4j/core/lookup/ContextMapLookup.java  | 5 ++++-
>>>>  .../java/org/apache/logging/log4j/core/lookup/DateLookup.java   | 4 +++-
>>>>  .../log4j/core/lookup/JmxRuntimeInputArgumentsLookup.java       | 1 +
>>>>  .../org/apache/logging/log4j/core/lookup/MainMapLookup.java     | 1 +
>>>>  .../java/org/apache/logging/log4j/core/lookup/MapLookup.java    | 4 +++-
>>>>  .../apache/logging/log4j/core/lookup/StructuredDataLookup.java  | 5 ++++-
>>>>  6 files changed, 16 insertions(+), 4 deletions(-)
>>>> ----------------------------------------------------------------------
>>>> 
>>>> 
>>>> http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/21c2f4e1/log4j-core/src/main/java/org/apache/logging/log4j/core/lookup/ContextMapLookup.java
>>>> ----------------------------------------------------------------------
>>>> diff --git 
>>>> a/log4j-core/src/main/java/org/apache/logging/log4j/core/lookup/ContextMapLookup.java
>>>>  
>>>> b/log4j-core/src/main/java/org/apache/logging/log4j/core/lookup/ContextMapLookup.java
>>>> index 9a39338..534eb58 100644
>>>> --- 
>>>> a/log4j-core/src/main/java/org/apache/logging/log4j/core/lookup/ContextMapLookup.java
>>>> +++ 
>>>> b/log4j-core/src/main/java/org/apache/logging/log4j/core/lookup/ContextMapLookup.java
>>>> @@ -16,6 +16,8 @@
>>>>   */
>>>>  package org.apache.logging.log4j.core.lookup;
>>>> 
>>>> +import java.io.Serializable;
>>>> +
>>>>  import org.apache.logging.log4j.ThreadContext;
>>>>  import org.apache.logging.log4j.core.LogEvent;
>>>>  import org.apache.logging.log4j.core.config.plugins.Plugin;
>>>> @@ -24,7 +26,8 @@ import 
>>>> org.apache.logging.log4j.core.config.plugins.Plugin;
>>>>   * Looks up keys from {@link ThreadContext} objects..
>>>>   */
>>>>  @Plugin(name = "ctx", category = StrLookup.CATEGORY)
>>>> -public class ContextMapLookup implements StrLookup {
>>>> +public class ContextMapLookup implements StrLookup, Serializable {
>>>> +    private static final long serialVersionUID = 1L;
>>>> 
>>>>      /**
>>>>       * Looks up the value from the ThreadContext Map.
>>>> 
>>>> http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/21c2f4e1/log4j-core/src/main/java/org/apache/logging/log4j/core/lookup/DateLookup.java
>>>> ----------------------------------------------------------------------
>>>> diff --git 
>>>> a/log4j-core/src/main/java/org/apache/logging/log4j/core/lookup/DateLookup.java
>>>>  
>>>> b/log4j-core/src/main/java/org/apache/logging/log4j/core/lookup/DateLookup.java
>>>> index 3e630b0..c79b82b 100644
>>>> --- 
>>>> a/log4j-core/src/main/java/org/apache/logging/log4j/core/lookup/DateLookup.java
>>>> +++ 
>>>> b/log4j-core/src/main/java/org/apache/logging/log4j/core/lookup/DateLookup.java
>>>> @@ -16,6 +16,7 @@
>>>>   */
>>>>  package org.apache.logging.log4j.core.lookup;
>>>> 
>>>> +import java.io.Serializable;
>>>>  import java.text.DateFormat;
>>>>  import java.text.SimpleDateFormat;
>>>>  import java.util.Date;
>>>> @@ -31,7 +32,8 @@ import org.apache.logging.log4j.status.StatusLogger;
>>>>   * Formats the current date or the date in the LogEvent. The "key" is 
>>>> used as the format String.
>>>>   */
>>>>  @Plugin(name = "date", category = StrLookup.CATEGORY)
>>>> -public class DateLookup implements StrLookup {
>>>> +public class DateLookup implements StrLookup, Serializable {
>>>> +    private static final long serialVersionUID = 1L;
>>>> 
>>>>      private static final Logger LOGGER = StatusLogger.getLogger();
>>>>      private static final Marker LOOKUP = 
>>>> MarkerManager.getMarker("LOOKUP");
>>>> 
>>>> http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/21c2f4e1/log4j-core/src/main/java/org/apache/logging/log4j/core/lookup/JmxRuntimeInputArgumentsLookup.java
>>>> ----------------------------------------------------------------------
>>>> diff --git 
>>>> a/log4j-core/src/main/java/org/apache/logging/log4j/core/lookup/JmxRuntimeInputArgumentsLookup.java
>>>>  
>>>> b/log4j-core/src/main/java/org/apache/logging/log4j/core/lookup/JmxRuntimeInputArgumentsLookup.java
>>>> index 3dc2e5d..ba2bcd4 100644
>>>> --- 
>>>> a/log4j-core/src/main/java/org/apache/logging/log4j/core/lookup/JmxRuntimeInputArgumentsLookup.java
>>>> +++ 
>>>> b/log4j-core/src/main/java/org/apache/logging/log4j/core/lookup/JmxRuntimeInputArgumentsLookup.java
>>>> @@ -30,6 +30,7 @@ import 
>>>> org.apache.logging.log4j.core.config.plugins.Plugin;
>>>>   */
>>>>  @Plugin(name = "jvmrunargs", category = StrLookup.CATEGORY)
>>>>  public class JmxRuntimeInputArgumentsLookup extends MapLookup {
>>>> +    private static final long serialVersionUID = 1L;
>>>> 
>>>>      static {
>>>>          final List<String> argsList = 
>>>> ManagementFactory.getRuntimeMXBean().getInputArguments();
>>>> 
>>>> http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/21c2f4e1/log4j-core/src/main/java/org/apache/logging/log4j/core/lookup/MainMapLookup.java
>>>> ----------------------------------------------------------------------
>>>> diff --git 
>>>> a/log4j-core/src/main/java/org/apache/logging/log4j/core/lookup/MainMapLookup.java
>>>>  
>>>> b/log4j-core/src/main/java/org/apache/logging/log4j/core/lookup/MainMapLookup.java
>>>> index a50de0d..7f9431f 100644
>>>> --- 
>>>> a/log4j-core/src/main/java/org/apache/logging/log4j/core/lookup/MainMapLookup.java
>>>> +++ 
>>>> b/log4j-core/src/main/java/org/apache/logging/log4j/core/lookup/MainMapLookup.java
>>>> @@ -30,6 +30,7 @@ import 
>>>> org.apache.logging.log4j.core.config.plugins.Plugin;
>>>>   */
>>>>  @Plugin(name = "main", category = StrLookup.CATEGORY)
>>>>  public class MainMapLookup extends MapLookup {
>>>> +    private static final long serialVersionUID = 1L;
>>>> 
>>>>      /**
>>>>       * A singleton used by a main method to save its arguments.
>>>> 
>>>> http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/21c2f4e1/log4j-core/src/main/java/org/apache/logging/log4j/core/lookup/MapLookup.java
>>>> ----------------------------------------------------------------------
>>>> diff --git 
>>>> a/log4j-core/src/main/java/org/apache/logging/log4j/core/lookup/MapLookup.java
>>>>  
>>>> b/log4j-core/src/main/java/org/apache/logging/log4j/core/lookup/MapLookup.java
>>>> index c369a0b..d624167 100644
>>>> --- 
>>>> a/log4j-core/src/main/java/org/apache/logging/log4j/core/lookup/MapLookup.java
>>>> +++ 
>>>> b/log4j-core/src/main/java/org/apache/logging/log4j/core/lookup/MapLookup.java
>>>> @@ -16,6 +16,7 @@
>>>>   */
>>>>  package org.apache.logging.log4j.core.lookup;
>>>> 
>>>> +import java.io.Serializable;
>>>>  import java.util.HashMap;
>>>>  import java.util.List;
>>>>  import java.util.Map;
>>>> @@ -28,7 +29,8 @@ import org.apache.logging.log4j.message.MapMessage;
>>>>   * A map-based lookup.
>>>>   */
>>>>  @Plugin(name = "map", category = StrLookup.CATEGORY)
>>>> -public class MapLookup implements StrLookup {
>>>> +public class MapLookup implements StrLookup, Serializable {
>>>> +    private static final long serialVersionUID = 1L;
>>>> 
>>>>      /**
>>>>       * Map keys are variable names and value.
>>>> 
>>>> http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/21c2f4e1/log4j-core/src/main/java/org/apache/logging/log4j/core/lookup/StructuredDataLookup.java
>>>> ----------------------------------------------------------------------
>>>> diff --git 
>>>> a/log4j-core/src/main/java/org/apache/logging/log4j/core/lookup/StructuredDataLookup.java
>>>>  
>>>> b/log4j-core/src/main/java/org/apache/logging/log4j/core/lookup/StructuredDataLookup.java
>>>> index 379d6a9..1656b77 100644
>>>> --- 
>>>> a/log4j-core/src/main/java/org/apache/logging/log4j/core/lookup/StructuredDataLookup.java
>>>> +++ 
>>>> b/log4j-core/src/main/java/org/apache/logging/log4j/core/lookup/StructuredDataLookup.java
>>>> @@ -16,6 +16,8 @@
>>>>   */
>>>>  package org.apache.logging.log4j.core.lookup;
>>>> 
>>>> +import java.io.Serializable;
>>>> +
>>>>  import org.apache.logging.log4j.core.LogEvent;
>>>>  import org.apache.logging.log4j.core.config.plugins.Plugin;
>>>>  import org.apache.logging.log4j.message.StructuredDataMessage;
>>>> @@ -24,7 +26,8 @@ import 
>>>> org.apache.logging.log4j.message.StructuredDataMessage;
>>>>   * Looks up keys from {@link 
>>>> org.apache.logging.log4j.message.StructuredDataMessage} log messages.
>>>>   */
>>>>  @Plugin(name = "sd", category = StrLookup.CATEGORY)
>>>> -public class StructuredDataLookup implements StrLookup {
>>>> +public class StructuredDataLookup implements StrLookup, Serializable {
>>>> +    private static final long serialVersionUID = 1L;
>>>> 
>>>>      /**
>>>>       * Returns {@code null}. This Lookup plugin does not make sense 
>>>> outside the context of a LogEvent.
>>>> 
>>>> 
>>>> 
>>>> 
>>>> -- 
>>>> E-Mail: [email protected] | [email protected] 
>>>> Java Persistence with Hibernate, Second Edition
>>>> JUnit in Action, Second Edition
>>>> Spring Batch in Action
>>>> Blog: http://garygregory.wordpress.com 
>>>> Home: http://garygregory.com/
>>>> Tweet! http://twitter.com/GaryGregory
>>> 
>>> 
>>> 
>>> -- 
>>> Matt Sicker <[email protected]>
>> 
>> 
>> 
>> -- 
>> Matt Sicker <[email protected]>
> 
> 
> 
> -- 
> Matt Sicker <[email protected]>

Reply via email to