Moved GET request implementations into a single method
This commit is contained in:
		| @@ -60,7 +60,7 @@ public class Client { | ||||
| 	public void sendMessage(Message message) { | ||||
| 		new Thread(() -> { | ||||
| 			// Wrap single message into messages list | ||||
| 			Messages messages = wrapMessage(message); | ||||
| 			Messages messages = wrapMessages(message); | ||||
|  | ||||
| 			// Print message XML to console | ||||
| 			JAXBContext jc; | ||||
| @@ -109,22 +109,10 @@ public class Client { | ||||
| 		return message; | ||||
| 	} | ||||
|  | ||||
| 	public Messages wrapMessage(Message... messages) { | ||||
| 		Messages wrapper = objectFactory.createMessages(); | ||||
| 		wrapper.getMessage().addAll(Arrays.asList(messages)); | ||||
| 		return wrapper; | ||||
| 	} | ||||
| 	public Users getUsersListXml() { return get(String.format("%s:%d/envoy-server/rest/user", config.getServer(), config.getPort()), Users.class); } | ||||
|  | ||||
| 	public Users getUsersListXml() { | ||||
| 		javax.ws.rs.client.Client	client		= ClientBuilder.newClient(); | ||||
| 		WebTarget					target		= client | ||||
| 			.target(String.format("%s:%d/envoy-server/rest/user", config.getServer(), config.getPort())); | ||||
| 		Response					response	= target.request("application/xml").get(); | ||||
| 		Users						users		= response.readEntity(Users.class); | ||||
| 		System.out.println("Response code: " + response.getStatus()); | ||||
| 		response.close(); | ||||
| 		client.close(); | ||||
| 		return users; | ||||
| 	public Messages getUnreadMessages(long userId) { | ||||
| 		return get(String.format("%s:%d/envoy-server/rest/message/receive?userId=%d", config.getServer(), config.getPort(), userId), Messages.class); | ||||
| 	} | ||||
|  | ||||
| 	/** | ||||
| @@ -132,35 +120,49 @@ public class Client { | ||||
| 	 *  | ||||
| 	 * @param name - the name of the {@link User} | ||||
| 	 * @return a {@link User} with the specified name | ||||
| 	 * @since Envoy 0.1 | ||||
| 	 * @since Envoy v0.1-alpha | ||||
| 	 */ | ||||
| 	private User getUser(String name) { | ||||
| 		javax.ws.rs.client.Client	client		= ClientBuilder.newClient(); | ||||
| 		WebTarget					target		= client.target(String | ||||
| 			.format("%s:%d/envoy-server/rest/user/sender?name=%s", config.getServer(), config.getPort(), name)); | ||||
| 		Response					response	= target.request("application/xml").get(); | ||||
| 		Users						users		= response.readEntity(Users.class); | ||||
| 		System.out.println("Response code: " + response.getStatus()); | ||||
| 		response.close(); | ||||
| 		client.close(); | ||||
| 		return users.getUser().get(0); | ||||
| 		return get(String.format("%s:%d/envoy-server/rest/user/sender?name=%s", config.getServer(), config.getPort(), name), Users.class).getUser() | ||||
| 			.get(0); | ||||
| 	} | ||||
|  | ||||
| 	public Messages getUnreadMessages(long userId) { | ||||
| 	/** | ||||
| 	 * Invokes the GET method of a web service. | ||||
| 	 *  | ||||
| 	 * @param <T>           the type of the object returned by the web service | ||||
| 	 * @param uri           the URI of the web service | ||||
| 	 * @param responseClass the class of the object returned by the web service | ||||
| 	 * @return the object returned by the web service | ||||
| 	 * @since Envoy v0.1-alpha | ||||
| 	 */ | ||||
| 	private <T> T get(String uri, Class<T> responseClass) { | ||||
| 		javax.ws.rs.client.Client	client			= ClientBuilder.newClient(); | ||||
| 		WebTarget					target			= client.target(String | ||||
| 			.format("%s:%d/envoy-server/rest/message/receive?userId=%d", config.getServer(), config.getPort(), userId)); | ||||
| 		WebTarget					target			= client.target(uri); | ||||
| 		Response					response		= target.request("application/xml").get(); | ||||
| 		Messages					unreadMessages	= response.readEntity(Messages.class); | ||||
| 		T							responseObject	= response.readEntity(responseClass); | ||||
| 		System.out.println("Response code: " + response.getStatus()); | ||||
| 		response.close(); | ||||
| 		client.close(); | ||||
| 		return unreadMessages; | ||||
| 		return responseObject; | ||||
| 	} | ||||
|  | ||||
| 	/** | ||||
| 	 * Wraps one or more {@link Message} objects into a {@link Messages} object. | ||||
| 	 *  | ||||
| 	 * @param messages the {@link Message} objects to wrap | ||||
| 	 * @return {@link Messages} object with all messages as its children | ||||
| 	 * @since Envoy v0.1-alpha | ||||
| 	 */ | ||||
| 	private Messages wrapMessages(Message... messages) { | ||||
| 		Messages wrapper = objectFactory.createMessages(); | ||||
| 		wrapper.getMessage().addAll(Arrays.asList(messages)); | ||||
| 		return wrapper; | ||||
| 	} | ||||
|  | ||||
| 	/** | ||||
| 	 * @return the sender object that represents this client | ||||
| 	 * @since Envoy 0.1 | ||||
| 	 * @since Envoy v0.1-alpha | ||||
| 	 */ | ||||
| 	public User getSender() { return sender; } | ||||
|  | ||||
|   | ||||
		Reference in New Issue
	
	Block a user