Branch: refs/heads/master
  Home:   https://github.com/jenkinsci/remoting
  Commit: d906a333f34860dbf3a3f0771b1c1dfd1e071ca6
      
https://github.com/jenkinsci/remoting/commit/d906a333f34860dbf3a3f0771b1c1dfd1e071ca6
  Author: Oleg Nenashev <[email protected]>
  Date:   2017-11-08 (Wed, 08 Nov 2017)

  Changed paths:
    M pom.xml
    M src/main/java/hudson/remoting/Callable.java
    M src/main/java/hudson/remoting/Channel.java
    M src/main/java/hudson/remoting/ClassLoaderHolder.java
    M src/main/java/hudson/remoting/JarLoaderImpl.java
    M src/main/java/hudson/remoting/Pipe.java
    M src/main/java/hudson/remoting/ProxyOutputStream.java
    M src/main/java/hudson/remoting/RemoteClassLoader.java
    M src/main/java/hudson/remoting/RemoteInputStream.java
    M src/main/java/hudson/remoting/RemoteInvocationHandler.java
    M src/main/java/hudson/remoting/RemoteOutputStream.java
    M src/main/java/hudson/remoting/RemoteWriter.java
    M src/main/java/hudson/remoting/Request.java
    M src/main/java/hudson/remoting/forward/ForwarderFactory.java
    M src/main/java/hudson/remoting/forward/PortForwarder.java
    A src/main/java/org/jenkinsci/remoting/SerializableOnlyOverRemoting.java
    M src/test/java/hudson/remoting/ChannelFilterTest.java
    M src/test/java/hudson/remoting/ChannelTest.java
    M src/test/java/hudson/remoting/ClassFilterTest.java
    M src/test/java/hudson/remoting/ClassRemotingTest.java
    M src/test/java/hudson/remoting/PipeTest.java
    M src/test/java/hudson/remoting/PrefetchingTest.java
    M src/test/java/hudson/remoting/RemoteInvocationHandlerTest.java
    M src/test/java/org/jenkinsci/remoting/protocol/ProtocolStackImplTest.java

  Log Message:
  -----------
  [JENKINS-47714] - Introduce SerializableOnlyOverRemoting and cleanup FindBugs 
in Channel#current(). (#206)

* [JENKINS-47714] - Introduce SerializableOnlyOverRemoting and cleanup FindBugs 
in Channel#current().

`Channel#current()` uses thread-local storage to determine the current channel. 
It returns null if the channel does not exist Some writeReplace/readObject/etc. 
serialization logic retrieves the channel in order to export the object via 
ExportTable. Obviously, such operations will fail if we try to serialize the 
object without Remoting context.
I propose to add a new interface to verify that serialization logic is being 
invoked for the remoting context and hence to avoid undesired NPEs.

* [JENKINS-47714] - Address comments from @jglick

* [JENKINS-47714] - Add @since to new API


-- 
You received this message because you are subscribed to the Google Groups 
"Jenkins Commits" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to