home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
OS/2 Shareware BBS: 10 Tools
/
10-Tools.zip
/
som30tk.zip
/
som30os2.zip
/
include
/
xnamingf.idl
< prev
Wrap
Text File
|
1996-12-24
|
8KB
|
235 lines
//
// COMPONENT_NAME: somnm
//
// ORIGINS: 27
//
//
// 25H7912 (C) COPYRIGHT International Business Machines Corp. 1992,1996,1996
// All Rights Reserved
// Licensed Materials - Property of IBM
// US Government Users Restricted Rights - Use, duplication or
// disclosure restricted by GSA ADP Schedule Contract with IBM Corp.
//
//# @(#) 1.18 src/somnm/naming/xnamingf.idl, somnm, som3.0 12/15/96 18:01:15 [12/24/96 08:00:06]
#ifndef xnamingF_idl
#define xnamingF_idl
#include <somobj.idl>
#include <xnaming.idl>
#include <somos.idl>
//# forward declartions
interface DataBase;
interface BackingStore;
module FileXNaming {
const unsigned long STARTINGLENGTH = 16;
const long MAXSTACK = 100;
// File system based ENC. Concrete implementation of
// ExtendedNamingContext
interface FileENC : ExtendedNaming::ExtendedNamingContext
, somOS::ServiceBase
{
typedef string Constraint;
typedef char * Strings;
#ifdef __SOMIDL__
implementation {
functionprefix = FENC_;
//# instance variables
sequence<Strings> allowedObjTypes;
sequence<Strings> allowedPropTypes;
sequence<Strings> allowedPropNames;
somToken cs_mutex;
// Mutex used to serialize access to FileENC.
dllname = "somnmf.dll";
//# Method Modifiers
//# override somobj methods
somDefaultInit: override, init;
somDestruct: override;
somDumpSelfInt: override;
//# override methods introduced by NamingContext
bind: override;
rebind: override;
bind_context: override;
rebind_context: override;
resolve: override;
unbind: override;
new_context: override;
bind_new_context: override;
destroy: override;
list: override;
//# override methods introduced by ExtendedNamingContext
get_features_supported: override;
add_property: override;
add_properties: override;
bind_with_properties: override;
bind_context_with_properties: override;
rebind_with_properties: override;
rebind_context_with_properties: override;
share_property: override;
share_properties: override;
unshare_property: override;
unshare_properties: override;
list_properties: override;
get_property: override;
get_properties: override;
get_all_properties: override;
resolve_with_property: override;
resolve_with_properties: override;
resolve_with_all_properties: override;
remove_property: override;
remove_properties: override;
remove_all_properties: override;
find_any: override;
find_all: override;
find_any_name_binding: override;
add_index: override;
list_indexes: override;
remove_index: override;
_get_allowed_object_types: override;
_get_allowed_property_types: override;
_get_allowed_property_names: override;
_get_shared_property_names: override;
_get_shared_property_types: override;
//# methods introduced by somOS::ServiceBase
reinit: override;
capture: override;
init_for_object_creation: override;
uninit_for_object_destruction: override;
};
#endif
};
// default implementation of BindingIterator
interface FileBindingIterator: CosNaming::BindingIterator {
typedef sequence<string> stringSeq;
void FileBindingIterator_Init1(
inout somInitCtrl ctrl,
in stringSeq key,
in string databaseFile);
void FileBindingIterator_Init2(
inout somInitCtrl ctrl,
in CosNaming::BindingList bl);
#ifdef __SOMIDL__
implementation {
//# instance variables
CosNaming::BindingIterator obj;
releaseorder:
FileBindingIterator_Init1,
FileBindingIterator_Init2
;
FileBindingIterator_Init1: init;
FileBindingIterator_Init2: init;
functionprefix=FBI_;
dllname = "somnmf.dll";
//# method modifiers
next_one: override;
next_n: override;
destroy: override;
};
#endif //# __SOMIDL__
};
interface FPropertyBindingIterator : ExtendedNaming::PropertyBindingIterator{
#ifdef __SOMIDL__
implementation {
next_one: override;
next_n: override;
destroy: override;
functionprefix = FPB_;
dllname = "somnmf.dll";
};
#endif
};
interface FPropertyIterator:ExtendedNaming::PropertyIterator{
#ifdef __SOMIDL__
implementation {
next_one: override;
next_n: override;
destroy: override;
functionprefix = FP_;
dllname = "somnmf.dll";
};
#endif
};
interface FileIndexIterator: ExtendedNaming::IndexIterator {
void FileIndexIterator_Init(
inout somInitCtrl ctrl,
in sequence<octet> key,
in string databaseFile);
#ifdef __SOMIDL__
implementation {
releaseorder:
FileIndexIterator_Init;
FileIndexIterator_Init: init;
functionprefix=II_;
dllname = "somnmf.dll";
//# method modifiers
next_one: override;
next_n: override;
destroy: override;
};
#endif //# __SOMIDL__
};
};
#endif //# xnamingF_idl