@Override
	public boolean equals(Object obj)
	{
		if (this == obj)
			return true;
		if (obj == null)
			return false;
		if (getClass() != obj.getClass())
			return false;
		SocketRule other = (SocketRule) obj;
		if (action != other.action)
			return false;
		if (forwardTo == null)
		{
			if (other.forwardTo != null)
				return false;
		} else if (!forwardTo.equals(other.forwardTo))
			return false;
		if (host == null)
		{
			if (other.host != null)
				return false;
		} else if (!host.equals(other.host))
			return false;
		if (isActive != other.isActive)
			return false;
		if (port != other.port)
			return false;
		return true;
	}