protected void initLocalClusterNode() { InetAddress inetAddress = getBindInetAddress(_controlJChannel); ClusterNode clusterNode = new ClusterNode(PortalUUIDUtil.generate(), inetAddress); if (Validator.isNull(PropsValues.PORTAL_INSTANCE_PROTOCOL)) { _localClusterNode = clusterNode; return; } if (Validator.isNull(PropsValues.PORTAL_INSTANCE_INET_SOCKET_ADDRESS)) { throw new IllegalArgumentException( "Portal instance host name and port needs to be set in the " + "property \"portal.instance.inet.socket.address\""); } String[] parts = StringUtil.split(PropsValues.PORTAL_INSTANCE_INET_SOCKET_ADDRESS, CharPool.COLON); if (parts.length != 2) { throw new IllegalArgumentException( "Unable to parse the portal instance host name and port from " + PropsValues.PORTAL_INSTANCE_INET_SOCKET_ADDRESS); } InetAddress hostInetAddress = null; try { hostInetAddress = InetAddress.getByName(parts[0]); } catch (UnknownHostException uhe) { throw new IllegalArgumentException( "Unable to parse the portal instance host name and port from " + PropsValues.PORTAL_INSTANCE_INET_SOCKET_ADDRESS, uhe); } int port = -1; try { port = GetterUtil.getIntegerStrict(parts[1]); } catch (NumberFormatException nfe) { throw new IllegalArgumentException( "Unable to parse portal InetSocketAddress port from " + PropsValues.PORTAL_INSTANCE_INET_SOCKET_ADDRESS, nfe); } clusterNode.setPortalInetSocketAddress(new InetSocketAddress(hostInetAddress, port)); clusterNode.setPortalProtocol(PropsValues.PORTAL_INSTANCE_PROTOCOL); _localClusterNode = clusterNode; }