// Path: src/nb/barmie/net/TCPEndpoint.java
// public class TCPEndpoint {
// 	/*******************
// 	 * Properties
// 	 ******************/
// 	private final String _host;
// 	private final int _port;
// 	
// 	/*******************
// 	 * Construct the TCP endpoint object with a given host and port.
// 	 * 
// 	 * @param host The host/IP to use.
// 	 * @param port The port to use.
// 	 * @throws nb.barmie.exceptions.BaRMIeInvalidPortException If the given port number is not a valid TCP port number.
// 	 ******************/
// 	public TCPEndpoint(String host, int port) throws BaRMIeInvalidPortException {
// 		//Store the properties
// 		this._host = host;
// 		this._port = port;
// 		
// 		//Validate the port number
// 		if(this._port < 1 || this._port > 65535) {
// 			throw new BaRMIeInvalidPortException(this._port);
// 		}
// 	}
// 	
// 	/*******************
// 	 * Return a string representation of this endpoint.
// 	 * 
// 	 * @return A host:port string.
// 	 ******************/
// 	public String toString() {
// 		return this._host + ":" + this._port;
// 	}
// 	
// 	/*******************
// 	 * Getters
// 	 ******************/
// 	public String getHost() { return this._host; }
// 	public int getPort() { return this._port; }
// }


import java.util.ArrayList;
import java.util.HashMap;
import nb.barmie.net.TCPEndpoint;
package nb.barmie.modes.enumeration;


/***********************************************************
 * A container to manage and provide access to the details
 * of a single object that has been exposed through an RMI
 * registry service.
 * 
 * Written by Nicky Bloor (@NickstaDB).
 **********************************************************/
public class RMIObject {
	/*******************
	 * Properties
	 ******************/
	private final String _objectName;							//The name that the object is bound to in the RMI registry service
	private final HashMap<String, ArrayList<String>> _classes;	//The classes behind the object, mapped to any string annotations attached to the class definitions
// Path: src/nb/barmie/net/TCPEndpoint.java
// public class TCPEndpoint {
// 	/*******************
// 	 * Properties
// 	 ******************/
// 	private final String _host;
// 	private final int _port;
// 	
// 	/*******************
// 	 * Construct the TCP endpoint object with a given host and port.
// 	 * 
// 	 * @param host The host/IP to use.
// 	 * @param port The port to use.
// 	 * @throws nb.barmie.exceptions.BaRMIeInvalidPortException If the given port number is not a valid TCP port number.
// 	 ******************/
// 	public TCPEndpoint(String host, int port) throws BaRMIeInvalidPortException {
// 		//Store the properties
// 		this._host = host;
// 		this._port = port;
// 		
// 		//Validate the port number
// 		if(this._port < 1 || this._port > 65535) {
// 			throw new BaRMIeInvalidPortException(this._port);
// 		}
// 	}
// 	
// 	/*******************
// 	 * Return a string representation of this endpoint.
// 	 * 
// 	 * @return A host:port string.
// 	 ******************/
// 	public String toString() {
// 		return this._host + ":" + this._port;
// 	}
// 	
// 	/*******************
// 	 * Getters
// 	 ******************/
// 	public String getHost() { return this._host; }
// 	public int getPort() { return this._port; }
// }


// Path: src/nb/barmie/modes/enumeration/RMIObject.java
import java.util.ArrayList;
import java.util.HashMap;
import nb.barmie.net.TCPEndpoint;

package nb.barmie.modes.enumeration;


/***********************************************************
 * A container to manage and provide access to the details
 * of a single object that has been exposed through an RMI
 * registry service.
 * 
 * Written by Nicky Bloor (@NickstaDB).
 **********************************************************/
public class RMIObject {
	/*******************
	 * Properties
	 ******************/
	private final String _objectName;							//The name that the object is bound to in the RMI registry service
	private final HashMap<String, ArrayList<String>> _classes;	//The classes behind the object, mapped to any string annotations attached to the class definitions
	private TCPEndpoint _objectEndpoint;						//The host/port where the object is hosted