2023-12-18 23:36:15 +01:00
|
|
|
// Workspace effimero: sta in /tmp o proprio in memoria
|
|
|
|
// Workspace e` autenticato: come si decide mentre si rifa il server
|
|
|
|
// Workspace ha id univoco (stringa), usato per connettercisi
|
|
|
|
// Workspace implementera` access control:
|
|
|
|
// * accedere al workspace
|
|
|
|
// * i singoli buffer
|
|
|
|
// - i metadati maybe????
|
|
|
|
// Workspace offre le seguenti features:
|
|
|
|
// * listare i buffer DONE
|
|
|
|
// * listare gli user connessi DONE
|
|
|
|
// * creare buffers DONE REPLACE THE ONE ON buffer.proto
|
|
|
|
// * NO ATTACH: responsabilita` del buffer service
|
|
|
|
// * contiene metadata dei buffers:
|
|
|
|
// * path
|
|
|
|
// * data creazione
|
|
|
|
// Buffer id NON E` il path DONE
|
|
|
|
// BufferService NON ha metadata:
|
|
|
|
// Workspace tiene traccia di utenti attached (nel futuro) DONE
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
syntax = "proto2";
|
|
|
|
|
2023-12-29 01:06:28 +01:00
|
|
|
package workspace_service;
|
|
|
|
import "user.proto";
|
2024-01-01 23:29:35 +01:00
|
|
|
import "files.proto";
|
2024-01-01 23:34:59 +01:00
|
|
|
import "workspace.proto";
|
2023-12-18 23:36:15 +01:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
service Workspace {
|
|
|
|
|
2024-01-01 23:34:59 +01:00
|
|
|
rpc Create (workspace.BufferPayload) returns (workspace.Empty);
|
2023-12-18 23:36:15 +01:00
|
|
|
|
2024-01-01 23:34:59 +01:00
|
|
|
rpc Attach (workspace.AttachRequest) returns (workspace.Token);
|
2023-12-18 23:36:15 +01:00
|
|
|
|
2024-01-01 23:34:59 +01:00
|
|
|
rpc ListBuffers (workspace.BufferListRequest) returns (files.BufferTree);
|
2023-12-18 23:36:15 +01:00
|
|
|
|
2024-01-01 23:34:59 +01:00
|
|
|
rpc ListUsers (workspace.UserListRequest) returns (workspace.UserList);
|
2023-12-18 23:36:15 +01:00
|
|
|
|
2024-01-01 23:34:59 +01:00
|
|
|
rpc ListBufferUsers (workspace.Empty) returns (workspace.Empty);
|
2023-12-18 23:36:15 +01:00
|
|
|
|
2024-01-01 23:34:59 +01:00
|
|
|
rpc Join (workspace.JoinRequest) returns (workspace.Token);
|
2023-12-18 23:36:15 +01:00
|
|
|
|
2024-01-01 23:34:59 +01:00
|
|
|
rpc Delete (workspace.BufferPayload) returns (workspace.Empty); //deletes buffer
|
2023-12-18 23:36:15 +01:00
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|