NED File src/simu5g/mec/platform/services/LocationService/LocationService.ned¶
Name |
Type |
Description |
|---|---|---|
simple module |
Implements the Location Service API as defined by the ETSI GS MEC 013 specification. It exposes a REST API that allows MEC applications to retrieve location-related information about User Equipment (UE) or a group of UEs. It supports both request-response and subscribe-notification patterns (in the latter case, the MEC application will be notified when a target UE enters a specific circular area. |
Source code¶
//
// Simu5G
//
// Copyright (C) 2019-2021 Giovanni Nardini, Giovanni Stea, Antonio Virdis et al. (University of Pisa)
// Copyright (C) 2022-2026 Giovanni Nardini, Giovanni Stea et al. (University of Pisa)
//
// This file is part of a software released under the license included in file
// "license.pdf". Please read LICENSE and README files before using it.
// The above files and the present reference are part of the software itself,
// and cannot be removed from it.
//
package simu5g.mec.platform.services.LocationService;
import simu5g.mec.platform.services.base.IMecService;
import inet.applications.contract.IApp;
//
// Implements the Location Service API as defined by the ETSI GS MEC 013 specification.
// It exposes a REST API that allows MEC applications to retrieve location-related information
// about User Equipment (UE) or a group of UEs. It supports both request-response and
// subscribe-notification patterns (in the latter case, the MEC application will be notified when
// a target UE enters a specific circular area.
//
simple LocationService like IMecService, IApp
{
parameters:
int requestQueueSize = default(0);
int subscriptionQueueSize = default(0);
string localAddress = default(""); // Local address; may be left empty ("")
int localPort = default(1000); // localPort number to listen on
double locationSubscriptionPeriod @unit(s) = default(1s);
bool loadGenerator = default(false);
double betaa = default(0); // Used only if loadGenerator is true
int numBgApps = default(0); // Used only if loadGenerator is true
double requestServiceTime @unit(s) = default(0.5us);
double subscriptionServiceTime @unit(s) = default(0.5us);
string serverThreadClass = default("simu5g.mec.platform.services.base.SocketManager");
string serviceName = default("LocationService");
string serviceVersion = default("v2");
string serviceSerialize = default("JSON");
string transportId = default("LocAPI");
string transportName = default("LocAPI");
string transportType = default("REST_HTTP");
string transportProtocol = default("HTTP");
string catId = default("");
string catName = default("Location");
string catUri = default("");
string catVersion = default("v2");
string scopeOfLocality = default("MEC_HOST");
bool consumedLocalOnly = default(true);
string binderModule = default("binder");
@display("i=block/app");
@signal[loadGeneratorNumBackgroundRequests];
@statistic[loadGeneratorNumBackgroundRequests](title="Load Generator Background Requests Count"; record=mean,vector);
@signal[responseTime];
@statistic[responseTime](title="Response time of foreground requests"; record=mean,vector);
gates:
input socketIn @labels(TcpCommand/up);
output socketOut @labels(TcpCommand/down);
}