From: <av...@us...> - 2012-03-12 21:25:17
|
Revision: 7401 http://openhpi.svn.sourceforge.net/openhpi/?rev=7401&view=rev Author: avpak Date: 2012-03-12 21:25:11 +0000 (Mon, 12 Mar 2012) Log Message: ----------- Implemented saHpiDimiTestStart for Python baselib Modified Paths: -------------- openhpi/trunk/baselibs/python/README openhpi/trunk/baselibs/python/openhpi_baselib/Hpi.py Modified: openhpi/trunk/baselibs/python/README =================================================================== --- openhpi/trunk/baselibs/python/README 2012-03-12 20:59:15 UTC (rev 7400) +++ openhpi/trunk/baselibs/python/README 2012-03-12 21:25:11 UTC (rev 7401) @@ -114,7 +114,6 @@ ================================================================================ Current Limitations: -- saHpiDimiTestStart is not supported - Only oHpiVersionGet() and oHpiDomainAdd() OpenHPI API are supported - openhpiclient.conf is not supported @@ -123,7 +122,6 @@ - Implemented openhpiclient.conf support - Implement the rest of OpenHPI API -- Implement saHpiDimiTestStart - Domain ID translation for SAF HPI API - Entity root translation for SAF HPI API - XTCA entity types in HpiUtils Modified: openhpi/trunk/baselibs/python/openhpi_baselib/Hpi.py =================================================================== --- openhpi/trunk/baselibs/python/openhpi_baselib/Hpi.py 2012-03-12 20:59:15 UTC (rev 7400) +++ openhpi/trunk/baselibs/python/openhpi_baselib/Hpi.py 2012-03-12 21:25:11 UTC (rev 7401) @@ -86,6 +86,43 @@ NumberOfParams, ParamsList ): - # TODO - return SA_ERR_HPI_UNSUPPORTED_API + if NumberOfParams != 0: + if ParamsList is None: + return SA_ERR_HPI_INVALID_PARAMS + if not isinstance( ParamsList, list ): + return SA_ERR_HPI_INVALID_PARAMS + if NumberOfParams > len( ParamsList ): + return SA_ERR_HPI_INVALID_PARAMS + for p in ParamsList: + rc = HpiUtil.checkSaHpiDimiTestVariableParamsT( p ) + if not rc: + return SA_ERR_HPI_INVALID_PARAMS + s = HpiCore.getSession( SessionId ) + if s is None: + return SA_ERR_HPI_INVALID_SESSION + m = s.getMarshal() + if m is None: + return SA_ERR_HPI_NO_RESPONSE + + m.marshalSaHpiSessionIdT( s.getRemoteSid() ) + m.marshalSaHpiResourceIdT( ResourceId ) + m.marshalSaHpiDimiNumT( DimiNum ) + m.marshalSaHpiDimiTestNumT( TestNum ) + m.marshalSaHpiUint8T( NumberOfParams ) + if ParamsList is not None: + for p in ParamsList: + m.marshalSaHpiDimiTestVariableParamsT( p ) + rc = m.interchange( OhpiDataTypes.RPC_SAHPI_DIMI_TEST_START ) + if not rc: + m.close() + return SA_ERR_HPI_NO_RESPONSE + rv = m.demarshalSaErrorT() + # No output arguments + + s.putMarshal( m ) + + if rv != SA_OK: + return rv + return SA_OK + This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |