TotoServiceImpl
This commit is contained in:
@@ -1,3 +1,3 @@
|
||||
# Votre compte rendu ici
|
||||
|
||||
On implémente des "Class" dans les .proto, des getter seront généré par grpc
|
||||
On implémente des "Class" dans les .proto, des getter seront généré par grpc pour être utiliser dans par le service, le serveur et le client.
|
||||
|
||||
@@ -1,6 +1,8 @@
|
||||
package fr.istic.grpc.todo;
|
||||
|
||||
import io.grpc.stub.*;
|
||||
|
||||
import java.util.Iterator;
|
||||
import java.util.concurrent.*;
|
||||
import java.util.concurrent.atomic.*;
|
||||
import io.grpc.stub.*;
|
||||
@@ -24,23 +26,25 @@ public class TodoServiceImpl extends TodoServiceGrpc.TodoServiceImplBase {
|
||||
|
||||
public void listTasks(Todo.ListTasksRequest request, StreamObserver<Todo.ListTasksResponse> responseObserver) {
|
||||
// La réponse est une liste
|
||||
//Iterator<Todo.TaskResponse> iter = tasks.values().iterator();
|
||||
Todo.ListTasksResponse.Builder builder = Todo.ListTasksResponse.newBuilder();
|
||||
for(Todo.TaskResponse task : tasks.values()){
|
||||
builder.addTasks(task);
|
||||
}
|
||||
Todo.ListTasksResponse list = builder.build();
|
||||
responseObserver.onNext(list);
|
||||
}
|
||||
|
||||
public void deleteTask(Todo.DeleteTaskRequest request, StreamObserver<Todo.TaskResponse> responseObserver) {
|
||||
// si la tâche existe, on efface, sinon on indique que l'opération est un echec
|
||||
String id = request.getId();
|
||||
Boolean test = this.tasks.containsKey(id);
|
||||
Todo.TaskResponse save = this.tasks.get(id);
|
||||
this.tasks.remove(id);
|
||||
Todo.TaskResponse save = this.tasks.remove(id);
|
||||
test = test && !this.tasks.containsKey(id);
|
||||
|
||||
|
||||
Todo.TaskResponse tr = Todo.TaskResponse.newBuilder()
|
||||
.setId(save.getId()).setDescription(save.getDescription())
|
||||
.setTitle(save.getTitle())
|
||||
.setSuccess(test).build();
|
||||
responseObserver.onNext(tr);
|
||||
responseObserver.onCompleted();
|
||||
|
||||
responseObserver.onNext(save);
|
||||
responseObserver.onCompleted();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user