Management messages Interface definition - IDL

9.6.8 Management messages

The General Model defines messages for managing catalogs. These messages are translated to the CORBA profile literally. typedef sequenceDynamicAny::NameValuePairSeq NameValuePairSeqSeq; Messages for managing functions Insert-Structure for inserting metadata payload to a collection of a defined catalogType in a predefined format encoding struct InsertMetadata { CollectionName collectionID; CatalogEntryType catalogType; MessageFormat encoding; the data to insert, e.g. a list of NV-Pairs or ISO19139- XML any payload; }; Update-Structure for updating a certain set defined by the queryExpression of metadata payload of a collectioncatalogType in a predefined format encoding struct UpdateMetadata { CollectionName collectionID; CatalogEntryType catalogType; MessageFormat encoding; QueryExpression queryExpression; the data to insert, e.g. a list of NV-Pairs or ISO19139- XML any payload; }; Delete-Structure for deleting a certain set defined by the queryExpression of metadata of a collectioncatalogType in a predefined format encoding struct DeleteMetadata { CollectionName collectionID; CatalogEntryType catalogType; QueryExpression queryExpression; }; Enumeration for the type of a single manipulation in a transaction enum MetadataManipulationType { ctInsert, ctUpdate, ctDelete }; 98 Copyright © 2007 Open Geospatial Consortium, Inc. All Rights Reserved. Structure for the content of a single manipulation in a transaction union MetadataManipulation switchMetadataManipulationType { case ctInsert : InsertMetadata insertData; case ctUpdate : UpdateMetadata updateData; case ctDelete : DeleteMetadata deleteData; }; typedef sequenceMetadataManipulation MetadataManipulationSeq; Struct of a transaction, as a sequence of single manipulations struct Transaction { MetadataManipulationSeq manipulations; }; struct TransactionRequest { Message base; Transaction transactionData; }; struct TransactionResponse { Message base; Status status; value of -1 means not calculated long totalInserted; long totalUpdated; long totalDeleted; List of newly generated catalogue entry identifiers assigned to the new catalogue entry instances NameValuePairSeqSeq newKeyList; };

9.6.9 Access messages