Commit e9551f33 authored by Elian Kraja's avatar Elian Kraja
Browse files

First draft

parent 1e353498
/*
ETSI GS MEC 021 Application Mobility Service API
ETSI GS MEC 021 Application Mobility Service API described using OpenAPI.
The version of the OpenAPI document: 2.1.1
Generated by OpenAPI Generator: https://openapi-generator.tech
*/
syntax = "proto3";
package mec021;
message ProblemDetails {
// A human-readable explanation specific to this occurrence of the problem
string detail = 1;
// A URI reference that identifies the specific occurrence of the problem
string instance = 2;
// The HTTP status code for this occurrence of the problem
int32 status = 3;
// A short, human-readable summary of the problem type
string title = 4;
// A URI reference according to IETF RFC 3986 that identifies the problem type
string type = 5;
}
/*
ETSI GS MEC 021 Application Mobility Service API
ETSI GS MEC 021 Application Mobility Service API described using OpenAPI.
The version of the OpenAPI document: 2.1.1
Generated by OpenAPI Generator: https://openapi-generator.tech
*/
syntax = "proto3";
package mec021;
import public "models/registration_info_device_information.proto";
import public "models/registration_info_service_consumer_id.proto";
message RegistrationInfo {
// The identifier of registered application mobility service. Shall be absent in POST requests, and present otherwise.
string appMobilityServiceId = 1;
// If present, it specifies the device served by the application instance which is registering the application mobility service.
repeated RegistrationInfoDeviceInformation deviceInformation = 2;
// If present, it indicates the time of application mobility service expiration from the time of registration accepted.The value \"0\" means infinite time, i.e. no expiration.The unit of expiry time is one second.
int32 expiryTime = 3;
RegistrationInfoServiceConsumerId serviceConsumerId = 4;
}
/*
ETSI GS MEC 021 Application Mobility Service API
ETSI GS MEC 021 Application Mobility Service API described using OpenAPI.
The version of the OpenAPI document: 2.1.1
Generated by OpenAPI Generator: https://openapi-generator.tech
*/
syntax = "proto3";
package mec021;
import public "models/app_mobility_service_level.proto";
import public "models/associate_id.proto";
import public "models/context_transfer_state.proto";
message RegistrationInfoDeviceInformation {
AssociateId associateId = 1;
AppMobilityServiceLevel appMobilityServiceLevel = 2;
ContextTransferState contextTransferState = 3;
}
/*
ETSI GS MEC 021 Application Mobility Service API
ETSI GS MEC 021 Application Mobility Service API described using OpenAPI.
The version of the OpenAPI document: 2.1.1
Generated by OpenAPI Generator: https://openapi-generator.tech
*/
syntax = "proto3";
package mec021;
message RegistrationInfoServiceConsumerId {
// If present, it represents the identifier of the application instance registering the application mobility service.
string appInstanceId = 1;
// If present, it represents the identifier of the MEC platform registering the application mobility service.
string mepId = 2;
}
/*
ETSI GS MEC 021 Application Mobility Service API
ETSI GS MEC 021 Application Mobility Service API described using OpenAPI.
The version of the OpenAPI document: 2.1.1
Generated by OpenAPI Generator: https://openapi-generator.tech
*/
syntax = "proto3";
package mec021;
import public "models/mobility_procedure_subscription.proto";
import public "models/adjacent_app_info_subscription.proto";
message Subscription {
oneof subscription {
MobilityProcedureSubscription mobilityProcedureSubscription = 1;
AdjacentAppInfoSubscription adjacentAppInfoSubscription = 2;
}
}
/*
ETSI GS MEC 021 Application Mobility Service API
ETSI GS MEC 021 Application Mobility Service API described using OpenAPI.
The version of the OpenAPI document: 2.1.1
Generated by OpenAPI Generator: https://openapi-generator.tech
*/
syntax = "proto3";
package mec021;
import public "models/subscription_link_list_links.proto";
import public "models/subscription_link_list_subscription.proto";
message SubscriptionLinkList {
SubscriptionLinkListLinks Underscorelinks = 1;
// A link to a subscription.
repeated SubscriptionLinkListSubscription subscription = 2;
}
/*
ETSI GS MEC 021 Application Mobility Service API
ETSI GS MEC 021 Application Mobility Service API described using OpenAPI.
The version of the OpenAPI document: 2.1.1
Generated by OpenAPI Generator: https://openapi-generator.tech
*/
syntax = "proto3";
package mec021;
import public "models/link_type.proto";
message SubscriptionLinkListLinks {
LinkType self = 1;
}
/*
ETSI GS MEC 021 Application Mobility Service API
ETSI GS MEC 021 Application Mobility Service API described using OpenAPI.
The version of the OpenAPI document: 2.1.1
Generated by OpenAPI Generator: https://openapi-generator.tech
*/
syntax = "proto3";
package mec021;
import public "models/subscription_type.proto";
message SubscriptionLinkListSubscription {
// The URI referring to the subscription.
string href = 1;
SubscriptionType subscriptionType = 2;
}
/*
ETSI GS MEC 021 Application Mobility Service API
ETSI GS MEC 021 Application Mobility Service API described using OpenAPI.
The version of the OpenAPI document: 2.1.1
Generated by OpenAPI Generator: https://openapi-generator.tech
*/
syntax = "proto3";
package mec021;
//Numeric value (0 - 255) corresponding to specified type of subscription as following: 0 = RESERVED. 1 = MOBILITY_PROCEDURE. 2 = ADJACENT_APPINFO.
message SubscriptionType{
enum TypeEnum {
_0 = 0;
_1 = 1;
_2 = 2;
}
TypeEnum type = 1;
// Value for the identifier.
string value = 2;
}
/*
ETSI GS MEC 021 Application Mobility Service API
ETSI GS MEC 021 Application Mobility Service API described using OpenAPI.
The version of the OpenAPI document: 2.1.1
Generated by OpenAPI Generator: https://openapi-generator.tech
*/
syntax = "proto3";
package mec021;
message TimeStamp {
// 'The seconds part of the Time. Time is defined as Unix-time since January 1, 1970, 00:00:00 UTC.'
int32 seconds = 1;
// 'The nanoseconds part of the Time. Time is defined as Unix-time since January 1, 1970, 00:00:00 UTC.'
int32 nanoSeconds = 2;
}
/*
ETSI GS MEC 021 Application Mobility Service API
ETSI GS MEC 021 Application Mobility Service API described using OpenAPI.
The version of the OpenAPI document: 2.1.1
Generated by OpenAPI Generator: https://openapi-generator.tech
*/
syntax = "proto3";
package mec021;
import public "models/adjacent_app_instance_info.proto";
import public "models/problem_details.proto";
service AdjAppInstService {
rpc AdjAppInstGET (AdjAppInstGETRequest) returns (AdjAppInstGETResponse);
}
message AdjAppInstGETRequest {
// Attribute-based filtering parameters according to ETSI GS MEC 011
string filter = 1;
// Include all complex attributes in the response.
string allFields = 2;
// Complex attributes to be included into the response. See clause 6.18 in ETSI GS MEC 011
string fields = 3;
// Complex attributes to be excluded from the response.See clause 6.18 in ETSI GS MEC 011
string excludeFields = 4;
// Indicates to exclude the following complex attributes from the response See clause 6.18 in ETSI GS MEC 011 for details.
string excludeDefault = 5;
}
message AdjAppInstGETResponse {
repeated AdjacentAppInstanceInfo data = 1;
}
/*
ETSI GS MEC 021 Application Mobility Service API
ETSI GS MEC 021 Application Mobility Service API described using OpenAPI.
The version of the OpenAPI document: 2.1.1
Generated by OpenAPI Generator: https://openapi-generator.tech
*/
syntax = "proto3";
package mec021;
import "google/protobuf/empty.proto";
import public "models/problem_details.proto";
service AppMobSerDerService {
rpc AppMobilityServiceDerPOST (AppMobilityServiceDerPOSTRequest) returns (google.protobuf.Empty);
}
message AppMobilityServiceDerPOSTRequest {
string appMobilityServiceId = 1;
}
/*
ETSI GS MEC 021 Application Mobility Service API
ETSI GS MEC 021 Application Mobility Service API described using OpenAPI.
The version of the OpenAPI document: 2.1.1
Generated by OpenAPI Generator: https://openapi-generator.tech
*/
syntax = "proto3";
package mec021;
import "google/protobuf/empty.proto";
import public "models/problem_details.proto";
import public "models/registration_info.proto";
service AppMobSerService {
rpc AppMobilityServiceByIdDELETE (AppMobilityServiceByIdDELETERequest) returns (google.protobuf.Empty);
rpc AppMobilityServiceByIdGET (AppMobilityServiceByIdGETRequest) returns (RegistrationInfo);
rpc AppMobilityServiceByIdPUT (AppMobilityServiceByIdPUTRequest) returns (RegistrationInfo);
rpc AppMobilityServiceGET (AppMobilityServiceGETRequest) returns (AppMobilityServiceGETResponse);
rpc AppMobilityServicePOST (AppMobilityServicePOSTRequest) returns (RegistrationInfo);
}
message AppMobilityServiceByIdDELETERequest {
// Identifier of the created individual application mobility service.
string appMobilityServiceId = 1;
}
message AppMobilityServiceByIdGETRequest {
// Identifier of the created individual application mobility service.
string appMobilityServiceId = 1;
}
message AppMobilityServiceByIdPUTRequest {
// Identifier of the created individual application mobility service.
string appMobilityServiceId = 1;
RegistrationInfo registrationInfo = 2;
}
message AppMobilityServiceGETRequest {
// Attribute-based filtering parameters according to ETSI GS MEC 011
string filter = 1;
// Include all complex attributes in the response.
string allFields = 2;
// Complex attributes to be included into the response. See clause 6.18 in ETSI GS MEC 011
string fields = 3;
// Complex attributes to be excluded from the response.See clause 6.18 in ETSI GS MEC 011
string excludeFields = 4;
// Indicates to exclude the following complex attributes from the response See clause 6.18 in ETSI GS MEC 011 for details.
string excludeDefault = 5;
}
message AppMobilityServiceGETResponse {
repeated RegistrationInfo data = 1;
}
message AppMobilityServicePOSTRequest {
// Application mobility service to be created
RegistrationInfo registrationInfo = 1;
}
/*
ETSI GS MEC 021 Application Mobility Service API
ETSI GS MEC 021 Application Mobility Service API described using OpenAPI.
The version of the OpenAPI document: 2.1.1
Generated by OpenAPI Generator: https://openapi-generator.tech
*/
syntax = "proto3";
package mec021;
import "google/protobuf/empty.proto";
import public "models/problem_details.proto";
import public "models/subscription_link_list.proto";
import public "models/subscription.proto";
service SubscriptionsService {
rpc SubByIdDELETE (SubByIdDELETERequest) returns (google.protobuf.Empty);
rpc SubByIdGET (SubByIdGETRequest) returns (Subscription);
rpc SubByIdPUT (SubByIdPUTRequest) returns (Subscription);
rpc SubGET (SubGETRequest) returns (SubscriptionLinkList);
rpc SubPOST (SubPOSTRequest) returns (Subscription);
}
message SubByIdDELETERequest {
string subscriptionId = 1;
}
message SubByIdGETRequest {
string subscriptionId = 1;
}
message SubByIdPUTRequest {
string subscriptionId = 1;
Subscription subscription = 2;
}
message SubGETRequest {
string subscriptionType = 1;
}
message SubPOSTRequest {
Subscription subscription = 1;
}
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment