OSF DCE Application Development Guide--Introduction and Style Guide

A Sample Application
The IDL file sample_db.idl and the ACF file sample_db.idl are required to generate a
server-only stub for the database serialization routines used by the ACL manager.
/****************************************************************************/
/* [27.VI.94] */
/* */
/* sample_db.idl -- Here we declare a "serialization" function for the */
/* sample object */
/* */
/* */
/* This file contains the declarations for the data type that will contain */
/* the data that we will be storing "in" our sample objects. */
/* */
/* The declarations are done in an IDL file because the data is sent */
/* across the wire by the ACL and Backing Store routines. */
/* */
/* */
/* */
/* */
/* The instructions for how to set up the IDL and ACF files to generate */
/* serialization procedures for backing store data types can be found in */
/* the dce_db_open.3dce manpage. This file and its accompanying .acf file */
/* are written in conformance with the examples there. */
/* */
/* */
/* -77 cols- */
/****************************************************************************/
[ uuid(00312933-403d-1d3d-a469-0000c0d4de56),
version(1.0) ]
interface sampledb
{
import "dce/database.idl";
import "sample.idl";
/*** FROM dce/database.idl: *************************************************/
/* This is the standard header for each "object" in the database. */
/* IMPORTANT:
/* The header struct cannot have any variable-length data */
/* (e.g., char *). This is because when fetching (and un- */
/* marshalling) just the header, the variable part is at the */
/* end of the application’s entire data object, not at the end */
/* of the header. */
/*
THE FOLLOWING IS FILLED IN BY A CALL TO dce_db_std_header_init().
For an example of how these fields are accessed, see the routine
sample_resolve_by_name() in sample_server.c. Note that the fields
are automatically filled in by the ACL library; we only have to
read them.
124246 Tandem Computers Incorporated A3