Summary: osaf: create C++ abstractions of AIS C APIs for IMM [#2558]
Review request for Ticket(s): 2558
Peer Reviewer(s): all OpenSAF developers
Pull request to: *** LIST THE PERSON WITH PUSH ACCESS HERE ***
Affected branch(es): develop
Development branch: ticket-2558
Base revision: 8c05333d273b44f11562585a848142271c39c471
Personal repository: git://git.code.sf.net/u/winhvu/review

--------------------------------
Impacted area       Impact y/n
--------------------------------
 Docs                    n
 Build system            n
 RPM/packaging           n
 Configuration files     n
 Startup scripts         n
 SAF services            n
 OpenSAF services        n
 Core libraries          y
 Samples                 n
 Tests                   n
 Other                   n

NOTE: Patch(es) contain lines longer than 80 characers

Comments (indicate scope for each "y" above):
---------------------------------------------
*** EXPLAIN/COMMENT THE PATCH SERIES HERE ***

revision 8fcc54f908362c8df78a8c91860dbfb42fd73ba0
Author: Vu Minh Nguyen <[email protected]>
Date:   Fri, 29 Sep 2017 18:16:00 +0700

osaf: create C++ abstractions of AIS C APIs for IMM [#2558]

Major information:
1) Encapsulates the existing C IMM AIS APIs into C++ classes.
2) Simplifies parameter handling and handles try again mechanisms.

Refer to README for further information.



