aboutsummaryrefslogtreecommitdiffstats
path: root/epan/dissectors/corba-idl/gias/gias.idl
diff options
context:
space:
mode:
Diffstat (limited to 'epan/dissectors/corba-idl/gias/gias.idl')
-rw-r--r--epan/dissectors/corba-idl/gias/gias.idl1271
1 files changed, 1271 insertions, 0 deletions
diff --git a/epan/dissectors/corba-idl/gias/gias.idl b/epan/dissectors/corba-idl/gias/gias.idl
new file mode 100644
index 0000000000..89aa20bbaa
--- /dev/null
+++ b/epan/dissectors/corba-idl/gias/gias.idl
@@ -0,0 +1,1271 @@
+#ifndef GIAS_IDL
+#define GIAS_IDL
+
+//***************************************************************
+ //* APPROVED via RFC N01-0268 on 6 August 2001
+//***************************************************************
+
+
+//***************************************************************
+//*
+//* The Geospatial and Imagery Access Service
+//*
+//*
+//* Description: Defines the data types and interfaces needed
+//* to support search, retrieval and access to geospatial
+//* data such as images, maps charts and their supporting
+//* data
+//*
+//*
+//*
+//* History:
+//* Date Author Comment
+//* ----- -------- ------------
+//* 15 May 97 D. Lutz Initial release for review
+//* 2 July 97 D. Lutz Released for TEM Review
+//* 11 July 97 D. Lutz Changes based on 2 July TEM
+//* 18 July 97 D. Lutz Released for NIMA CCB
+//* 24 Oct 97 D. Lutz Changes based on 7 Oct TEM
+//* 14 Nov 97 D. Lutz Changes based on 4 Nov TEM
+//* 17 Dec 97 D. Lutz Changes based on 9 Dec TEM
+//* 15 Apr 98 J. Baldo changes based on Mar TEM
+//* 7 May 98 D.Lutz Changes based on 1 May TEM
+//* 2 Jul 98 J. Baldo/D. Lutz Changes based
+//* on 22-23 Jun TEM Requests - GIAS 3.2
+//* 2 Jul 98 (J. Baldo): Callback module has been removed
+//* from previous GIAS 3.2 specification release
+//* 5 June 1998 and will be included in GIAS 3.3
+//* 5 Nov 98 D. Lutz Added first version of UpdateMgr
+//*
+//* 10 Mar 99 J. Baldo Changes based on March 99 TEM
+//*
+//* 5 August D. Lutz Mods from 3-4 August UIP WG.
+//* 18 Februray 2000 D. Lutz New Generic Exception Model
+//*
+//*
+//*
+//*
+//***************************************************************
+
+//***************************************************************
+//* The USIGS Common Object Specification (UCOS) contains
+//* all the basic data types and interfaces common across
+//* USIGS
+//***************************************************************
+
+#include "uco.idl"
+#include "cb.idl"
+#include "uid.idl"
+
+//***************************************************************
+//*
+//* Module GIAS
+//*
+//*
+//* Description: The main module for the Geospatial & Imagery
+//* Access Service
+//*
+//*
+//***************************************************************
+
+module GIAS
+{
+
+//Forward references for all interfaces, just for convenience
+
+// The Library itself
+ interface Library;
+
+
+// Abstract classes that help define the managers
+ interface LibraryManager;
+ interface RequestManager;
+ interface AccessManager;
+
+// Specific managers defined
+ interface OrderMgr;
+ interface CreationMgr;
+ interface UpdateMgr;
+ interface CatalogMgr;
+ interface StandingQueryMgr;
+ interface ProductMgr;
+ interface IngestMgr;
+ interface QueryOrderMgr;
+ interface DataModelMgr;
+//interface VideoMgr;
+
+// The abstract request objects
+ interface Request;
+
+// Specific requests defined
+ interface OrderRequest;
+ interface CreateRequest;
+ interface CreateMetaDataRequest;
+ interface UpdateRequest;
+ interface SubmitQueryRequest;
+ interface SubmitStandingQueryRequest;
+ interface SetAvailabilityRequest;
+ interface HitCountRequest;
+ interface GetParametersRequest;
+ interface IngestRequest;
+ interface SubmitQueryOrderRequest;
+ interface GetRelatedFilesRequest;
+ interface CreateAssociationRequest;
+ interface UpdateByQueryRequest;
+
+
+//***************************************************************
+//* DataTypes re-used from UCOS
+//***************************************************************
+
+ typedef UCO::NameValueList PropertyList;
+
+ typedef UCO::Rectangle GeoRegion;
+enum GeoRegionType {
+ LINE_SAMPLE_FULL,
+ LINE_SAMPLE_CHIP,
+ LAT_LON ,
+ALL,
+NULL_REGION};
+
+
+
+//***************************************************************
+//* GIAS specific data types
+//***************************************************************
+
+
+enum AvailabilityRequirement
+ {
+ REQUIRED, NOT_REQUIRED
+ };
+
+typedef string UseMode;
+
+typedef sequence <short> RsetList;
+
+enum OrderType {STANDING, IMMEDIATE};
+
+typedef any ProductSpec;
+
+typedef string ProductFormat;
+typedef string ImageUniqueIdentifier;
+typedef string ImageFormat;
+typedef string Compression;
+typedef short BitsPerPixel;
+typedef string Algorithm;
+enum SupportDataEncoding {ASCII, EBCDIC};
+
+typedef sequence < ProductFormat > ProductFormatList;
+struct ImageSpec
+ {
+ ImageFormat imgform;
+ ImageUniqueIdentifier imageid;
+ Compression comp;
+ BitsPerPixel bpp;
+ Algorithm algo;
+ RsetList rrds;
+GeoRegion sub_section;
+ GeoRegionType geo_region_type;
+ SupportDataEncoding encoding;
+ };
+typedef sequence < ImageSpec > ImageSpecList;
+
+struct AlterationSpec
+ {
+ ProductFormat pf;
+ ProductSpec ps;
+ GeoRegion sub_section;
+ GeoRegionType geo_region_type;
+ };
+typedef sequence < AlterationSpec > AlterationSpecList;
+
+struct PackagingSpec
+ {
+ string package_identifier;
+ string packaging_format_and_compression;
+ };
+
+
+struct TailoringSpec {
+ UCO::NameNameList specs;
+ };
+
+struct MediaType
+ {
+ string media_type;
+ unsigned short quantity;
+ };
+
+typedef sequence < MediaType > MediaTypeList;
+
+struct PhysicalDelivery
+ {
+string address;
+ };
+
+enum DestinationType
+ {
+FTP, EMAIL, PHYSICAL
+ };
+
+union Destination switch (DestinationType)
+ {
+ case FTP: UCO::FileLocation f_dest;
+ case EMAIL: UCO::EmailAddress e_dest;
+ case PHYSICAL: PhysicalDelivery h_dest;
+ };
+
+ typedef sequence < Destination > DestinationList;
+
+
+
+struct ValidationResults
+ {
+ boolean valid;
+ boolean warning;
+ string details;
+ };
+
+typedef sequence < ValidationResults > ValidationResultsList;
+
+typedef UCO::Name RelatedFileType;
+typedef sequence<RelatedFileType> RelatedFileTypeList;
+struct RelatedFile
+ {
+ RelatedFileType file_type;
+ UCO::FileLocation location;
+ };
+typedef sequence <RelatedFile> RelatedFileList;
+
+enum ConceptualAttributeType
+ {
+ FOOTPRINT, CLASSIFICATION, OVERVIEW, THUMBNAIL, DATASETTYPE,
+ MODIFICATIONDATE, PRODUCTTITLE, DIRECTACCESS, DIRECTACCESSPROTOCOL, UNIQUEIDENTIFIER, DATASIZE};
+
+
+typedef string Entity;
+typedef string ViewName;
+typedef sequence< ViewName > ViewNameList;
+struct View {
+ ViewName view_name;
+ boolean orderable;
+ ViewNameList sub_views;
+};
+
+typedef sequence < View > ViewList;
+
+
+enum DomainType
+ {
+ DATE_VALUE, TEXT_VALUE, INTEGER_VALUE, FLOATING_POINT_VALUE, LIST,
+ ORDERED_LIST, INTEGER_RANGE, FLOATING_POINT_RANGE, GEOGRAPHIC, INTEGER_SET, FLOATING_POINT_SET, GEOGRAPHIC_SET, BINARY_DATA, BOOLEAN_VALUE };
+
+ struct DateRange
+ {
+ UCO::AbsTime earliest;
+ UCO::AbsTime latest;
+ };
+
+struct IntegerRange
+ {
+ long lower_bound;
+ long upper_bound;
+ };
+
+ struct FloatingPointRange
+ {
+ double lower_bound;
+ double upper_bound;
+ };
+
+
+
+typedef sequence < IntegerRange > IntegerRangeList;
+
+typedef sequence < FloatingPointRange > FloatingPointRangeList;
+union Domain switch (DomainType)
+ {
+
+ case DATE_VALUE: DateRange d;
+ case TEXT_VALUE: unsigned long t;
+ case INTEGER_VALUE: IntegerRange iv;
+ case INTEGER_SET: IntegerRangeList is;
+ case FLOATING_POINT_VALUE: FloatingPointRange fv;
+ case FLOATING_POINT_SET: FloatingPointRangeList fps;
+ case LIST: UCO::NameList l;
+ case ORDERED_LIST: UCO::NameList ol;
+ case INTEGER_RANGE: IntegerRange ir;
+ case FLOATING_POINT_RANGE: FloatingPointRange fr;
+ case GEOGRAPHIC: UCO::Rectangle g;
+ case GEOGRAPHIC_SET: UCO::RectangleList gs;
+ case BINARY_DATA: UCO::BinData bd;
+ case BOOLEAN_VALUE: boolean bv;
+ };
+
+enum AttributeType
+ {
+ TEXT,
+ INTEGER,
+ FLOATING_POINT,
+ UCOS_COORDINATE,
+ UCOS_POLYGON,
+ UCOS_ABS_TIME,
+ UCOS_RECTANGLE,
+ UCOS_SIMPLE_GS_IMAGE,
+ UCOS_SIMPLE_C_IMAGE,
+ UCOS_COMPRESSED_IMAGE,
+ UCOS_HEIGHT,
+ UCOS_ELEVATION,
+ UCOS_DISTANCE,
+ UCOS_PERCENTAGE,
+ UCOS_RATIO,
+ UCOS_ANGLE,
+ UCOS_FILE_SIZE,
+ UCOS_FILE_LOCATION,
+ UCOS_COUNT,
+ UCOS_WEIGHT,
+ UCOS_DATE,
+ UCOS_LINESTRING,
+ UCOS_DATA_RATE,
+ UCOS_BIN_DATA,
+ BOOLEAN_DATA,
+ UCOS_DURATION
+ };
+
+
+enum RequirementMode
+ {
+ MANDATORY, OPTIONAL
+ };
+
+struct AttributeInformation
+ {
+ string attribute_name;
+ AttributeType attribute_type;
+ Domain attribute_domain;
+ string attribute_units;
+ string attribute_reference;
+RequirementMode mode;
+ string description;
+ boolean sortable;
+ boolean updateable;
+ };
+typedef sequence < AttributeInformation > AttributeInformationList;
+struct Association {
+string name;
+ViewName view_a;
+ViewName view_b;
+string description;
+UCO::Cardinality card;
+AttributeInformationList attribute_info;
+ };
+
+typedef sequence <Association> AssociationList;
+typedef sequence < Library > LibraryList;
+
+typedef string ManagerType;
+ typedef sequence < ManagerType > ManagerTypeList;
+
+typedef sequence < Request > RequestList;
+
+typedef sequence < UseMode > UseModeList;
+
+
+struct LibraryDescription
+ {
+ string library_name;
+ string library_description;
+ string library_version_number;
+ };
+typedef sequence < LibraryDescription > LibraryDescriptionList;
+
+struct Query{
+ViewName view;
+string bqs_query;
+};
+
+
+typedef UCO::DAGList QueryResults;
+
+
+
+enum NamedEventType
+{
+START_EVENT,
+STOP_EVENT,
+FREQUENCY_EVENT
+};
+
+struct Event {
+ string event_name;
+ NamedEventType event_type;
+ string event_description;
+};
+typedef sequence < Event > EventList;
+
+enum DayEvent { MON, TUE, WED, THU, FRI, SAT, SUN, FIRST_OF_MONTH, END_OF_MONTH };
+
+struct DayEventTime
+{
+ DayEvent day_event;
+ UCO::Time time;
+};
+
+enum LifeEventType {ABSOLUTE_TIME, DAY_EVENT_TIME, NAMED_EVENT, RELATIVE_TIME};
+
+union LifeEvent switch ( LifeEventType)
+ {
+ case ABSOLUTE_TIME: UCO::AbsTime at;
+ case DAY_EVENT_TIME: DayEventTime day_event;
+ case NAMED_EVENT: string ev;
+ case RELATIVE_TIME: UCO::Time rt;
+ };
+
+typedef sequence < LifeEvent > LifeEventList;
+
+
+struct QueryLifeSpan {
+ LifeEvent start;
+ LifeEvent stop;
+ LifeEventList frequency;
+};
+
+
+
+ enum Polarity { ASCENDING, DESCENDING };
+
+ struct SortAttribute
+ {
+ UCO::Name attribute_name;
+ Polarity sort_polarity;
+ };
+
+ typedef sequence < SortAttribute > SortAttributeList;
+
+struct DelayEstimate {
+ unsigned long time_delay;
+ boolean valid_time_delay;
+};
+struct ProductDetails {
+ MediaTypeList mTypes;
+ UCO::NameList benums;
+ AlterationSpec aSpec;
+ UID::Product aProduct;
+ string info_system_name;
+ };
+typedef sequence <ProductDetails> ProductDetailsList;
+
+struct DeliveryDetails {
+ Destination dests;
+ string receiver;
+ string shipmentMode;
+ };
+typedef sequence < DeliveryDetails > DeliveryDetailsList;
+
+struct OrderContents {
+ string originator;
+ TailoringSpec tSpec;
+ PackagingSpec pSpec;
+ UCO::AbsTime needByDate;
+ string operatorNote;
+ short orderPriority;
+ ProductDetailsList prod_list;
+ DeliveryDetailsList del_list;
+ };
+
+struct QueryOrderContents {
+ string originator;
+ TailoringSpec tSpec;
+ PackagingSpec pSpec;
+ string operatorNote;
+ short orderPriority;
+ AlterationSpec aSpec;
+ DeliveryDetailsList del_list;
+ };
+
+struct AccessCriteria {
+ string userID;
+ string password;
+ string licenseKey;
+};
+struct PackageElement {
+ UID::Product prod;
+ UCO::NameList files;
+ };
+typedef sequence< PackageElement > PackageElementList;
+
+ struct DeliveryManifest {
+ string package_name;
+ PackageElementList elements;
+ };
+typedef sequence<DeliveryManifest> DeliveryManifestList;
+
+typedef string CallbackID;
+
+//***************************************************************
+ //* The Exceptions Identifiers
+ //* Note: Three sets of IDL Strings Constants are being used as
+ //* the Exceptions for the GIAS
+ //***************************************************************
+// UCO::InvalidInputParameter Exceptions
+const string BadAccessCriteriaConst = "BadAccessCriteria";
+const string BadAccessValueConst = "BadAccessValue";
+const string BadCreationAttributeValueConst = "BadCreationAttributeValue";
+const string BadEmailAddressConst = "BadEmailAddress";
+const string BadGeoRegionConst = "BadGeoRegion";
+const string BadLocationConst = "BadLocation";
+const string BadPropertyValueConst = "BadPropertyValue";
+const string BadQueryConst = "BadQuery";
+const string BadQueryAttributeConst = "BadQueryAttribute";
+const string BadQueryValueConst = "BadQueryValue";
+const string BadTimeConst = "BadTime";
+const string BadUseModeConst = "BadUseMode";
+const string UnknownCallBackConst = "UnknownCallBack";
+const string UnknownCreationAttributeConst = "UnknownCreationAttribute";
+const string UnknownManagerTypeConst = "UnknownManagerType";
+const string UnknownProductConst = "UnknownProduct";
+const string UnknownPropertyConst = "UnknownProperty";
+const string UnknownRequestConst = "UnknownRequest";
+const string UnregisteredCallbackConst = "UnregisteredCallback";
+const string UnknownUseModeConst = "UnknownUseMode";
+const string BadOrderConst = "BadOrder";
+const string UnknownViewNameConst = "UnknownViewName";
+const string UnknownEntityConst = "UnknownEntity";
+const string UnsupportedConceptualAttributeConst = "UnsupportedConceptualAttribute";
+const string NoValuesRequestedConst = "NoValuesRequested";
+const string BadSortAttributeConst = "BadSortAttribute";
+const string NonUpdateableAttributeConst = "NonUpdateableAttribute";
+const string BadFileTypeConst = "BadFileType";
+const string InvalidCardinalityConst = "InvalidCardinality";
+const string UnknownAssociationConst = "UnknownAssociation";
+const string InvalidObjectConst = "InvalidObject";
+const string UnknownCategoryConst = "UnknownCategory";
+const string InvalidEventConst = "InvalidEvent";
+const string BadResultAttributeConst = "BadResultAttribute";
+const string BadUpdateAttributeConst = "BadUpdateAttribute";
+const string ImplementationLimitConst = "ImplementationLimit";
+
+// UCO::ProcessingFault Exceptions
+const string ProductUnavailableConst = "ProductUnavailable";
+const string LockUnavailableConst = "LockUnavailable";
+const string UnsafeUpdateConst = "UnsafeUpdate";
+const string ProductLockedConst = "ProductLocked";
+
+// UCO::SystemFault Exceptions
+const string GeneralSystemFaultConst = "GeneralSystemFault";
+
+
+
+
+//***************************************************************
+//* The Interfaces
+//***************************************************************
+
+//***************************************************************
+ //* interface GIAS::Library.
+ //*
+ //* Description: This object represents a Library. It
+ //* provides operations to discover and acquire manager objects,
+ //* which provide access to all the functionality of this
+ //* Library.
+ //*
+ //***************************************************************
+
+ interface Library
+ {
+
+ManagerTypeList get_manager_types ()
+ raises (UCO::ProcessingFault, UCO::SystemFault);
+
+ LibraryManager get_manager (in ManagerType manager_type, in
+ AccessCriteria access_criteria)
+ raises ( UCO::InvalidInputParameter, UCO::ProcessingFault, UCO::SystemFault);
+
+ LibraryDescription get_library_description ()
+ raises (UCO::ProcessingFault, UCO::SystemFault);
+
+ LibraryDescriptionList get_other_libraries (in AccessCriteria access_criteria)
+ raises ( UCO::InvalidInputParameter, UCO::ProcessingFault, UCO::SystemFault);
+
+ };
+
+
+//***************************************************************
+ //* Interface GIAS::LibraryManager
+ //*
+ //* Description: This (abstract) object defines the basic
+ //* functions common to all types of managers.
+ //*
+ //*
+ //***************************************************************
+
+ interface LibraryManager
+ {
+ UCO::NameList get_property_names ()
+ raises (UCO::ProcessingFault, UCO::SystemFault);
+
+ PropertyList get_property_values (in UCO::NameList
+ desired_properties)
+ raises ( UCO::InvalidInputParameter, UCO::ProcessingFault, UCO::SystemFault);
+
+ LibraryList get_libraries ()
+ raises (UCO::ProcessingFault, UCO::SystemFault);
+ };
+
+//***************************************************************
+ //* Interface GIAS::RequestManager
+ //*
+ //* Description: This (abstact) object defines the basic
+ //* functions common to managers that use operations that
+ //* generate request objects.
+ //*
+ //*
+ //***************************************************************
+
+ interface RequestManager
+ {
+
+ RequestList get_active_requests ()
+ raises (UCO::ProcessingFault, UCO::SystemFault);
+
+ unsigned long get_default_timeout ()
+ raises (UCO::ProcessingFault, UCO::SystemFault);
+
+ void set_default_timeout (in unsigned long new_default)
+ raises ( UCO::InvalidInputParameter, UCO::ProcessingFault, UCO::SystemFault);
+
+ unsigned long get_timeout (in Request aRequest)
+ raises ( UCO::InvalidInputParameter, UCO::ProcessingFault, UCO::SystemFault);
+
+ void set_timeout (in Request aRequest, in unsigned long
+ new_lifetime)
+ raises ( UCO::InvalidInputParameter, UCO::ProcessingFault, UCO::SystemFault);
+
+ void delete_request (in Request aRequest)
+ raises ( UCO::InvalidInputParameter, UCO::ProcessingFault, UCO::SystemFault);
+ };
+
+//***************************************************************
+ //* interface GIAS:: AccessManager
+ //*
+ //* Description: Provides functions to check and request the
+ //* availability of Library products for specific purposes
+ //*
+ //***************************************************************
+
+ interface AccessManager:RequestManager
+ {
+
+ UseModeList get_use_modes ()
+raises (UCO::ProcessingFault, UCO::SystemFault);
+ boolean is_available (in UID::Product product, in UseMode use_mode)
+ raises ( UCO::InvalidInputParameter, UCO::ProcessingFault, UCO::SystemFault);
+
+// Returns the time (in seconds) estimated to put the requested product // into the requested UseMode. DOES NOT request a change in the
+// availability of product.
+
+ unsigned long query_availability_delay (in UID::Product product,
+ in AvailabilityRequirement availability_requirement,
+ in UseMode use_mode)
+ raises ( UCO::InvalidInputParameter, UCO::ProcessingFault, UCO::SystemFault);
+
+short get_number_of_priorities()
+raises (UCO::ProcessingFault, UCO::SystemFault);
+
+SetAvailabilityRequest set_availability (in UID::ProductList products, in AvailabilityRequirement availability_requirement, in UseMode use_mode, in short priority)
+ raises ( UCO::InvalidInputParameter, UCO::ProcessingFault, UCO::SystemFault);
+
+ };
+
+//***************************************************************
+ //* The Managers
+ //*
+ //***************************************************************
+
+//***************************************************************
+ //* interface GIAS::QueryOrderMgr
+ //* Derived from GIAS::LibraryManager and
+ //* GIAS::RequestManager
+ //*
+ //* Description: Provides operations to submit a
+ //* query based order.
+ //*
+ //*
+ //***************************************************************
+
+
+ interface QueryOrderMgr:LibraryManager, RequestManager
+ {
+
+ EventList get_event_descriptions()
+raises (UCO::ProcessingFault, UCO::SystemFault);
+
+SubmitQueryOrderRequest submit_query_order (
+
+ in Query aQuery,
+ in QueryLifeSpan lifespan,
+ in OrderType o_type,
+ in QueryOrderContents order,
+in PropertyList properties)
+ raises ( UCO::InvalidInputParameter, UCO::ProcessingFault, UCO::SystemFault);
+
+
+ };
+
+//***************************************************************
+//* interface GIAS:: VideoMgr
+//* Derived from GIAS::LibraryManager and GIAS::AccessManager
+//*
+//* Description: Provides operations to retrieve video data
+//*
+//* NOTE: This interface is TBR.
+//***************************************************************
+
+//interface VideoMgr : LibraryManager, AccessManager {
+ //};
+
+//***************************************************************
+
+//***************************************************************
+ //* interface GIAS:: OrderMgr
+ //* Derived from GIAS:: LibraryManager and GIAS::AccessManager
+ //*
+ //* Description: Provides operations to submit orders for Products
+ //* contained in the Library:
+ //*
+ //*
+ //*
+ //***************************************************************
+
+interface OrderMgr:LibraryManager, AccessManager
+ {
+
+
+ UCO::NameList get_package_specifications()
+raises (UCO::ProcessingFault, UCO::SystemFault);
+
+ ValidationResults validate_order (in OrderContents order, in PropertyList properties)
+ raises ( UCO::InvalidInputParameter, UCO::ProcessingFault, UCO::SystemFault);
+
+ OrderRequest order (in OrderContents order, in PropertyList properties)
+ raises ( UCO::InvalidInputParameter, UCO::ProcessingFault, UCO::SystemFault);
+
+ };
+
+//***************************************************************
+ //* interface GIAS:: DataModelMgr
+ //* Derived from GIAS:: LibraryManager
+ //*
+ //* Description: Provides operations to discover the elements of the
+ //* data model in use by the library
+ //*
+ //*
+ //*
+ //***************************************************************
+
+ interface DataModelMgr:LibraryManager
+ {
+UCO::AbsTime get_data_model_date (in PropertyList properties)
+ raises ( UCO::InvalidInputParameter, UCO::ProcessingFault, UCO::SystemFault);
+
+UCO::NameList get_alias_categories(in PropertyList properties)
+ raises ( UCO::InvalidInputParameter, UCO::ProcessingFault, UCO::SystemFault);
+
+UCO::NameNameList get_logical_aliases(in string category, in PropertyList properties)
+raises( UCO::InvalidInputParameter, UCO::ProcessingFault, UCO::SystemFault);
+
+string get_logical_attribute_name (in ViewName view_name,in ConceptualAttributeType attribute_type, in PropertyList properties)
+ raises ( UCO::InvalidInputParameter, UCO::ProcessingFault, UCO::SystemFault);
+
+ViewList get_view_names (in PropertyList properties)
+ raises ( UCO::InvalidInputParameter, UCO::ProcessingFault, UCO::SystemFault);
+
+AttributeInformationList get_attributes (in ViewName view_name,in PropertyList properties)
+ raises ( UCO::InvalidInputParameter, UCO::ProcessingFault, UCO::SystemFault);
+
+AttributeInformationList get_queryable_attributes (in ViewName view_name,in PropertyList properties)
+ raises ( UCO::InvalidInputParameter, UCO::ProcessingFault, UCO::SystemFault);
+
+ UCO::EntityGraph get_entities (in ViewName view_name,in PropertyList properties)
+ raises ( UCO::InvalidInputParameter, UCO::ProcessingFault, UCO::SystemFault);
+
+ AttributeInformationList get_entity_attributes (in Entity aEntity,in PropertyList properties)
+ raises ( UCO::InvalidInputParameter, UCO::ProcessingFault, UCO::SystemFault);
+
+AssociationList get_associations(in PropertyList properties)
+ raises ( UCO::InvalidInputParameter, UCO::ProcessingFault, UCO::SystemFault);
+
+unsigned short get_max_vertices(in PropertyList properties)
+ raises ( UCO::InvalidInputParameter, UCO::ProcessingFault, UCO::SystemFault);
+};
+
+//***************************************************************
+ //* interface GIAS:: CreationMgr
+ //* Derived from GIAS::RequestManager and
+ //* GIAS::LibraryManager
+ //* Description: Provides operations to request/nominate the
+ //* archiving and cataloging of a new product to a Library.
+ //*
+ //*
+ //***************************************************************
+
+ interface CreationMgr:LibraryManager, RequestManager
+ {
+ CreateRequest create (in UCO::FileLocationList new_product,in RelatedFileList related_files, in UCO::DAG creation_metadata,in PropertyList properties)
+ raises ( UCO::InvalidInputParameter, UCO::ProcessingFault, UCO::SystemFault);
+
+ CreateMetaDataRequest create_metadata (in UCO::DAG creation_metadata, in ViewName view_name, in RelatedFileList related_files, in PropertyList properties)
+ raises ( UCO::InvalidInputParameter, UCO::ProcessingFault, UCO::SystemFault);
+
+CreateAssociationRequest create_association( in string assoc_name,
+ in UID::Product view_a_object,
+ in UID::ProductList view_b_objects,
+in UCO::NameValueList assoc_info)
+ raises ( UCO::InvalidInputParameter, UCO::ProcessingFault, UCO::SystemFault);
+ };
+
+
+
+
+//***************************************************************
+ //* interface GIAS:: UpdateMgr
+ //* Derived from GIAS:: LibraryManager, and GIAS::RequestManager
+ //* Description: Provides operations to modify, extend or delete
+ //* existing catalog entries in a GIAS Library.
+ //*
+ //*
+ //***************************************************************
+
+ interface UpdateMgr: LibraryManager, RequestManager
+ {
+ void set_lock(in UID::Product lockedProduct)
+raises( UCO::InvalidInputParameter, UCO::ProcessingFault, UCO::SystemFault);
+ UpdateRequest update (in ViewName view, in UCO::UpdateDAGList changes, in RelatedFileList relfiles, in PropertyList properties)
+ raises( UCO::InvalidInputParameter, UCO::ProcessingFault, UCO::SystemFault);
+UpdateByQueryRequest update_by_query(in UCO::NameValue updated_attribute,
+ in Query bqs_query,
+
+ in PropertyList properties)
+ raises ( UCO::InvalidInputParameter, UCO::ProcessingFault, UCO::SystemFault);
+ void release_lock(in UID::Product lockedProduct)
+ raises ( UCO::InvalidInputParameter, UCO::ProcessingFault, UCO::SystemFault);
+
+ void delete_product(in UID::Product prod)
+ raises(UCO::InvalidInputParameter, UCO::ProcessingFault, UCO::SystemFault
+);
+ };
+
+
+//***************************************************************
+ //* interface GIAS:: CatalogMgr
+ //* Derived from GIAS::LibraryManager and
+ //* GIAS::RequestManager
+ //*
+ //* Description: Provides operations to submit a query for
+ //* processing.
+ //*
+ //*
+ //***************************************************************
+
+ interface CatalogMgr:LibraryManager, RequestManager
+ {
+
+ SubmitQueryRequest submit_query (
+in Query aQuery,
+in UCO::NameList result_attributes,
+in SortAttributeList sort_attributes,
+in PropertyList properties)
+ raises ( UCO::InvalidInputParameter, UCO::ProcessingFault, UCO::SystemFault);
+
+
+
+
+ HitCountRequest hit_count (in Query
+ aQuery, in PropertyList properties)
+ raises ( UCO::InvalidInputParameter, UCO::ProcessingFault, UCO::SystemFault);
+
+
+
+ };
+
+//***************************************************************
+ //* interface GIAS::StandingQueryMgr
+ //* Derived from GIAS::LibraryManager and
+ //* GIAS::RequestManager
+ //*
+ //* Description: Provides operations to submit a
+ //* standing query.
+ //*
+ //*
+ //***************************************************************
+
+interface StandingQueryMgr:LibraryManager, RequestManager
+ {
+
+ EventList get_event_descriptions()
+raises (UCO::ProcessingFault, UCO::SystemFault);
+
+ SubmitStandingQueryRequest submit_standing_query (
+ in Query aQuery,
+ in UCO::NameList result_attributes,
+ in SortAttributeList sort_attributes,
+ in QueryLifeSpan lifespan,
+ in PropertyList properties)
+ raises ( UCO::InvalidInputParameter, UCO::ProcessingFault, UCO::SystemFault);
+
+
+ };
+
+//***************************************************************
+ //* interface GIAS:: ProductMgr
+ //* Derived from GIAS::LibraryManager and GIAS::AccessManager
+ //*
+ //* Description: Provides operations to retrieve data about a
+ //* specific data set.
+ //*
+ //*
+ //***************************************************************
+
+ interface ProductMgr:LibraryManager, AccessManager
+ {
+
+ GetParametersRequest get_parameters (in UID::Product product, in UCO::NameList desired_parameters, in PropertyList properties)
+ raises ( UCO::InvalidInputParameter, UCO::ProcessingFault, UCO::SystemFault);
+
+RelatedFileTypeList get_related_file_types( in UID::Product prod)
+ raises ( UCO::InvalidInputParameter, UCO::ProcessingFault, UCO::SystemFault);
+
+ GetRelatedFilesRequest get_related_files ( in UID::ProductList
+ products, in UCO::FileLocation location, in RelatedFileType
+ type, in PropertyList properties )
+ raises ( UCO::InvalidInputParameter, UCO::ProcessingFault,
+ UCO::SystemFault );
+
+ };
+
+//***************************************************************
+ //* interface GIAS:: IngestMgr
+ //* Derived from GIAS::LibraryManager and
+ //* GIAS::RequestManager
+ //*
+ //* Description: Provides operations to perform bulk transfers
+ //* of data between Libraries.
+ //*
+ //*
+ //***************************************************************
+
+interface IngestMgr:LibraryManager, RequestManager
+ {
+
+// FileLocation contains a directory
+ IngestRequest bulk_pull (in UCO::FileLocation location, in PropertyList property_list)
+ raises ( UCO::InvalidInputParameter, UCO::ProcessingFault, UCO::SystemFault);
+
+// FileLocation contains a directory
+ IngestRequest bulk_push (in Query aQuery, in UCO::FileLocation location, in PropertyList property_list)
+ raises ( UCO::InvalidInputParameter, UCO::ProcessingFault, UCO::SystemFault);
+
+ };
+
+//***************************************************************
+ //* interface GIAS:: Request
+ //*
+ //* Description: An (abstract) object that provides operations
+ //* common to all forms of requests.
+ //*
+ //*
+ //***************************************************************
+
+
+ interface Request
+ {
+
+ UCO::RequestDescription get_request_description ()
+ raises (UCO::ProcessingFault, UCO::SystemFault);
+ void set_user_info (in string message)
+ raises ( UCO::InvalidInputParameter, UCO::ProcessingFault, UCO::SystemFault);
+
+ UCO::Status get_status ()
+ raises (UCO::ProcessingFault, UCO::SystemFault);
+ DelayEstimate get_remaining_delay ()
+ raises (UCO::ProcessingFault, UCO::SystemFault);
+ void cancel ()
+ raises (UCO::ProcessingFault, UCO::SystemFault);
+ CallbackID register_callback (in CB::Callback acallback)
+raises ( UCO::InvalidInputParameter, UCO::ProcessingFault, UCO::SystemFault);
+ void free_callback (in CallbackID id)
+ raises ( UCO::InvalidInputParameter, UCO::ProcessingFault, UCO::SystemFault);
+
+ RequestManager get_request_manager ()
+ raises (UCO::ProcessingFault, UCO::SystemFault);
+ };
+
+//***************************************************************
+ //* interface GIAS:: OrderRequest
+ //* Derived from GIAS::Request
+ //* Description: Returned by calls to order.
+ //*
+ //*
+ //***************************************************************
+
+interface OrderRequest:Request
+ {
+ UCO::State complete (out DeliveryManifest prods)
+ raises (UCO::ProcessingFault, UCO::SystemFault);
+ };
+
+//***************************************************************
+ //* interface GIAS:: SubmitQueryOrderRequest
+ //* Derived from GIAS::Request
+ //* Description: Returned by calls to submit_query_order.
+ //*
+ //*
+ //***************************************************************
+
+interface SubmitQueryOrderRequest:Request
+ {
+
+ void pause()
+ raises (UCO::ProcessingFault, UCO::SystemFault);
+
+ void resume()
+ raises (UCO::ProcessingFault, UCO::SystemFault);
+
+UCO::State complete_list (out DeliveryManifestList prods)
+ raises (UCO::ProcessingFault, UCO::SystemFault);
+
+ UCO::State complete (out DeliveryManifest prods)
+ raises (UCO::ProcessingFault, UCO::SystemFault);
+ };
+
+//***************************************************************
+ //***************************************************************
+ //* interface GIAS:: CreateRequest
+ //* Derived from GIAS::Request
+ //*
+ //* Description: Returned by calls to create
+ //*
+ //*
+ //***************************************************************
+
+interface CreateRequest:Request
+ {
+ UCO::State complete (out UID::ProductList new_products)
+ raises (UCO::ProcessingFault, UCO::SystemFault);
+ };
+
+//***************************************************************
+ //* interface GIAS:: CreateMetaDataRequest
+ //* Derived from GIAS::Request
+ //*
+ //* Description: Returned by calls to create_metadata
+ //*
+ //*
+ //***************************************************************
+
+ interface CreateMetaDataRequest:Request
+ {
+ UCO::State complete (out UID::Product new_product)
+ raises (UCO::ProcessingFault, UCO::SystemFault);
+ };
+
+
+//***************************************************************
+ //* interface GIAS:: UpdateRequest
+ //* Derived from GIAS::Request
+ //*
+ //* Description: Returned by calls to update
+ //*
+ //*
+ //***************************************************************
+
+interface UpdateRequest:Request
+ {
+
+ UCO::State complete ()
+ raises (UCO::ProcessingFault, UCO::SystemFault);
+
+ };
+
+
+//***************************************************************
+ //* interface GIAS:: SubmitQueryRequest
+ //* Derived from GIAS::Request
+ //*
+ //* Description: Returned by calls to query
+ //*
+ //*
+ //***************************************************************
+
+interface SubmitQueryRequest:Request
+ {
+ void set_number_of_hits (in unsigned long hits)
+ raises ( UCO::InvalidInputParameter, UCO::ProcessingFault, UCO::SystemFault);
+ UCO::State complete_DAG_results (out QueryResults results)
+ raises (UCO::ProcessingFault, UCO::SystemFault);
+ UCO::State complete_stringDAG_results (out UCO::StringDAGList results)
+ raises (UCO::ProcessingFault, UCO::SystemFault);
+ UCO::State complete_XML_results (out UCO::XMLDocument results)
+ raises (UCO::ProcessingFault, UCO::SystemFault);
+
+ };
+
+//***************************************************************
+ //* interface GIAS:: SubmitStandingQueryRequest
+ //* Derived from GIAS::Request
+ //*
+ //* Description: Returned by calls to submit_standing_query
+ //*
+ //*
+ //***************************************************************
+
+ interface SubmitStandingQueryRequest:Request
+ {
+ void set_number_of_hits (in unsigned long hits)
+ raises ( UCO::InvalidInputParameter, UCO::ProcessingFault, UCO::SystemFault);
+
+ unsigned long get_number_of_hits()
+ raises (UCO::ProcessingFault, UCO::SystemFault);
+
+ unsigned long get_number_of_hits_in_interval(in unsigned long interval)
+ raises ( UCO::InvalidInputParameter, UCO::ProcessingFault, UCO::SystemFault);
+
+ unsigned long get_number_of_intervals()
+ raises (UCO::ProcessingFault, UCO::SystemFault);
+ void clear_all()
+ raises (UCO::ProcessingFault, UCO::SystemFault);
+
+ void clear_intervals(in unsigned long num_intervals)
+ raises ( UCO::InvalidInputParameter, UCO::ProcessingFault, UCO::SystemFault);
+
+ void clear_before(in UCO::Time relative_time)
+ raises ( UCO::InvalidInputParameter, UCO::ProcessingFault, UCO::SystemFault);
+
+ void pause()
+ raises (UCO::ProcessingFault, UCO::SystemFault);
+ void resume()
+ raises (UCO::ProcessingFault, UCO::SystemFault);
+ UCO::AbsTime get_time_last_executed()
+ raises (UCO::ProcessingFault, UCO::SystemFault);
+ UCO::AbsTime get_time_next_execution()
+raises (UCO::ProcessingFault, UCO::SystemFault);
+ UCO::State complete_DAG_results (out QueryResults results)
+ raises (UCO::ProcessingFault, UCO::SystemFault);
+UCO::State complete_stringDAG_results (out UCO::StringDAGList results)
+ raises (UCO::ProcessingFault, UCO::SystemFault);
+ UCO::State complete_XML_results (out UCO::XMLDocument results)
+ raises (UCO::ProcessingFault, UCO::SystemFault);
+ };
+
+//***************************************************************
+ //* interface GIAS:: SetAvailabilityRequest
+ //* Derived from GIAS::Request
+ //*
+ //* Description: Returned by calls to makeAvailable
+ //*
+ //* `
+ //***************************************************************
+
+ interface SetAvailabilityRequest:Request
+ {
+ UCO::State complete ()
+ raises (UCO::ProcessingFault, UCO::SystemFault);
+ };
+
+//***************************************************************
+ //* interface GIAS:: HitCountRequest
+ //* Derived from GIAS::Request
+ //*
+ //* Description: Returned by calls to Hitcount
+ //*
+ //*
+ //***************************************************************
+
+interface HitCountRequest:Request
+ {
+ UCO::State complete (out unsigned long number_of_hits)
+ raises (UCO::ProcessingFault, UCO::SystemFault);
+ };
+
+//***************************************************************
+ //* interface GIAS:: GetParametersRequest
+ //* Derived from GIAS::Request
+ //*
+ //* Description: Returned by calls to get_parameters
+ //*
+ //*
+ //***************************************************************
+
+ interface GetParametersRequest:Request
+ {
+ UCO::State complete (out UCO::DAG parameters)
+ raises (UCO::ProcessingFault, UCO::SystemFault);
+ UCO::State complete_StringDAG (out UCO::StringDAG parameters)
+ raises (UCO::ProcessingFault, UCO::SystemFault);
+
+
+
+ };
+
+//***************************************************************
+ //* interface GIAS:: IngestRequest
+ //* Derived from GIAS::Request
+ //*
+ //* Description: Returned by calls to bulk_push and bulk_pull
+ //*
+ //*
+ //***************************************************************
+
+ interface IngestRequest:Request
+ {
+ UCO::State complete ()
+ raises (UCO::ProcessingFault, UCO::SystemFault);
+ };
+
+
+//***************************************************************
+ //* interface GIAS:: GetRelatedFilesRequest
+ //* Derived from GIAS::Request
+ //*
+ //* Description: Returned by calls to get_related_files
+ //*
+ //*
+ //***************************************************************
+
+interface GetRelatedFilesRequest:Request
+ {
+ UCO::State complete (out UCO::NameList locations)
+ raises (UCO::ProcessingFault, UCO::SystemFault);
+ };
+
+//***************************************************************
+ //* interface GIAS:: CreateAssociationRequest
+ //* Derived from GIAS::Request
+ //*
+ //* Description: Returned by calls to create_association
+ //*
+ //*
+ //***************************************************************
+
+interface CreateAssociationRequest:Request
+ {
+ UCO::State complete ()
+ raises (UCO::ProcessingFault, UCO::SystemFault);
+
+ };
+//*******************************************************************
+//* interface GIAS::UpdateByQueryRequest
+//* Derived from GIAS::Request
+//* Description: Returned by calls to update_by_query
+//*
+//*******************************************************************
+interface UpdateByQueryRequest:Request
+ {
+ UCO::State complete ()
+ raises (UCO::ProcessingFault, UCO::SystemFault);
+
+ };
+
+};
+#endif