Skip to content

Commit

Permalink
Updating the protos in the client SDK to use ECacheResult (#32)
Browse files Browse the repository at this point in the history
  • Loading branch information
mjindalmotiv8 committed Sep 16, 2021
1 parent 1b2241a commit d63b992
Show file tree
Hide file tree
Showing 7 changed files with 54 additions and 54 deletions.
2 changes: 1 addition & 1 deletion messages/src/client_protos
16 changes: 8 additions & 8 deletions momento-sdk/src/intTest/java/momento/sdk/CacheTest.java
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@
import org.junit.jupiter.api.Test;
import momento.sdk.messages.ClientGetResponse;
import momento.sdk.messages.ClientSetResponse;
import momento.sdk.messages.MomentoResult;
import momento.sdk.messages.MomentoCacheResult;

import java.io.BufferedReader;
import java.io.IOException;
Expand Down Expand Up @@ -97,12 +97,12 @@ void testHappyPath (Cache cache) {
ByteBuffer.wrap("bar".getBytes(StandardCharsets.UTF_8)),
2
);
Assertions.assertEquals(MomentoResult.Ok, setRsp.getResult());
Assertions.assertEquals(MomentoCacheResult.Ok, setRsp.getResult());

// Get Key that was just set
ClientGetResponse<ByteBuffer> rsp = cache.get(key);

Assertions.assertEquals(MomentoResult.Hit, rsp.getResult());
Assertions.assertEquals(MomentoCacheResult.Hit, rsp.getResult());
Assertions.assertEquals("bar", StandardCharsets.US_ASCII.decode(rsp.getBody()).toString());

} catch (IOException e) {
Expand Down Expand Up @@ -136,12 +136,12 @@ void testAsyncHappyPath(Cache client) {
ByteBuffer.wrap("bar".getBytes(StandardCharsets.UTF_8)),
10
);
Assertions.assertEquals(MomentoResult.Ok, setRsp.toCompletableFuture().get().getResult());
Assertions.assertEquals(MomentoCacheResult.Ok, setRsp.toCompletableFuture().get().getResult());

// Get Key Async
ClientGetResponse<ByteBuffer> rsp = client.getAsync(key).toCompletableFuture().get();

Assertions.assertEquals(MomentoResult.Hit, rsp.getResult());
Assertions.assertEquals(MomentoCacheResult.Hit, rsp.getResult());
Assertions.assertEquals("bar", StandardCharsets.US_ASCII.decode(rsp.getBody()).toString());

} catch (IOException | InterruptedException | ExecutionException e) {
Expand Down Expand Up @@ -175,14 +175,14 @@ void testTtlHappyPath(Cache client) {
ByteBuffer.wrap("bar".getBytes(StandardCharsets.UTF_8)),
1
);
Assertions.assertEquals(MomentoResult.Ok, setRsp.getResult());
Assertions.assertEquals(MomentoCacheResult.Ok, setRsp.getResult());

Thread.sleep(1500);

// Get Key that was just set
ClientGetResponse<ByteBuffer> rsp = client.get(key);

Assertions.assertEquals(MomentoResult.Miss, rsp.getResult());
Assertions.assertEquals(MomentoCacheResult.Miss, rsp.getResult());

} catch (IOException | InterruptedException e) {
Assertions.fail(e);
Expand Down Expand Up @@ -211,7 +211,7 @@ void testMissHappyPathInternal(Cache client) {
// Get Key that was just set
ClientGetResponse<ByteBuffer> rsp = client.get(UUID.randomUUID().toString());

Assertions.assertEquals(MomentoResult.Miss, rsp.getResult());
Assertions.assertEquals(MomentoCacheResult.Miss, rsp.getResult());

} catch (IOException e) {
Assertions.fail(e);
Expand Down
20 changes: 10 additions & 10 deletions momento-sdk/src/main/java/momento/sdk/messages/BaseResponse.java
Original file line number Diff line number Diff line change
@@ -1,19 +1,19 @@
package momento.sdk.messages;

import grpc.cache_client.Result;
import grpc.cache_client.ECacheResult;

// TODO: This should be made package default
public class BaseResponse {
MomentoResult resultMapper(Result result) {
MomentoCacheResult resultMapper(ECacheResult result) {
switch (result) {
case Ok: return MomentoResult.Ok;
case Hit: return MomentoResult.Hit;
case Miss: return MomentoResult.Miss;
case Unauthorized: return MomentoResult.Unauthorized;
case Bad_Request: return MomentoResult.Bad_Request;
case Service_Unavailable: return MomentoResult.Service_Unavailable;
case Internal_Server_Error: return MomentoResult.Internal_Server_Error;
default: return MomentoResult.Unknown;
case Ok: return MomentoCacheResult.Ok;
case Hit: return MomentoCacheResult.Hit;
case Miss: return MomentoCacheResult.Miss;
case Unauthorized: return MomentoCacheResult.Unauthorized;
case Bad_Request: return MomentoCacheResult.Bad_Request;
case Service_Unavailable: return MomentoCacheResult.Service_Unavailable;
case Internal_Server_Error: return MomentoCacheResult.Internal_Server_Error;
default: return MomentoCacheResult.Unknown;
}
}
}
Original file line number Diff line number Diff line change
@@ -1,17 +1,17 @@
package momento.sdk.messages;

import grpc.cache_client.Result;
import grpc.cache_client.ECacheResult;

public class ClientGetResponse<T> extends BaseResponse {
private T body;
private Result result;
private ECacheResult result;

public ClientGetResponse(Result result, T body) {
public ClientGetResponse(ECacheResult result, T body) {
this.body = body;
this.result = result;
}

public MomentoResult getResult() {
public MomentoCacheResult getResult() {
return this.resultMapper(this.result);
}

Expand Down
Original file line number Diff line number Diff line change
@@ -1,15 +1,15 @@
package momento.sdk.messages;

import grpc.cache_client.Result;
import grpc.cache_client.ECacheResult;

public class ClientSetResponse extends BaseResponse {
private Result result;
private ECacheResult result;

public ClientSetResponse(Result result) {
public ClientSetResponse(ECacheResult result) {
this.result = result;
}

public MomentoResult getResult() {
public MomentoCacheResult getResult() {
return this.resultMapper(this.result);
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
package momento.sdk.messages;
import grpc.cache_client.ECacheResult;

public enum MomentoCacheResult {
Internal_Server_Error(ECacheResult.Internal_Server_Error),
Ok(ECacheResult.Ok),
Hit(ECacheResult.Hit),
Miss(ECacheResult.Miss),
Bad_Request(ECacheResult.Bad_Request),
Unauthorized(ECacheResult.Unauthorized),
Service_Unavailable(ECacheResult.Service_Unavailable),
Unknown(65535);

private int result;

MomentoCacheResult(grpc.cache_client.ECacheResult num) {
this.result = num.getNumber();
}

MomentoCacheResult(int num) {
this.result = num;
}

public int getResult() {
return this.result;
}
}
27 changes: 0 additions & 27 deletions momento-sdk/src/main/java/momento/sdk/messages/MomentoResult.java

This file was deleted.

0 comments on commit d63b992

Please sign in to comment.