Added Files:
------------
 src/experimental/immcpp/api/common/common.cc
 src/experimental/immcpp/api/common/common.h
 src/experimental/immcpp/api/common/imm_attribute.cc
 src/experimental/immcpp/api/common/imm_attribute.h
 src/experimental/immcpp/api/common/Makefile
 src/experimental/immcpp/api/demo/common.h
 src/experimental/immcpp/api/demo/immcppcfg.cc
 src/experimental/immcpp/api/demo/immcppcfg.h
 src/experimental/immcpp/api/demo/immcpptest.cc
 src/experimental/immcpp/api/demo/immcpp_test_classes.xml
 src/experimental/immcpp/api/demo/Makefile
 src/experimental/immcpp/api/demo/oiruntimeobject.cc
 src/experimental/immcpp/api/demo/oiruntimeobject.h
 src/experimental/immcpp/api/demo/omaccessorget.cc
 src/experimental/immcpp/api/demo/omaccessorget.h
 src/experimental/immcpp/api/demo/omclasscreate.cc
 src/experimental/immcpp/api/demo/omclasscreate.h
 src/experimental/immcpp/api/demo/omclassmanagement.cc
 src/experimental/immcpp/api/demo/omclassmanagement.h
 src/experimental/immcpp/api/demo/omconfigurationchanges.cc
 src/experimental/immcpp/api/demo/omconfigurationchanges.h
 src/experimental/immcpp/api/demo/omsearchnext.cc
 src/experimental/immcpp/api/demo/omsearchnext.h
 src/experimental/immcpp/api/include/oi_admin_operation_result.h
 src/experimental/immcpp/api/include/oi_handle.h
 src/experimental/immcpp/api/include/oi_implementer.h
 src/experimental/immcpp/api/include/oi_runtime_object_create.h
 src/experimental/immcpp/api/include/oi_runtime_object_delete.h
 src/experimental/immcpp/api/include/oi_runtime_object_update.h
 src/experimental/immcpp/api/include/om_accessor_get.h
 src/experimental/immcpp/api/include/om_accessor_handle.h
 src/experimental/immcpp/api/include/om_admin_operation.h
 src/experimental/immcpp/api/include/om_admin_owner_clear.h
 src/experimental/immcpp/api/include/om_admin_owner_handle.h
 src/experimental/immcpp/api/include/om_admin_owner_release.h
 src/experimental/immcpp/api/include/om_admin_owner_set.h
 src/experimental/immcpp/api/include/om_ccb_handle.h
 src/experimental/immcpp/api/include/om_ccb_object_create.h
 src/experimental/immcpp/api/include/om_ccb_object_delete.h
 src/experimental/immcpp/api/include/om_ccb_object_modify.h
 src/experimental/immcpp/api/include/om_class_create.h
 src/experimental/immcpp/api/include/om_class_delete.h
 src/experimental/immcpp/api/include/om_class_description_get.h
 src/experimental/immcpp/api/include/om_handle.h
 src/experimental/immcpp/api/include/om_search_handle.h
 src/experimental/immcpp/api/include/om_search_next.h
 src/experimental/immcpp/api/Makefile
 src/experimental/immcpp/api/Makefile.am
 src/experimental/immcpp/api/oi/Makefile
 src/experimental/immcpp/api/oi/oi_admin_operation_result.cc
 src/experimental/immcpp/api/oi/oi_handle.cc
 src/experimental/immcpp/api/oi/oi_implementer.cc
 src/experimental/immcpp/api/oi/oi_runtime_object_create.cc
 src/experimental/immcpp/api/oi/oi_runtime_object_delete.cc
 src/experimental/immcpp/api/oi/oi_runtime_object_update.cc
 src/experimental/immcpp/api/om/Makefile
 src/experimental/immcpp/api/om/om_accessor_get.cc
 src/experimental/immcpp/api/om/om_accessor_handle.cc
 src/experimental/immcpp/api/om/om_admin_operation.cc
 src/experimental/immcpp/api/om/om_admin_owner_clear.cc
 src/experimental/immcpp/api/om/om_admin_owner_handle.cc
 src/experimental/immcpp/api/om/om_admin_owner_release.cc
 src/experimental/immcpp/api/om/om_admin_owner_set.cc
 src/experimental/immcpp/api/om/om_ccb_handle.cc
 src/experimental/immcpp/api/om/om_ccb_object_create.cc
 src/experimental/immcpp/api/om/om_ccb_object_delete.cc
 src/experimental/immcpp/api/om/om_ccb_object_modify.cc
 src/experimental/immcpp/api/om/om_class_create.cc
 src/experimental/immcpp/api/om/om_class_delete.cc
 src/experimental/immcpp/api/om/om_class_description_get.cc
 src/experimental/immcpp/api/om/om_handle.cc
 src/experimental/immcpp/api/om/om_search_handle.cc
 src/experimental/immcpp/api/om/om_search_next.cc
 src/experimental/immcpp/api/README
 src/experimental/immcpp/api/README-USE-CASES
 src/experimental/immcpp/api/tests/common.h
 src/experimental/immcpp/api/tests/immattribute_test.cc
 src/experimental/immcpp/api/tests/Makefile
 src/experimental/immcpp/api/tests/oiimplementer_test.cc
 src/experimental/immcpp/api/tests/oiruntimeobjectcreate_test.cc
 src/experimental/immcpp/api/tests/oiruntimeobjectupdate_test.cc
 src/experimental/immcpp/api/tests/omaccessorget_test.cc
 src/experimental/immcpp/api/tests/omclasscreate_test.cc
 src/experimental/immcpp/api/tests/omclassmanagement_test.cc
 src/experimental/immcpp/api/tests/omhandles_test.cc
 src/experimental/immcpp/api/tests/omsearchcriteria_test.cc
 src/experimental/immcpp/api/tests/omsearchnext_test.cc


