- **status**: accepted --> review
- **Comment**:

Interface patch sent out for review.




---

** [tickets:#643] IMM: API that replaces SaNameT with SaStringT and 
SA_IMM_ATTR_DN**

**Status:** review
**Milestone:** 4.5.FC
**Created:** Thu Nov 28, 2013 05:00 PM UTC by Anders Bjornerstedt
**Last Updated:** Thu Mar 06, 2014 07:59 AM UTC
**Owner:** Anders Bjornerstedt

The IMM service should provide an updated API where all use of the troublesome
SaNameT type is replaced by the SaStringT type. Also needed is a new flag value
for attribute definitions: SA_IMM_ATTR_DN. 

Defining an attribute in an IMM class definition on the SaStringT type and
also setting the flag SA_IMM_ATTR_DN, will mean that the attribute is intended
to hold a value that should be a DN. 

Other flags that make sense to also set on such an attribute definition where
applicable are:

    SA_IMM_ATTR_RDN if this is the RDN attribute. Just as having SaNameT the 
    type of an RDN attribute indicates that the class is an association class,
    having SaStringT and SA_IMM_ATTR_DN combined with SA_IMM_ATTR_RDN would 
    also indicate that this is an association class.

    SA_IMM_ATTR_NO_DANGLING. Currently (OpenSAF 4.4) will only be allowed 
    on attributes of type SaNameT, but will of course be allowed also on
    attributes of type SaStringT if the SA_IMM_ATTR_DN flag is also set. 

All the other flags may also be used in combination with SA_IMM_ATTR_DN, with
the normal meaning. 

Given such new DN typing, the following new API should be defined:

    SaAisErrorT
    saImmOmSearchInitialize_o3(SaImmHandleT immHandle,
        const SaStringT rootName,
        SaImmScopeT scope,
        SaImmSearchOptionsT searchOptions,
        const SaImmSearchParametersT_2 *searchParam,
        const SaImmAttrNameT *attributeNames,
        SaImmSearchHandleT *searchHandle);
----------------------
    SaAisErrorT
    saImmOmSearchNext_o3(SaImmSearchHandleT searchHandle,
        SaStringT *objectName,  /* out */
        SaImmAttrValuesT_2  ***attributes);
--------------------
    SaAisErrorT
    saImmOmAccessorGet_o3(SaImmAccessorHandleT accessorHandle,
        const SaStringT objectName, /* in */
        const SaImmAttrNameT *attributeNames,
        SaImmAttrValuesT_2 ***attributes);
--------------------------------------------------------
    SaAisErrorT
    saImmOmAdminOwnerSet_o3(SaImmAdminOwnerHandleT ownerHandle,
        const SaStringT *objectNames. 
        SaImmScopeT scope);
----------------------------------------------------------
    SaAisErrorT
    saImmOmAdminOwnerRelease_o3(SaImmAdminOwnerHandleT ownerHandle,
        const SaStringT *objectNames. 
        SaImmScopeT scope);
--------------------------------------------------------------
    SaAisErrorT
    saImmOmCcbObjectCreate_o3(SaImmCcbHandleT ccbHandle,
        const SaImmClassNameT className,
        const SaStringT objectName, /* in */
        const SaImmAttrValuesT_2 **attrValues);

    /* Argument objecName replaces parentName. See #38 */
---------------------------------------------------------------------
    SaAisErrorT
    saImmOmCcbObjectDelete_o3(SaImmCcbHandleT ccbHandle,
        const SaStringT objectName);
--------------------------------------------------------------------
    SaAisErrorT
    saImmOmCcbObjectModify_o3(SaImmCcbHandleT ccbHandle,
        const SaStringT objectName,
        const SaImmAttrModificationT_2 **attrMods);
--------------------------------------------------------------------
    SaAisErrorT
    saImmOmAdminOperationInvoke_o3(SaImmAdminOwnerHandleT ownerHandle,
        const SaStringT objectName,
        SaImmContinuationIdT continuationId,
        SaImmAdminOperationIdT operationId,
        const SaImmAdminOperationParamsT_2 **params,
        SaAisErrorT *operationReturnValue,
        SaTimeT timeout);
------------------------------------------------------------

The pattern should be clear.

Corresponding OI APIs for both callbacks and downcalls where SaNameT parameter
is replaced with SaStringT would also be provided. 






---

Sent from sourceforge.net because [email protected] is 
subscribed to https://sourceforge.net/p/opensaf/tickets/

To unsubscribe from further messages, a project admin can change settings at 
https://sourceforge.net/p/opensaf/admin/tickets/options.  Or, if this is a 
mailing list, you can unsubscribe from the mailing list.
------------------------------------------------------------------------------
Learn Graph Databases - Download FREE O'Reilly Book
"Graph Databases" is the definitive new guide to graph databases and their
applications. Written by three acclaimed leaders in the field,
this first edition is now available. Download your free book today!
http://p.sf.net/sfu/13534_NeoTech
_______________________________________________
Opensaf-tickets mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/opensaf-tickets

Reply via email to