/** * Marshall the obj or pass by ref, based on passByRef. */ private static <T> T marshallOrPass(T obj, Class<T> type) throws IOException, ClassNotFoundException { if(passByRef) return obj; else return type.cast(new MarshalledObjectForLocalCalls(obj).get()); } }