Make Client and RpcClient constructors public
This commit is contained in:
parent
1d0cd21965
commit
23ac46eee8
2 changed files with 59 additions and 7 deletions
|
@ -17,7 +17,9 @@ import java.util.Map;
|
||||||
|
|
||||||
public class Client extends RpcClient
|
public class Client extends RpcClient
|
||||||
{
|
{
|
||||||
protected Client(String domain) throws ResolutionException, CryptographyException
|
|
||||||
|
|
||||||
|
public Client(String domain) throws ResolutionException, CryptographyException
|
||||||
{
|
{
|
||||||
super(domain);
|
super(domain);
|
||||||
}
|
}
|
||||||
|
|
|
@ -22,8 +22,6 @@ import java.util.Map;
|
||||||
public class RpcClient
|
public class RpcClient
|
||||||
{
|
{
|
||||||
private final static ObjectMapper OBJECT_MAPPER = new ObjectMapper();
|
private final static ObjectMapper OBJECT_MAPPER = new ObjectMapper();
|
||||||
private final static String CLIENT_NAME = "SocialClient Java";
|
|
||||||
private final static String CLIENT_VERSION = "1.0";
|
|
||||||
private final static MediaType MEDIA_TYPE_JSON = MediaType.parse("application/json; charset=utf-8");
|
private final static MediaType MEDIA_TYPE_JSON = MediaType.parse("application/json; charset=utf-8");
|
||||||
|
|
||||||
private final String domain;
|
private final String domain;
|
||||||
|
@ -31,6 +29,9 @@ public class RpcClient
|
||||||
private final PublicKey serverPublicKey;
|
private final PublicKey serverPublicKey;
|
||||||
private final OkHttpClient httpClient;
|
private final OkHttpClient httpClient;
|
||||||
|
|
||||||
|
private String clientName = "SocialClient Java";
|
||||||
|
private String clientVersion = "1.0.0";
|
||||||
|
|
||||||
protected String sessionUuid;
|
protected String sessionUuid;
|
||||||
protected PrivateKey privateKey;
|
protected PrivateKey privateKey;
|
||||||
|
|
||||||
|
@ -42,7 +43,7 @@ public class RpcClient
|
||||||
* @throws ResolutionException If the domain cannot be resolved or if required information is missing.
|
* @throws ResolutionException If the domain cannot be resolved or if required information is missing.
|
||||||
* @throws CryptographyException If an error occurs while importing the public key.
|
* @throws CryptographyException If an error occurs while importing the public key.
|
||||||
*/
|
*/
|
||||||
protected RpcClient(String domain) throws ResolutionException, CryptographyException
|
public RpcClient(String domain) throws ResolutionException, CryptographyException
|
||||||
{
|
{
|
||||||
this.domain = domain;
|
this.domain = domain;
|
||||||
this.httpClient = new OkHttpClient();
|
this.httpClient = new OkHttpClient();
|
||||||
|
@ -137,6 +138,56 @@ public class RpcClient
|
||||||
this.privateKey = privateKey;
|
this.privateKey = privateKey;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Retrieves the client name associated with this RpcClient instance.
|
||||||
|
*
|
||||||
|
* @return the client name as a string.
|
||||||
|
*/
|
||||||
|
public String getClientName()
|
||||||
|
{
|
||||||
|
return clientName;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Sets the name of the client.
|
||||||
|
*
|
||||||
|
* @param clientName The name to be set for the client.
|
||||||
|
* @throws NullPointerException if the provided*/
|
||||||
|
public void setClientName(String clientName)
|
||||||
|
{
|
||||||
|
if(clientName == null)
|
||||||
|
{
|
||||||
|
throw new NullPointerException("Client name cannot be null");
|
||||||
|
}
|
||||||
|
|
||||||
|
this.clientName = clientName;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Returns the client's version.
|
||||||
|
*
|
||||||
|
* @return the client version as a string.
|
||||||
|
*/
|
||||||
|
public String getClientVersion()
|
||||||
|
{
|
||||||
|
return clientVersion;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Sets the client version for the RpcClient instance.
|
||||||
|
*
|
||||||
|
* @param clientVersion The version of the client software to be set.
|
||||||
|
* @throws NullPointerException if the provided clientVersion*/
|
||||||
|
public void setClientVersion(String clientVersion)
|
||||||
|
{
|
||||||
|
if(clientVersion == null)
|
||||||
|
{
|
||||||
|
throw new NullPointerException("Client version cannot be null");
|
||||||
|
}
|
||||||
|
|
||||||
|
this.clientVersion = clientVersion;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Clears the current session by setting the sessionUuid and privateKey fields to null.
|
* Clears the current session by setting the sessionUuid and privateKey fields to null.
|
||||||
* This method effectively logs out the user from the current session.
|
* This method effectively logs out the user from the current session.
|
||||||
|
@ -161,8 +212,8 @@ public class RpcClient
|
||||||
{{
|
{{
|
||||||
this.url(endpoint);
|
this.url(endpoint);
|
||||||
this.post(RequestBody.create(MEDIA_TYPE_JSON, jsonData));
|
this.post(RequestBody.create(MEDIA_TYPE_JSON, jsonData));
|
||||||
this.addHeader("Client-Name", CLIENT_NAME);
|
this.addHeader("Client-Name", clientName);
|
||||||
this.addHeader("Client-Version", CLIENT_VERSION);
|
this.addHeader("Client-Version", clientVersion);
|
||||||
|
|
||||||
if(sessionUuid != null)
|
if(sessionUuid != null)
|
||||||
{
|
{
|
||||||
|
@ -268,7 +319,6 @@ public class RpcClient
|
||||||
return sendRequest(encode(requests));
|
return sendRequest(encode(requests));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Decodes a JSON string into a corresponding Java object. If the JSON string
|
* Decodes a JSON string into a corresponding Java object. If the JSON string
|
||||||
* represents an object, it decodes it into a Map. If the JSON string represents
|
* represents an object, it decodes it into a Map. If the JSON string represents
|
||||||
|
|
Loading…
Add table
Reference in a new issue