blob: 6ff4261615e7891236969f3db3c469c7900a2f7c [file] [log] [blame]
///////////////////////////////////////////////////////////////////////////////
// //
// Copyright (c) 2000-2019 Ericsson Telecom AB //
// //
// All rights reserved. This program and the accompanying materials //
// are made available under the terms of the Eclipse Public License v2.0 //
// which accompanies this distribution, and is available at //
// https://www.eclipse.org/org/documents/epl-2.0/EPL-2.0.html //
///////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////
// Module: EPTF_CLL_DsRestAPI_Storage_Definitions
//
// Purpose:
// This module contains definitions of EPTF_CLL_DsRestAPI_Storage.
//
// Module depends on:
// <EPTF_CLL_Base_Definitions>
// <EPTF_CLL_Variable_Definitions>
//
// Current Owner:
// Tamas Kis (ekistam)
//
// Last Review Date:
// -
//
// Detailed Comments:
// -
//
///////////////////////////////////////////////////////////////
module EPTF_CLL_DsRestAPI_Storage_Definitions {
import from EPTF_CLL_Base_Definitions all;
import from EPTF_CLL_Variable_Definitions all;
import from EPTF_CLL_HashMap_Definitions all;
import from EPTF_CLL_Common_Definitions all;
friend module EPTF_CLL_DsRestAPI_Filter_Functions;
friend module EPTF_CLL_DsRestAPI_DSServer_Functions;
///////////////////////////////////////////////////////////////////////////////
// Type: f_EPTF_CLL_DsRestAPI_Storage_PreStoredItem
//
// Purpose:
// Type for functions to call when content is saved
//
// Parameters:
// - pl_errorCode - *f_EPTF_CLL_DsRestAPI_Storage_ContentReady* - the error code
// - pl_dataValue - *EPTF_Var_DirectContent* - the content
// - userData - *EPTF_IntegerList* - the user data
//
///////////////////////////////////////////////////////////////////////////////
type function f_EPTF_CLL_DsRestAPI_Storage_ContentReady(in integer pl_errorCode, in EPTF_Var_DirectContent pl_dataValue, in EPTF_IntegerList pl_userData) runs on self;
///////////////////////////////////////////////////////////////////////////////
// Type: f_EPTF_CLL_DsRestAPI_Storage_PreStoredItem
//
// Purpose:
// Type for pre storage items
//
// Elements:
// - contentReady - *f_EPTF_CLL_DsRestAPI_Storage_ContentReady* - the function to call when the content arrives
// - userData - *EPTF_IntegerList* - the user data of the function call
//
///////////////////////////////////////////////////////////////////////////////
type record EPTF_CLL_DsRestAPI_Storage_PreStoredItem {
f_EPTF_CLL_DsRestAPI_Storage_ContentReady contentReady,
EPTF_IntegerList userData
}
///////////////////////////////////////////////////////////
// Type: f_EPTF_CLL_DsRestAPI_Storage_PreStoredItems
//
// Purpose:
// Type for storing a list of <f_EPTF_CLL_DsRestAPI_Storage_PreStoredItem> items
//
// Elements:
// <f_EPTF_CLL_DsRestAPI_Storage_PreStoredItem>
///////////////////////////////////////////////////////////
type record of EPTF_CLL_DsRestAPI_Storage_PreStoredItem EPTF_CLL_DsRestAPI_Storage_PreStoredItems;
type union EPTF_CLL_DsRestAPI_Storage_Item {
EPTF_CLL_DsRestAPI_Storage_PreStoredItems preStoredItems,
EPTF_Var_DirectContent content
}
///////////////////////////////////////////////////////////
// Type: f_EPTF_CLL_DsRestAPI_Storage_Items
//
// Purpose:
// Type for storing a list of <f_EPTF_CLL_DsRestAPI_Storage_Item> items
//
// Elements:
// <f_EPTF_CLL_DsRestAPI_Storage_Item>
///////////////////////////////////////////////////////////
type record of EPTF_CLL_DsRestAPI_Storage_Item f_EPTF_CLL_DsRestAPI_Storage_Items;
///////////////////////////////////////////////////////////////////////////////
// Type: EPTF_DsRestAPI_Storage
//
// Purpose:
// Type for storage items
//
// Elements:
// - storedContents - *f_EPTF_CLL_DsRestAPI_Storage_Items* - the list of stored contents
// - nextPosition - *integer* - the next free position in the list of stored contents
// - hashMapId - *integer* - the id of the hashmap that stores the indexes into the list of contents
//
///////////////////////////////////////////////////////////////////////////////
type record EPTF_DsRestAPI_Storage {
f_EPTF_CLL_DsRestAPI_Storage_Items storedContents,
integer nextPosition,
integer hashMapId
}
///////////////////////////////////////////////////////////
// Type: EPTF_DsRestAPI_Storage_Storages
//
// Purpose:
// Type for storing a list of <EPTF_DsRestAPI_Storage> items
//
// Elements:
// <EPTF_DsRestAPI_Storage>
///////////////////////////////////////////////////////////
type record of EPTF_DsRestAPI_Storage EPTF_DsRestAPI_Storages;
/////////////////////////////////////////////////////////////////////////////
// Type: EPTF_DsRestAPI_Storage_CT
//
// Purpose:
// The DataSource Server UI Model component
//
// Extensions:
// EPTF_Base_CT, EPTF_Var_CT, EPTF_Logging_CT, EPTF_DataSource_CLI_CT, EPTF_DataSourceClient_CT
//
// Variables:
// - v_DsRestAPI_Storage_initialized - *boolean* - represents if the storage is initialized
// - v_DsRestAPI_Storages - *EPTF_DsRestAPI_Storages* - the storages that store the contents
//
// Ports:
// -
// Function types:
// -
//
// Detailed Comments:
// -
/////////////////////////////////////////////////////////////////////////////
type component EPTF_DsRestAPI_Storage_CT extends EPTF_Base_CT, EPTF_HashMap_CT {
private var boolean v_DsRestAPI_Storage_initialized := false;
private var EPTF_DsRestAPI_Storages v_DsRestAPI_Storages := {};
}
}