Commit a00bacb0 authored by Elian Kraja's avatar Elian Kraja

Added PkgManagement for MM1

parent 33239901
This diff is collapsed.
module Ams_EncdecDeclarations {
import from Ams_TypesAndValues all;
external function enc_AppMobilityServiceInfo(in AppMobilityServiceInfo p_app_mobility_service_info) return octetstring
with { extension "prototype (convert) encode(JSON)"; extension "printing(pretty)" };
external function dec_AppMobilityServiceInfo(in octetstring p_pdu) return AppMobilityServiceInfo
with { extension "prototype (convert) decode(JSON)" };
external function enc_RegistrationRequest(in RegistrationRequest p_registration_request) return octetstring
with { extension "prototype (convert) encode(JSON)"; extension "printing(pretty)" };
external function dec_RegistrationRequest(in octetstring p_pdu) return RegistrationRequest
with { extension "prototype (convert) decode(JSON)" };
external function enc_RegistrationInfo(in RegistrationInfo p_registration_info) return octetstring
with { extension "prototype (convert) encode(JSON)"; extension "printing(pretty)" };
external function dec_Registrationinfo(in octetstring p_pdu) return RegistrationInfo
with { extension "prototype (convert) decode(JSON)" };
} // End of module LocationAPI_EncdecDeclarations
module MeoPkgm_Pics {
/**
* @desc Does the IUT support LocationAPI?
*/
modulepar boolean PICS_PKGMGMT_API_SUPPORTED := true;
} // End of module LocationAPI_Pics
module MeoPkgm_Pixits {
// JSON
import from JSON all;
// LibMec/LocationAPI
import from MeoPkgm_TypesAndValues all;
modulepar JSON.String PX_APP_PKG_NAME := "APP_PKG_NAME"
modulepar JSON.String PX_APP_PKG_VERSION := "APP_PKG_VERSION"
modulepar JSON.String PX_CHECKSUM := "CHECKSUM"
modulepar JSON.String PX_APP_PKG_PATH := "APP_PKG_PATH"
modulepar OperationalState PX_OPERATIONAL_STATE := ENABLED
modulepar UsageState PX_USAGE_STATE := NOT_IN_USE
modulepar JSON.String PX_ON_BOARDED_APP_PKG_ID := "5abe4782-2c70-4e47-9a4e-0ee3a1a0fd1f"
modulepar JSON.String PX_NON_EXISTENT_APP_PKG_ID := "NON_EXISTENT_APP_PKG_ID"
modulepar JSON.AnyURI PX_CALLBACK_URI := "http://127.0.0.1/callback"
modulepar SubscriptionType PX_SUBSCRIPTION_TYPE := ON_BOARDING
modulepar SubscriptionTypeWithError PX_SUBSCRIPTION_TYPE_WITH_ERROR := ONBOARDING
modulepar JSON.String PX_SUBSCRIPTION_ID := "e0deee2b-6e50-4f33-ab09-8bf0585025d3"
modulepar JSON.String PX_NON_EXISTENT_SUBSCRIPTION_ID := "NON_EXISTENT_SUBSCRIPTION_ID"
modulepar NotificationType PX_NOTIFICATION_TYPE := ON_BOARDING
// modulepar JSON.String PX_APP_MOBILITY_SERVICE_ID := "KtRGymNQ84dG3mQfRepa"
//
// modulepar JSON.String PX_APP_INS_ID := "5abe4782-2c70-4e47-9a4e-0ee3a1a0fd1f"
//
// modulepar SubscriptionType PX_SUBSCRIPTION_TYPE := MobilityProcedureSubscription
//
//
//
// modulepar JSON.String PX_CALLBACK_REFERENCE := "http://127.0.0.1/callback"
//
//
// modulepar JSON.String PX_MEP_ID := "";
} // End of module LocationAPI_Pixits
This diff is collapsed.
module MeoPkgm_TypesAndValues {
// JSON
import from JSON all;
// LibCommon
import from LibCommon_BasicTypesAndValues all;
type record AppPkg {
JSON.String appPkgName,
JSON.String appPkgVersion,
JSON.String checksum,
JSON.String appPkgPath
}
type record AppPkgWithError {
JSON.String appPkgVersion,
JSON.String checksum,
JSON.String appPkgPath
}
type record of OnboardedAppPkgInfo OnboardedAppPkgInfoList;
type record OnboardedAppPkgInfo {
JSON.String appPkgId,
JSON.String appName,
JSON.String appDVersion,
JSON.String checksum,
OperationalState operationalState,
UsageState usageState
}
type enumerated AppPkgOperation {
DISABLE,
ENABLE,
ABORT
}
type enumerated OperationalState {
ENABLED,
DISABLED,
DELETION_PENDING
}
type enumerated UsageState {
IN_USE,
NOT_IN_USE
}
type enumerated SubscriptionType {
ON_BOARDING,
OP_CHANGE
}
type enumerated SubscriptionTypeWithError {
ONBOARDING,
OP_CHANGE
}
type record of AppPkgSubscriptionInfo AppPkgSubscriptionInfoList;
type record AppPkgSubscriptionInfo {
JSON.String subscriptionId,
SubscriptionType subscriptionType,
JSON.AnyURI callbackUri
}
type record AppPkgSubscription {
JSON.AnyURI callbackUri,
SubscriptionType subscriptionType
}
type record AppPkgSubscriptionWithError {
JSON.AnyURI callbackUri,
SubscriptionTypeWithError subscriptionType
}
type enumerated NotificationType {
ON_BOARDING,
OP_CHANGE
}
type record AppPkgNotification {
NotificationType notificationType,
JSON.String subscriptionId,
//@TODO: links should be named _links but getting error.
//@TODO: links shuld be a record, but cannot contain self cause self is a key for ttnc
JSON.AnyURI links
}
//
//
//type record of AppMobilityServiceInfo AppMobilityServiceInfos;
//type record AppMobilityServiceInfo {
// RegistrationInfos registeredAppMobilityService ,
// String appMobilityServiceId
//}
//
//type record of RegistrationInfo RegistrationInfos;
//type record RegistrationInfo {
// ServiceConsumerId serviceConsumerId,
// DeviceInformations deviceInformation optional,
// UInt32 expiryTime optional
//}
//
//
//
//
//
//type record of ServiceConsumerId ServiceConsumerIds;
//type record ServiceConsumerId {
// String appInstanceId optional,
// String mepId optional
//}
//
//// Erroneous parameter: appInstance should be appInstanceId
//type record of ServiceConsumer ServiceConsumers;
//type record ServiceConsumer {
// String appInstance optional,
// String mepId optional
//}
//
//type record of DeviceInformation DeviceInformations;
//type record DeviceInformation {
// String associateId
//}
//
//
//type JSON.AnyURI links;
//
//type enumerated SubscriptionType {
// MobilityProcedureSubscription,
// AdjacentAppInfoSubscription
//}
//
//type record Subscription {
// JSON.AnyURI href,
// SubscriptionType subscriptionType
//}
//
//
//type record of AmsSubscriptionLinkList AmsSubscriptionLinkLists;
//type record AmsSubscriptionLinkList {
// JSON.AnyURI links,
// Subscription subscription
//}
//
//
//type record MobilityProcedureSubscriptionError {
// SubscriptionType subscriptionType,
// JSON.AnyURI callbackReference,
// JSON.AnyURI links optional,
// FilterCriteria filterCriteria,
// TimeStamp expiryDeadline optional
//}
//
//
//
//
//type record of MobilityProcedureSubscription MobilityProcedureSubscriptions;
//type record MobilityProcedureSubscription {
// SubscriptionType subscriptionType,
// JSON.AnyURI callbackReference,
// JSON.AnyURI links optional,
// FilterCriteria filterCriteria,
// TimeStamp expiryDeadline optional
//}
//
//type enumerated MobilityStatusType {
// INTERHOST_MOVEOUT_TRIGGERED,
// TARGET_APPINST_CONFIRMED,
// TARGET_TRAFFIC_RULE_ACTIVATED,
// INTERHOST_MOVEOUT_COMPLETED,
// INTERHOST_MOVEOUT_FAILED
//}
//
//type record AssociateIdList {
// String associateId
//}
//
//type record of FilterCriteria FilterCriterias;
//type record FilterCriteria {
// String appInstanceId optional,
// AssociateIdList associateId optional,
// MobilityStatusType mobilityStatus
//}
//
//
//
//type record AdjacentFilterCriteria {
// String appInstanceId optional
//}
//
//
//type record of ExpiryNotification ExpiryNotifications;
//type record ExpiryNotification {
// TimeStamp timeStamp,
// JSON.AnyURI links optional,
// TimeStamp expiryDeadline
//}
//
//type record of AdjacentAppInfoSubscription AdjacentAppInfoSubscriptions;
//type record AdjacentAppInfoSubscription {
// SubscriptionType subscriptionType,
// JSON.AnyURI callbackReference,
// JSON.AnyURI links optional,
// AdjacentFilterCriteria filterCriteria,
// TimeStamp expiryDeadline optional
//}
/**
* @desc
* @member seconds The seconds part of the time. Time is defined as Unix-time since January 1, 1970, 00:00:00 UTC
* @member nanoSeconds The nanoseconds part of the time. Time is defined as Unix-time since January 1, 1970, 00:00:00 UTC
*/
type record TimeStamp {
Seconds seconds,
NanoSeconds nanoSeconds
}
/**
* @desc The seconds part of the Time. Time is defined as Unix-time since January 1, 1970, 00:00:00 UTC
*/
type UInt32 Seconds;
/**
* @desc The nanoseconds part of the Time. Time is defined as Unix-time since January 1, 1970, 00:00:00 UTC
*/
type UInt32 NanoSeconds;
/**
* @desc Problem Details for HTTP APIs
* @member type_ A URI reference according to IETF RFC 3986 that identifies the problem type
* @member title A short, human-readable summary of the problem type
* @member status The HTTP status code for this occurrence of the problem
* @member detail A human-readable explanation specific to this occurrence of the problem
* @member instance A URI reference that identifies the specific occurrence of the problem
* @see IETF RFC 7807 Clause 3. The Problem Details JSON Object
*/
type record ProblemDetails {
JSON.String type_,
JSON.String title,
UInt32 status,
JSON.String detail,
JSON.String instance
} with {
variant (type_) "name as 'type'";
}
} with {
encode "JSON"
}
......@@ -35,6 +35,10 @@ module LibMec_Pics {
modulepar boolean PICS_AMS_NOTIFICATIONS := false;
modulepar boolean PIC_GRANTS_MANAGEMENT := true;
modulepar boolean PIC_APP_PACKAGE_MANAGEMENT := true;
modulepar boolean PIC_APP_PACKAGE_NOTIFICATIONS := false;
modulepar charstring PICS_ROOT_API := "exampleAPI";
......
......@@ -29,6 +29,9 @@ module LibMec_Pixits {
modulepar charstring PX_ME_APP_AMS_SUBS := "/amsi/v1/subscriptions"
modulepar charstring PX_MEO_GRANT_URI := "/granting/v1/grants"
modulepar charstring PX_MEO_PKGM_URI := "/apmi/v1/app_packages"
modulepar charstring PX_MEO_PKGM_SUBS := "/apmi/v1/subscriptions"
} // End of module LibMec_Pixits
Markdown is supported
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