Complete diffstat:
------------------
 src/experimental/Makefile.am                       |    2 +
 src/experimental/immcpp/api/Makefile               |   23 +
 src/experimental/immcpp/api/Makefile.am            |  198 ++++
 src/experimental/immcpp/api/README                 |  382 ++++++
 src/experimental/immcpp/api/README-USE-CASES       |  340 ++++++
 src/experimental/immcpp/api/common/Makefile        |   19 +
 src/experimental/immcpp/api/common/common.cc       |   61 +
 src/experimental/immcpp/api/common/common.h        |  154 +++
 .../immcpp/api/common/imm_attribute.cc             |  112 ++
 src/experimental/immcpp/api/common/imm_attribute.h |  204 ++++
 src/experimental/immcpp/api/demo/Makefile          |   22 +
 src/experimental/immcpp/api/demo/common.h          |   67 ++
 .../immcpp/api/demo/immcpp_test_classes.xml        |  298 +++++
 src/experimental/immcpp/api/demo/immcppcfg.cc      | 1238 ++++++++++++++++++++
 src/experimental/immcpp/api/demo/immcppcfg.h       |  172 +++
 src/experimental/immcpp/api/demo/immcpptest.cc     |  119 ++
 .../immcpp/api/demo/oiruntimeobject.cc             |  233 ++++
 src/experimental/immcpp/api/demo/oiruntimeobject.h |   22 +
 src/experimental/immcpp/api/demo/omaccessorget.cc  |  289 +++++
 src/experimental/immcpp/api/demo/omaccessorget.h   |   23 +
 src/experimental/immcpp/api/demo/omclasscreate.cc  |  119 ++
 src/experimental/immcpp/api/demo/omclasscreate.h   |   23 +
 .../immcpp/api/demo/omclassmanagement.cc           |  169 +++
 .../immcpp/api/demo/omclassmanagement.h            |   23 +
 .../immcpp/api/demo/omconfigurationchanges.cc      |  277 +++++
 .../immcpp/api/demo/omconfigurationchanges.h       |   22 +
 src/experimental/immcpp/api/demo/omsearchnext.cc   |  292 +++++
 src/experimental/immcpp/api/demo/omsearchnext.h    |   23 +
 .../immcpp/api/include/oi_admin_operation_result.h |   60 +
 src/experimental/immcpp/api/include/oi_handle.h    |  100 ++
 .../immcpp/api/include/oi_implementer.h            |  113 ++
 .../immcpp/api/include/oi_runtime_object_create.h  |  126 ++
 .../immcpp/api/include/oi_runtime_object_delete.h  |   58 +
 .../immcpp/api/include/oi_runtime_object_update.h  |  180 +++
 .../immcpp/api/include/om_accessor_get.h           |  119 ++
 .../immcpp/api/include/om_accessor_handle.h        |   79 ++
 .../immcpp/api/include/om_admin_operation.h        |  133 +++
 .../immcpp/api/include/om_admin_owner_clear.h      |   71 ++
 .../immcpp/api/include/om_admin_owner_handle.h     |   94 ++
 .../immcpp/api/include/om_admin_owner_release.h    |   67 ++
 .../immcpp/api/include/om_admin_owner_set.h        |   80 ++
 .../immcpp/api/include/om_ccb_handle.h             |   82 ++
 .../immcpp/api/include/om_ccb_object_create.h      |  162 +++
 .../immcpp/api/include/om_ccb_object_delete.h      |   74 ++
 .../immcpp/api/include/om_ccb_object_modify.h      |  187 +++
 .../immcpp/api/include/om_class_create.h           |  183 +++
 .../immcpp/api/include/om_class_delete.h           |   58 +
 .../immcpp/api/include/om_class_description_get.h  |   94 ++
 src/experimental/immcpp/api/include/om_handle.h    |   99 ++
 .../immcpp/api/include/om_search_handle.h          |  271 +++++
 .../immcpp/api/include/om_search_next.h            |  102 ++
 src/experimental/immcpp/api/oi/Makefile            |   22 +
 .../immcpp/api/oi/oi_admin_operation_result.cc     |   86 ++
 src/experimental/immcpp/api/oi/oi_handle.cc        |  140 +++
 src/experimental/immcpp/api/oi/oi_implementer.cc   |  225 ++++
 .../immcpp/api/oi/oi_runtime_object_create.cc      |   83 ++
 .../immcpp/api/oi/oi_runtime_object_delete.cc      |   56 +
 .../immcpp/api/oi/oi_runtime_object_update.cc      |   83 ++
 src/experimental/immcpp/api/om/Makefile            |   22 +
 src/experimental/immcpp/api/om/om_accessor_get.cc  |  227 ++++
 .../immcpp/api/om/om_accessor_handle.cc            |   81 ++
 .../immcpp/api/om/om_admin_operation.cc            |  191 +++
 .../immcpp/api/om/om_admin_owner_clear.cc          |   80 ++
 .../immcpp/api/om/om_admin_owner_handle.cc         |   88 ++
 .../immcpp/api/om/om_admin_owner_release.cc        |   80 ++
 .../immcpp/api/om/om_admin_owner_set.cc            |  128 ++
 src/experimental/immcpp/api/om/om_ccb_handle.cc    |  104 ++
 .../immcpp/api/om/om_ccb_object_create.cc          |   84 ++
 .../immcpp/api/om/om_ccb_object_delete.cc          |   60 +
 .../immcpp/api/om/om_ccb_object_modify.cc          |   87 ++
 src/experimental/immcpp/api/om/om_class_create.cc  |   85 ++
 src/experimental/immcpp/api/om/om_class_delete.cc  |   47 +
 .../immcpp/api/om/om_class_description_get.cc      |  167 +++
 src/experimental/immcpp/api/om/om_handle.cc        |  151 +++
 src/experimental/immcpp/api/om/om_search_handle.cc |  139 +++
 src/experimental/immcpp/api/om/om_search_next.cc   |  211 ++++
 src/experimental/immcpp/api/tests/Makefile         |   19 +
 src/experimental/immcpp/api/tests/common.h         |   49 +
 .../immcpp/api/tests/immattribute_test.cc          |  239 ++++
 .../immcpp/api/tests/oiimplementer_test.cc         |   50 +
 .../immcpp/api/tests/oiruntimeobjectcreate_test.cc |  241 ++++
 .../immcpp/api/tests/oiruntimeobjectupdate_test.cc |  240 ++++
 .../immcpp/api/tests/omaccessorget_test.cc         |  328 ++++++
 .../immcpp/api/tests/omclasscreate_test.cc         |  232 ++++
 .../immcpp/api/tests/omclassmanagement_test.cc     |  228 ++++
 .../immcpp/api/tests/omhandles_test.cc             |  148 +++
 .../immcpp/api/tests/omsearchcriteria_test.cc      |  144 +++
 .../immcpp/api/tests/omsearchnext_test.cc          |  361 ++++++
 88 files changed, 12524 insertions(+)


