Merge commit '77d3a60869e7a780c6ae069e51530e1eacece5e2'
[fanfix.git] / src / be / nikiroo / utils / serial / server / ConnectActionClientObject.java
index da13be5b1bcebb3ddfe191e2f155ca4124096961..938564510753f36f70f66bae639afe3294c2e9a3 100644 (file)
@@ -16,9 +16,7 @@ import be.nikiroo.utils.Version;
  */
 public class ConnectActionClientObject extends ConnectActionClient {
        /**
-        * Create a new {@link ConnectActionClientObject} with the current
-        * application version (see {@link Version#getCurrentVersion()}) as the
-        * client version.
+        * Create a new {@link ConnectActionClientObject} .
         * 
         * @param s
         *            the socket to bind to
@@ -31,9 +29,22 @@ public class ConnectActionClientObject extends ConnectActionClient {
        }
 
        /**
-        * Create a new {@link ConnectActionClientObject} with the current
-        * application version (see {@link Version#getCurrentVersion()}) as the
-        * client version.
+        * Create a new {@link ConnectActionClientObject} .
+        * 
+        * @param s
+        *            the socket to bind to
+        * @param key
+        *            an optional key to encrypt all the communications (if NULL,
+        *            everything will be sent in clear text)
+        * @param clientVersion
+        *            the version of the client
+        */
+       public ConnectActionClientObject(Socket s, String key, Version clientVersion) {
+               super(s, key, clientVersion);
+       }
+
+       /**
+        * Create a new {@link ConnectActionClientObject}.
         * 
         * @param host
         *            the host to bind to
@@ -56,6 +67,32 @@ public class ConnectActionClientObject extends ConnectActionClient {
                super(host, port, key);
        }
 
+       /**
+        * Create a new {@link ConnectActionClientObject}.
+        * 
+        * @param host
+        *            the host to bind to
+        * @param port
+        *            the port to bind to
+        * @param key
+        *            an optional key to encrypt all the communications (if NULL,
+        *            everything will be sent in clear text)
+        * @param clientVersion
+        *            the version of the client
+        * 
+        * @throws IOException
+        *             in case of I/O error
+        * @throws UnknownHostException
+        *             if the IP address of the host could not be determined
+        * @throws IllegalArgumentException
+        *             if the port parameter is outside the specified range of valid
+        *             port values, which is between 0 and 65535, inclusive
+        */
+       public ConnectActionClientObject(String host, int port, String key,
+                       Version clientVersion) throws IOException {
+               super(host, port, key, clientVersion);
+       }
+
        /**
         * Serialise and send the given object to the server (and return the
         * deserialised answer).
@@ -80,4 +117,59 @@ public class ConnectActionClientObject extends ConnectActionClient {
                        NoSuchMethodException, ClassNotFoundException {
                return action.sendObject(data);
        }
+
+       // Deprecated //
+
+       /**
+        * @deprecated SSL support has been replaced by key-based encryption.
+        *             <p>
+        *             Please use the version with key encryption (this deprecated
+        *             version uses an empty key when <tt>ssl</tt> is TRUE and no
+        *             key (NULL) when <tt>ssl</tt> is FALSE).
+        */
+       @Deprecated
+       public ConnectActionClientObject(String host, int port, boolean ssl)
+                       throws IOException {
+               this(host, port, ssl ? "" : null);
+       }
+
+       /**
+        * @deprecated SSL support has been replaced by key-based encryption.
+        *             <p>
+        *             Please use the version with key encryption (this deprecated
+        *             version uses an empty key when <tt>ssl</tt> is TRUE and no
+        *             key (NULL) when <tt>ssl</tt> is FALSE).
+        */
+       @Deprecated
+       public ConnectActionClientObject(String host, int port, boolean ssl,
+                       Version version) throws IOException {
+               this(host, port, ssl ? "" : null, version);
+       }
+
+       /**
+        * @deprecated SSL support has been replaced by key-based encryption.
+        *             <p>
+        *             Please use the version with key encryption (this deprecated
+        *             version uses an empty key when <tt>ssl</tt> is TRUE and no
+        *             key (NULL) when <tt>ssl</tt> is FALSE).
+        */
+       @SuppressWarnings("unused")
+       @Deprecated
+       public ConnectActionClientObject(Socket s, boolean ssl) throws IOException {
+               this(s, ssl ? "" : null);
+       }
+
+       /**
+        * @deprecated SSL support has been replaced by key-based encryption.
+        *             <p>
+        *             Please use the version with key encryption (this deprecated
+        *             version uses an empty key when <tt>ssl</tt> is TRUE and no
+        *             key (NULL) when <tt>ssl</tt> is FALSE).
+        */
+       @SuppressWarnings("unused")
+       @Deprecated
+       public ConnectActionClientObject(Socket s, boolean ssl, Version version)
+                       throws IOException {
+               this(s, ssl ? "" : null, version);
+       }
 }
\ No newline at end of file