🗑️ Remove the unused reference system
This commit is contained in:
@@ -68,12 +68,6 @@ service FileService {
|
||||
// Delete a file reference
|
||||
rpc DeleteFile(DeleteFileRequest) returns (google.protobuf.Empty);
|
||||
|
||||
// Load files from references
|
||||
rpc LoadFromReference(LoadFromReferenceRequest) returns (LoadFromReferenceResponse);
|
||||
|
||||
// Check if a file is referenced by any resource
|
||||
rpc IsReferenced(IsReferencedRequest) returns (IsReferencedResponse);
|
||||
|
||||
// Purge cache for a file
|
||||
rpc PurgeCache(PurgeCacheRequest) returns (google.protobuf.Empty);
|
||||
}
|
||||
@@ -116,196 +110,6 @@ message DeleteFileRequest {
|
||||
bool purge = 2;
|
||||
}
|
||||
|
||||
message LoadFromReferenceRequest {
|
||||
repeated string reference_ids = 1;
|
||||
}
|
||||
|
||||
message LoadFromReferenceResponse {
|
||||
repeated CloudFile files = 1;
|
||||
}
|
||||
|
||||
message GetReferenceCountRequest {
|
||||
string file_id = 1;
|
||||
}
|
||||
|
||||
message GetReferenceCountResponse {
|
||||
int32 count = 1;
|
||||
}
|
||||
|
||||
message IsReferencedRequest {
|
||||
string file_id = 1;
|
||||
}
|
||||
|
||||
message IsReferencedResponse {
|
||||
bool is_referenced = 1;
|
||||
}
|
||||
|
||||
message PurgeCacheRequest {
|
||||
string file_id = 1;
|
||||
}
|
||||
|
||||
// CloudFileReference represents a reference to a CloudFile with additional metadata
|
||||
// about its usage in the system.
|
||||
message CloudFileReference {
|
||||
// Unique identifier for the reference
|
||||
string id = 1;
|
||||
|
||||
// Reference to the actual file
|
||||
string file_id = 2;
|
||||
|
||||
// The actual file data (optional, can be populated when needed)
|
||||
CloudFile file = 3;
|
||||
|
||||
// Description of how this file is being used
|
||||
string usage = 4;
|
||||
|
||||
// ID of the resource that this file is associated with
|
||||
string resource_id = 5;
|
||||
|
||||
// Optional expiration timestamp for the reference
|
||||
google.protobuf.Timestamp expired_at = 6;
|
||||
}
|
||||
|
||||
// Request/Response messages for FileReferenceService
|
||||
message CreateReferenceRequest {
|
||||
string file_id = 1;
|
||||
string usage = 2;
|
||||
string resource_id = 3;
|
||||
optional google.protobuf.Timestamp expired_at = 4;
|
||||
optional google.protobuf.Duration duration = 5; // Alternative to expired_at
|
||||
}
|
||||
|
||||
message CreateReferenceBatchRequest {
|
||||
repeated string files_id = 1;
|
||||
string usage = 2;
|
||||
string resource_id = 3;
|
||||
optional google.protobuf.Timestamp expired_at = 4;
|
||||
optional google.protobuf.Duration duration = 5; // Alternative to expired_at
|
||||
}
|
||||
|
||||
message CreateReferenceBatchResponse {
|
||||
repeated CloudFileReference references = 1;
|
||||
}
|
||||
|
||||
message GetReferencesRequest {
|
||||
string file_id = 1;
|
||||
}
|
||||
|
||||
message GetReferencesResponse {
|
||||
repeated CloudFileReference references = 1;
|
||||
}
|
||||
|
||||
message GetResourceReferencesRequest {
|
||||
string resource_id = 1;
|
||||
string usage = 2; // Optional
|
||||
}
|
||||
|
||||
message GetResourceFilesRequest {
|
||||
string resource_id = 1;
|
||||
optional string usage = 2;
|
||||
}
|
||||
|
||||
message GetResourceFilesResponse {
|
||||
repeated CloudFile files = 1;
|
||||
}
|
||||
|
||||
message DeleteResourceReferencesRequest {
|
||||
string resource_id = 1;
|
||||
optional string usage = 2;
|
||||
}
|
||||
|
||||
message DeleteResourceReferencesBatchRequest {
|
||||
repeated string resource_ids = 1;
|
||||
optional string usage = 2;
|
||||
}
|
||||
|
||||
message DeleteResourceReferencesResponse {
|
||||
int32 deleted_count = 1;
|
||||
}
|
||||
|
||||
message DeleteReferenceRequest {
|
||||
string reference_id = 1;
|
||||
}
|
||||
|
||||
message DeleteReferenceResponse {
|
||||
bool success = 1;
|
||||
}
|
||||
|
||||
message UpdateResourceFilesRequest {
|
||||
string resource_id = 1;
|
||||
repeated string file_ids = 2;
|
||||
string usage = 3;
|
||||
google.protobuf.Timestamp expired_at = 4;
|
||||
google.protobuf.Duration duration = 5; // Alternative to expired_at
|
||||
}
|
||||
|
||||
message UpdateResourceFilesResponse {
|
||||
repeated CloudFileReference references = 1;
|
||||
}
|
||||
|
||||
message SetReferenceExpirationRequest {
|
||||
string reference_id = 1;
|
||||
google.protobuf.Timestamp expired_at = 2;
|
||||
google.protobuf.Duration duration = 3; // Alternative to expired_at
|
||||
}
|
||||
|
||||
message SetReferenceExpirationResponse {
|
||||
bool success = 1;
|
||||
}
|
||||
|
||||
message SetFileReferencesExpirationRequest {
|
||||
string file_id = 1;
|
||||
google.protobuf.Timestamp expired_at = 2;
|
||||
}
|
||||
|
||||
message SetFileReferencesExpirationResponse {
|
||||
int32 updated_count = 1;
|
||||
}
|
||||
|
||||
message HasFileReferencesRequest {
|
||||
string file_id = 1;
|
||||
}
|
||||
|
||||
message HasFileReferencesResponse {
|
||||
bool has_references = 1;
|
||||
}
|
||||
|
||||
// Service for managing file references
|
||||
service FileReferenceService {
|
||||
// Creates a new reference to a file for a specific resource
|
||||
rpc CreateReference(CreateReferenceRequest) returns (CloudFileReference);
|
||||
rpc CreateReferenceBatch(CreateReferenceBatchRequest) returns (CreateReferenceBatchResponse);
|
||||
|
||||
// Gets all references to a file
|
||||
rpc GetReferences(GetReferencesRequest) returns (GetReferencesResponse);
|
||||
|
||||
// Gets the number of references to a file
|
||||
rpc GetReferenceCount(GetReferenceCountRequest) returns (GetReferenceCountResponse);
|
||||
|
||||
// Gets all references for a specific resource and optional usage
|
||||
rpc GetResourceReferences(GetResourceReferencesRequest) returns (GetReferencesResponse);
|
||||
|
||||
// Gets all files referenced by a resource with optional usage filter
|
||||
rpc GetResourceFiles(GetResourceFilesRequest) returns (GetResourceFilesResponse);
|
||||
|
||||
// Deletes references for a specific resource and optional usage
|
||||
rpc DeleteResourceReferences(DeleteResourceReferencesRequest) returns (DeleteResourceReferencesResponse);
|
||||
|
||||
// Deletes references for multiple specific resources and optional usage
|
||||
rpc DeleteResourceReferencesBatch(DeleteResourceReferencesBatchRequest) returns (DeleteResourceReferencesResponse);
|
||||
|
||||
// Deletes a specific file reference
|
||||
rpc DeleteReference(DeleteReferenceRequest) returns (DeleteReferenceResponse);
|
||||
|
||||
// Updates the files referenced by a resource
|
||||
rpc UpdateResourceFiles(UpdateResourceFilesRequest) returns (UpdateResourceFilesResponse);
|
||||
|
||||
// Updates the expiration time for a file reference
|
||||
rpc SetReferenceExpiration(SetReferenceExpirationRequest) returns (SetReferenceExpirationResponse);
|
||||
|
||||
// Updates the expiration time for all references to a file
|
||||
rpc SetFileReferencesExpiration(SetFileReferencesExpirationRequest) returns (SetFileReferencesExpirationResponse);
|
||||
|
||||
// Checks if a file has any references
|
||||
rpc HasFileReferences(HasFileReferencesRequest) returns (HasFileReferencesResponse);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user