Testing Commands:
-----------------
Build with flag --enable-experimental. `make check` to run unitest
and refer to README file to run demo apps.


Testing, Expected Results:
--------------------------
All unittest PASS


Conditions of Submission:
-------------------------
Get acks from maintainers


Arch      Built     Started    Linux distro
-------------------------------------------
mips        n          n
mips64      n          n
x86         n          n
x86_64      n          n
powerpc     n          n
powerpc64   n          n


Reviewer Checklist:
-------------------
[Submitters: make sure that your review doesn't trigger any checkmarks!]


Your checkin has not passed review because (see checked entries):

___ Your RR template is generally incomplete; it has too many blank entries
    that need proper data filled in.

___ You have failed to nominate the proper persons for review and push.

___ Your patches do not have proper short+long header

___ You have grammar/spelling in your header that is unacceptable.

___ You have exceeded a sensible line length in your headers/comments/text.

___ You have failed to put in a proper Trac Ticket # into your commits.

___ You have incorrectly put/left internal data in your comments/files
    (i.e. internal bug tracking tool IDs, product names etc)

___ You have not given any evidence of testing beyond basic build tests.
    Demonstrate some level of runtime or other sanity testing.

___ You have ^M present in some of your files. These have to be removed.

___ You have needlessly changed whitespace or added whitespace crimes
    like trailing spaces, or spaces before tabs.

___ You have mixed real technical changes with whitespace and other
    cosmetic code cleanup changes. These have to be separate commits.

___ You need to refactor your submission into logical chunks; there is
    too much content into a single commit.

___ You have extraneous garbage in your review (merge commits etc)

___ You have giant attachments which should never have been sent;
    Instead you should place your content in a public tree to be pulled.

___ You have too many commits attached to an e-mail; resend as threaded
    commits, or place in a public tree for a pull.

___ You have resent this content multiple times without a clear indication
    of what has changed between each re-send.

___ You have failed to adequately and individually address all of the
    comments and change requests that were proposed in the initial review.

___ You have a misconfigured ~/.gitconfig file (i.e. user.name, user.email etc)

___ Your computer have a badly configured date and time; confusing the
    the threaded patch review.

___ Your changes affect IPC mechanism, and you don't present any results
    for in-service upgradability test.

___ Your changes affect user manual and documentation, your patch series
    do not contain the patch that updates the Doxygen manual.


------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
Opensaf-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/opensaf-devel

Reply via email to