Java InetAddress Create getFreeSocket(InetAddress bindAddress, int portRangeStart, int portRangeEnd)

Here you can find the source of getFreeSocket(InetAddress bindAddress, int portRangeStart, int portRangeEnd)

Description

get Free Socket

License

Open Source License

Declaration

public static int getFreeSocket(InetAddress bindAddress, int portRangeStart, int portRangeEnd) 

Method Source Code

//package com.java2s;
/*/*  w w w . ja  v  a  2s .c  o m*/
JJSP - Java and Javascript Server Pages 
Copyright (C) 2016 Global Travel Ventures Ltd
    
This program is free software: you can redistribute it and/or modify 
it under the terms of the GNU General Public License as published by 
the Free Software Foundation, either version 3 of the License, or 
(at your option) any later version.
    
This program is distributed in the hope that it will be useful, but 
WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY 
or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 
for more details.
    
You should have received a copy of the GNU General Public License along with 
this program. If not, see http://www.gnu.org/licenses/.
*/

import java.net.*;

public class Main {
    public static int getFreeSocket(InetAddress bindAddress, int portRangeStart, int portRangeEnd) {
        for (int port = portRangeStart; port < portRangeEnd; port++) {
            ServerSocket ssocket = null;
            try {
                ssocket = new ServerSocket();
                ssocket.setReuseAddress(false);
                ssocket.setSoTimeout(10);
                ssocket.bind(new InetSocketAddress(bindAddress, port), 10000);

                return port;
            } catch (Exception e) {
            } finally {
                try {
                    ssocket.close();
                } catch (Exception e) {
                }
            }
        }

        return -1;
    }
}

Related

  1. getConnectionAddress(InetAddress addr)
  2. getDestinationInetAddress(URI uri)
  3. getExternalAddresses(InetAddress[] addresses)
  4. getFQDN(final InetAddress addr)
  5. getFreePort(InetAddress ipAddress)
  6. getFreeTCPPort(InetAddress ipAddress)
  7. getFullHostName(InetAddress netAddress)
  8. getHashFromAddress(final InetAddress address)
  9. getHostAddress(InetAddress address)