You can subscribe to this list here.
2005 |
Jan
|
Feb
(1) |
Mar
(45) |
Apr
(150) |
May
(145) |
Jun
(150) |
Jul
(79) |
Aug
(313) |
Sep
(160) |
Oct
(309) |
Nov
(115) |
Dec
(60) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2006 |
Jan
(160) |
Feb
(144) |
Mar
(127) |
Apr
(48) |
May
(102) |
Jun
(54) |
Jul
(245) |
Aug
(94) |
Sep
(152) |
Oct
(162) |
Nov
(166) |
Dec
(740) |
2007 |
Jan
(752) |
Feb
(437) |
Mar
(328) |
Apr
(373) |
May
(569) |
Jun
(399) |
Jul
(369) |
Aug
(627) |
Sep
(100) |
Oct
(306) |
Nov
(166) |
Dec
(282) |
2008 |
Jan
(68) |
Feb
(145) |
Mar
(180) |
Apr
(160) |
May
(277) |
Jun
(229) |
Jul
(1188) |
Aug
(51) |
Sep
(97) |
Oct
(99) |
Nov
(95) |
Dec
(170) |
2009 |
Jan
(39) |
Feb
(73) |
Mar
(120) |
Apr
(121) |
May
(104) |
Jun
(262) |
Jul
(57) |
Aug
(171) |
Sep
(131) |
Oct
(88) |
Nov
(64) |
Dec
(83) |
2010 |
Jan
(55) |
Feb
(67) |
Mar
(124) |
Apr
(64) |
May
(130) |
Jun
(75) |
Jul
(164) |
Aug
(64) |
Sep
(44) |
Oct
(17) |
Nov
(43) |
Dec
(31) |
2011 |
Jan
(21) |
Feb
(10) |
Mar
(43) |
Apr
(46) |
May
(52) |
Jun
(71) |
Jul
(7) |
Aug
(16) |
Sep
(51) |
Oct
(14) |
Nov
(33) |
Dec
(15) |
2012 |
Jan
(12) |
Feb
(61) |
Mar
(129) |
Apr
(76) |
May
(70) |
Jun
(52) |
Jul
(29) |
Aug
(41) |
Sep
(32) |
Oct
(23) |
Nov
(38) |
Dec
(26) |
2013 |
Jan
(35) |
Feb
(37) |
Mar
(51) |
Apr
(15) |
May
(52) |
Jun
(15) |
Jul
(23) |
Aug
(21) |
Sep
(46) |
Oct
(69) |
Nov
(57) |
Dec
(26) |
2014 |
Jan
(5) |
Feb
(13) |
Mar
(17) |
Apr
(1) |
May
(5) |
Jun
|
Jul
(2) |
Aug
(2) |
Sep
(1) |
Oct
(16) |
Nov
(8) |
Dec
(4) |
2015 |
Jan
|
Feb
|
Mar
|
Apr
(1) |
May
(1) |
Jun
(4) |
Jul
|
Aug
(2) |
Sep
|
Oct
|
Nov
|
Dec
|
2016 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
(1) |
Nov
|
Dec
|
From: Chris B. <buc...@us...> - 2013-10-14 22:32:45
|
This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "sfcc- Small Footprint CIM Client". The branch, master has been updated via 09b58901a143fe6ed2f6ea224e54ec0330c5fd12 (commit) from dfc9958e9e55c34db09b7aa6259cfec668c3b749 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 09b58901a143fe6ed2f6ea224e54ec0330c5fd12 Author: buccella <buc...@li...> Date: Mon Oct 14 18:32:35 2013 -0400 NEWS for 2.2.6 ----------------------------------------------------------------------- Summary of changes: NEWS | 9 ++++++++- 1 files changed, 8 insertions(+), 1 deletions(-) diff --git a/NEWS b/NEWS index e833da5..1593173 100644 --- a/NEWS +++ b/NEWS @@ -4,10 +4,17 @@ Changes in 2.2.6 ================ New Features: -- 3529678 getClass does not expose method information +- 3529678 getClass does not expose method information Bugs: +- Now compiles under OS X. +- Remove Large Volume Support from SFCC +- SFCC should dlopen the versioned .so +- sfcc cannot reconnect with sfcb if sfcb restarts +- updated tests to match [bugs:#2663] + + Changes in 2.2.5 ================ hooks/post-receive -- sfcc- Small Footprint CIM Client |
From: Chris B. <buc...@us...> - 2013-10-14 22:29:17
|
This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "sfcc- Small Footprint CIM Client". The tag, SFCC_2_2_6 has been created at 274829aaad3deaeabe712ae7cf7ef6c877023e0b (commit) - Log ----------------------------------------------------------------- commit 274829aaad3deaeabe712ae7cf7ef6c877023e0b Author: buccella <buc...@li...> Date: Wed Sep 18 12:49:10 2013 -0400 updated tests to match [bugs:#2663] ----------------------------------------------------------------------- hooks/post-receive -- sfcc- Small Footprint CIM Client |
From: Chris B. <buc...@us...> - 2013-10-14 22:29:07
|
This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "sfcc- Small Footprint CIM Client". The branch, master has been updated via dfc9958e9e55c34db09b7aa6259cfec668c3b749 (commit) from 274829aaad3deaeabe712ae7cf7ef6c877023e0b (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit dfc9958e9e55c34db09b7aa6259cfec668c3b749 Author: buccella <buc...@li...> Date: Mon Oct 14 18:28:58 2013 -0400 version number to 2.2.6 ----------------------------------------------------------------------- Summary of changes: configure.ac | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/configure.ac b/configure.ac index 0d5053d..f050b6b 100644 --- a/configure.ac +++ b/configure.ac @@ -2,7 +2,7 @@ # Process this file with autoconf to produce a configure script. AC_PREREQ(2.59) -AC_INIT(sblim-sfcc, 2.2.6preview, sbl...@li...) +AC_INIT(sblim-sfcc, 2.2.6, sbl...@li...) AC_CONFIG_SRCDIR([cimc/cimcclient.c]) AC_CONFIG_HEADER([config.h]) hooks/post-receive -- sfcc- Small Footprint CIM Client |
From: Chris B. <buc...@us...> - 2013-10-14 21:40:24
|
This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "sfcb - Small Footprint CIM Broker". The branch, master has been updated via f769c13d5e6a1e8db3b4766fa6916bcdd87c607d (commit) via e4b4cc007d5ab3f027526291797d53069a27597a (commit) via ee61dc04fb716bd63b34fbc57c8fed913e08b273 (commit) from 9d9f9a4d1a9d57f3f6168d460fa8a518952715f9 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit f769c13d5e6a1e8db3b4766fa6916bcdd87c607d Author: buccella <buc...@li...> Date: Mon Oct 14 17:40:07 2013 -0400 [sfcb-tix:#82] ClientEnvFT for SfcbLocal doesn't match SFCC commit e4b4cc007d5ab3f027526291797d53069a27597a Merge: ee61dc0 9d9f9a4 Author: buccella <buc...@li...> Date: Mon Oct 14 17:38:54 2013 -0400 Merge branch 'master' of ssh://git.code.sf.net/p/sblim/sfcb commit ee61dc04fb716bd63b34fbc57c8fed913e08b273 Author: buccella <buc...@li...> Date: Fri Oct 4 14:47:37 2013 -0400 fixing dumb whitespace ----------------------------------------------------------------------- Summary of changes: cimcClientSfcbLocal.c | 9 ++ cimcClientSfcbLocal.h | 323 +------------------------------------------------ 2 files changed, 12 insertions(+), 320 deletions(-) diff --git a/cimcClientSfcbLocal.c b/cimcClientSfcbLocal.c index 806306c..66f195b 100644 --- a/cimcClientSfcbLocal.c +++ b/cimcClientSfcbLocal.c @@ -2089,6 +2089,14 @@ void _Cleanup_SfcbLocal_Env(void) _SFCB_TRACE_STOP(); } +void * +newIndicationListener(ClientEnv *ce, int sslMode, int *portNumber, char **socketName, + void (*fp) (CMPIInstance *indInstance), CMPIStatus* rc) +{ + fprintf(stderr, "*** newIndicationListener not supported for SfcbLocal\n"); + return NULL; +} + /* called by SFCC's NewCIMCEnv() */ ClientEnv * _Create_SfcbLocal_Env(char __attribute__ ((unused)) *id, unsigned int options, @@ -2108,6 +2116,7 @@ _Create_SfcbLocal_Env(char __attribute__ ((unused)) *id, unsigned int options, newDateTime, newDateTimeFromBinary, newDateTimeFromChars, + newIndicationListener, }; // localClientMode=1; diff --git a/cimcClientSfcbLocal.h b/cimcClientSfcbLocal.h index 0547b91..6886b63 100644 --- a/cimcClientSfcbLocal.h +++ b/cimcClientSfcbLocal.h @@ -83,305 +83,65 @@ extern "C" { (Client * cl); Client *(*clone) (Client * cl, CMPIStatus *st); CMPIConstClass *(*getClass) - - - - - - - - - - - - - - - - (Client * cl, CMPIObjectPath * op, CMPIFlags flags, char **properties, CMPIStatus *rc); CMPIEnumeration *(*enumClassNames) - - - - - - - - - - - - - - - - (Client * cl, CMPIObjectPath * op, CMPIFlags flags, CMPIStatus *rc); CMPIEnumeration *(*enumClasses) - - - - - - - - - - - - - - - - (Client * cl, CMPIObjectPath * op, CMPIFlags flags, CMPIStatus *rc); CMPIInstance *(*getInstance) - - - - - - - - - - - - - - - - (Client * cl, CMPIObjectPath * op, CMPIFlags flags, char **properties, CMPIStatus *rc); CMPIObjectPath *(*createInstance) - - - - - - - - - - - - - - - - (Client * cl, CMPIObjectPath * op, CMPIInstance *inst, CMPIStatus *rc); CMPIStatus (*setInstance) - - - - - - - - - - - - - - - - (Client * cl, CMPIObjectPath * op, CMPIInstance *inst, CMPIFlags flags, char **properties); CMPIStatus (*deleteInstance) (Client * cl, CMPIObjectPath * op); CMPIEnumeration *(*execQuery) - - - - - - - - - - - - - - - - (Client * cl, CMPIObjectPath * op, const char *query, const char *lang, CMPIStatus *rc); CMPIEnumeration *(*enumInstanceNames) (Client * cl, CMPIObjectPath * op, CMPIStatus *rc); CMPIEnumeration *(*enumInstances) - - - - - - - - - - - - - - - - (Client * cl, CMPIObjectPath * op, CMPIFlags flags, char **properties, CMPIStatus *rc); CMPIEnumeration *(*associators) - - - - - - - - - - - - - - - - (Client * cl, CMPIObjectPath * op, const char *assocClass, const char *resultClass, const char *role, const char *resultRole, CMPIFlags flags, char **properties, CMPIStatus *rc); CMPIEnumeration *(*associatorNames) - - - - - - - - - - - - - - - - (Client * cl, CMPIObjectPath * op, const char *assocClass, const char *resultClass, const char *role, const char *resultRole, CMPIStatus *rc); CMPIEnumeration *(*references) - - - - - - - - - - - - - - - - (Client * cl, CMPIObjectPath * op, const char *resultClass, const char *role, CMPIFlags flags, char **properties, CMPIStatus *rc); CMPIEnumeration *(*referenceNames) - - - - - - - - - - - - - - - - (Client * cl, CMPIObjectPath * op, const char *resultClass, const char *role, CMPIStatus *rc); CMPIData (*invokeMethod) - - - - - - - - - - - - - - - - (Client * cl, CMPIObjectPath * op, const char *method, CMPIArgs * in, CMPIArgs * out, CMPIStatus *rc); CMPIStatus (*setProperty) - - - - - - - - - - - - - - - - (Client * cl, CMPIObjectPath * op, const char *name, CMPIValue * value, CMPIType type); CMPIData (*getProperty) - - - - - - - - - - - - - - - - (Client * cl, CMPIObjectPath * op, const char *name, CMPIStatus *rc); } ClientFT; @@ -390,111 +150,34 @@ extern "C" { char *env; void *(*release) (ClientEnv *ce); Client *(*connect) - - - - - - - - - - - - - - - - (ClientEnv *ce, const char *hn, const char *scheme, const char *port, const char *user, const char *pwd, CMPIStatus *rc); Client *(*connect2) - - - - - - - - - - - - - - - - (ClientEnv *ce, const char *hn, const char *scheme, const char *port, const char *user, const char *pwd, int verifyMode, const char *trustStore, const char *certFile, const char *keyFile, CMPIStatus *rc); CMPIInstance *(*newInstance) - - - - - - - - (ClientEnv *ce, const CMPIObjectPath * op, CMPIStatus *rc); CMPIObjectPath *(*newObjectPath) - - - - - - - - - - - - - (ClientEnv *ce, const char *ns, const char *cn, CMPIStatus *rc); CMPIArgs *(*newArgs) (ClientEnv *ce, CMPIStatus *rc); CMPIString *(*newString) (ClientEnv *ce, const char *data, CMPIStatus *rc); CMPIArray *(*newArray) - - - - - - - - - - - (ClientEnv *ce, CMPICount max, CMPIType type, CMPIStatus *rc); CMPIDateTime *(*newDateTime) (ClientEnv *ce, CMPIStatus *rc); CMPIDateTime *(*newDateTimeFromBinary) - - - - - - - - - - - - - - - - (ClientEnv *ce, CMPIUint64 binTime, CMPIBoolean interval, CMPIStatus *rc); CMPIDateTime *(*newDateTimeFromChars) (ClientEnv *ce, const char *utcTime, CMPIStatus *rc); + void *(*newIndicationListener) + (ClientEnv *ce, int sslMode, int *portNumber, char **socketName, + void (*fp) (CMPIInstance *indInstance), CMPIStatus* rc); } ClientEnvFT; struct _ClientEnv { hooks/post-receive -- sfcb - Small Footprint CIM Broker |
From: Dave H. <hel...@us...> - 2013-10-13 20:41:14
|
This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "sfcb - Small Footprint CIM Broker". The branch, master_1.3 has been updated via 45a53e6e01366a1ce884b418f5c9b807bfcac8b6 (commit) from f2c44c35521a5c0900d0e38730711926ba17f62a (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 45a53e6e01366a1ce884b418f5c9b807bfcac8b6 Author: Dave Heller <hel...@us...> Date: Sun Oct 13 16:40:43 2013 -0400 [sfcb-tix:#81] Bad CMPIType assignment in cimXmlOps ----------------------------------------------------------------------- Summary of changes: cimXmlOps.y | 2 +- contributions.txt | 4 ++++ 2 files changed, 5 insertions(+), 1 deletions(-) diff --git a/cimXmlOps.y b/cimXmlOps.y index 6b6dfd1..53348ba 100644 --- a/cimXmlOps.y +++ b/cimXmlOps.y @@ -711,7 +711,7 @@ paramValue : XTOK_PARAMVALUE ZTOK_PARAMVALUE { $$.value.value=NULL; - $$.type=-1; + $$.type=0; } | XTOK_PARAMVALUE value ZTOK_PARAMVALUE { diff --git a/contributions.txt b/contributions.txt index 7f1cd1c..7b6241a 100644 --- a/contributions.txt +++ b/contributions.txt @@ -204,3 +204,7 @@ Zane Bitter, Red Hat -------------------- 03/28/2012 [ 3510458 ] Malformed XML response to GetProperty 03/28/2012 [ 3510456 ] GetProperty calls not passing keys to providers + +Ting Wang +---------- +10/13/2013 [sfcb-tix:#81] Bad CMPIType assignment in cimXmlOps hooks/post-receive -- sfcb - Small Footprint CIM Broker |
From: Dave H. <hel...@us...> - 2013-10-13 20:32:25
|
This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "sfcb - Small Footprint CIM Broker". The branch, master has been updated via 9d9f9a4d1a9d57f3f6168d460fa8a518952715f9 (commit) from 704948d9b97e7fde7cc9745cb0793c7ac8ca37a9 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 9d9f9a4d1a9d57f3f6168d460fa8a518952715f9 Author: Dave Heller <hel...@us...> Date: Sun Oct 13 16:31:58 2013 -0400 [sfcb-tix:#81] Bad CMPIType assignment in cimXmlOps ----------------------------------------------------------------------- Summary of changes: cimXmlOps.y | 2 +- contributions.txt | 4 ++++ 2 files changed, 5 insertions(+), 1 deletions(-) diff --git a/cimXmlOps.y b/cimXmlOps.y index 91ca175..fd62e4d 100644 --- a/cimXmlOps.y +++ b/cimXmlOps.y @@ -2530,7 +2530,7 @@ paramValue : XTOK_PARAMVALUE ZTOK_PARAMVALUE { $$.value.value=NULL; - $$.type=-1; + $$.type=0; } | XTOK_PARAMVALUE value ZTOK_PARAMVALUE { diff --git a/contributions.txt b/contributions.txt index e25e33d..bad54f6 100644 --- a/contributions.txt +++ b/contributions.txt @@ -237,3 +237,7 @@ Jan Safranek, Red Hat Rusty Peng ---------- 09/26/2013 [sfcb-tix:#80] sfcc cannot reconnect with sfcb + +Ting Wang +---------- +10/13/2013 [sfcb-tix:#81] Bad CMPIType assignment in cimXmlOps hooks/post-receive -- sfcb - Small Footprint CIM Broker |
Update of /cvsroot/sblim/jsr48-client/src/org/sblim/cimclient/internal/cimxml/sax/node In directory sfp-cvs-1.v30.ch3.sourceforge.com:/tmp/cvs-serv4211/src/org/sblim/cimclient/internal/cimxml/sax/node Modified Files: Tag: Experimental IMethodCallNode.java MethodCallNode.java AbstractMethodCallNode.java Removed Files: Tag: Experimental ResponseDestinationNode.java Log Message: 2690 Remove RESPONSEDESTINATION support Index: MethodCallNode.java =================================================================== RCS file: /cvsroot/sblim/jsr48-client/src/org/sblim/cimclient/internal/cimxml/sax/node/MethodCallNode.java,v retrieving revision 1.1.2.7 retrieving revision 1.1.2.8 diff -u -d -r1.1.2.7 -r1.1.2.8 --- MethodCallNode.java 2 Oct 2013 19:20:52 -0000 1.1.2.7 +++ MethodCallNode.java 11 Oct 2013 15:11:42 -0000 1.1.2.8 @@ -19,6 +19,7 @@ * 2003590 2008-06-30 blaschke-oss Change licensing from CPL to EPL * 2524131 2009-01-21 raman_arora Upgrade client to JDK 1.5 (Phase 1) * 2682 2013-10-02 blaschke-oss (I)MethodCallNode allows no LOCAL*PATH + * 2690 2013-10-11 blaschke-oss Remove RESPONSEDESTINATION support */ package org.sblim.cimclient.internal.cimxml.sax.node; @@ -26,8 +27,8 @@ import org.xml.sax.SAXException; /** - * ELEMENT METHODCALL ((LOCALINSTANCEPATH | LOCALCLASSPATH), PARAMVALUE*, - * RESPONSEDESTINATION?) ATTLIST METHODCALL %CIMName; + * ELEMENT METHODCALL ((LOCALINSTANCEPATH | LOCALCLASSPATH), PARAMVALUE*) + * ATTLIST METHODCALL %CIMName; */ public class MethodCallNode extends AbstractMethodCallNode { Index: IMethodCallNode.java =================================================================== RCS file: /cvsroot/sblim/jsr48-client/src/org/sblim/cimclient/internal/cimxml/sax/node/IMethodCallNode.java,v retrieving revision 1.1.2.8 retrieving revision 1.1.2.9 diff -u -d -r1.1.2.8 -r1.1.2.9 --- IMethodCallNode.java 2 Oct 2013 19:20:52 -0000 1.1.2.8 +++ IMethodCallNode.java 11 Oct 2013 15:11:42 -0000 1.1.2.9 @@ -19,6 +19,7 @@ * 2003590 2008-06-30 blaschke-oss Change licensing from CPL to EPL * 2524131 2009-01-21 raman_arora Upgrade client to JDK 1.5 (Phase 1) * 2682 2013-10-02 blaschke-oss (I)MethodCallNode allows no LOCAL*PATH + * 2690 2013-10-11 blaschke-oss Remove RESPONSEDESTINATION support */ package org.sblim.cimclient.internal.cimxml.sax.node; @@ -26,8 +27,8 @@ import org.xml.sax.SAXException; /** - * ELEMENT IMETHODCALL (LOCALNAMESPACEPATH, IPARAMVALUE*, RESPONSEDESTINATION?) - * ATTLIST IMETHODCALL %CIMName; + * ELEMENT IMETHODCALL (LOCALNAMESPACEPATH, IPARAMVALUE*) ATTLIST IMETHODCALL + * %CIMName; */ public class IMethodCallNode extends AbstractMethodCallNode { Index: AbstractMethodCallNode.java =================================================================== RCS file: /cvsroot/sblim/jsr48-client/src/org/sblim/cimclient/internal/cimxml/sax/node/AbstractMethodCallNode.java,v retrieving revision 1.1.2.11 retrieving revision 1.1.2.12 diff -u -d -r1.1.2.11 -r1.1.2.12 --- AbstractMethodCallNode.java 2 Oct 2013 19:20:52 -0000 1.1.2.11 +++ AbstractMethodCallNode.java 11 Oct 2013 15:11:42 -0000 1.1.2.12 @@ -22,6 +22,7 @@ * 2797550 2009-06-01 raman_arora JSR48 compliance - add Java Generics * 3511454 2012-03-27 blaschke-oss SAX nodes not reinitialized properly * 2682 2013-10-02 blaschke-oss (I)MethodCallNode allows no LOCAL*PATH + * 2690 2013-10-11 blaschke-oss Remove RESPONSEDESTINATION support */ package org.sblim.cimclient.internal.cimxml.sax.node; @@ -38,11 +39,11 @@ /** * <pre> - * ELEMENT IMETHODCALL (LOCALNAMESPACEPATH, IPARAMVALUE*, RESPONSEDESTINATION?) + * ELEMENT IMETHODCALL (LOCALNAMESPACEPATH, IPARAMVALUE*) * ATTLIST IMETHODCALL * %CIMName; * - * ELEMENT METHODCALL ((LOCALINSTANCEPATH | LOCALCLASSPATH), PARAMVALUE*, RESPONSEDESTINATION?) + * ELEMENT METHODCALL ((LOCALINSTANCEPATH | LOCALCLASSPATH), PARAMVALUE*) * ATTLIST METHODCALL * %CIMName; * </pre> @@ -53,8 +54,6 @@ protected CIMObjectPath iPath; - private ResponseDestinationNode iRespDstNode; - /** * (IPARAMVALUE | PARAMVALUE)* -> ArrayList of CIMArgument */ @@ -81,7 +80,6 @@ public void init(Attributes pAttribs, SAXSession pSession) throws SAXException { this.iName = getCIMName(pAttribs); this.iPath = null; - this.iRespDstNode = null; this.iArgAL = null; this.iArgA = null; } @@ -100,8 +98,6 @@ } else if (pChild instanceof AbstractParamValueNode) { if (this.iArgAL == null) this.iArgAL = new ArrayList<CIMArgument<?>>(); this.iArgAL.add(((AbstractParamValueNode) pChild).getCIMArgument()); - } else { - this.iRespDstNode = (ResponseDestinationNode) pChild; } } @@ -117,12 +113,7 @@ @Override public void testChild(String pNodeNameEnum) throws SAXException { - if (pNodeNameEnum == RESPONSEDESTINATION) { - if (this.iRespDstNode != null) throw new SAXException(getNodeName() - + " node can have only one " + RESPONSEDESTINATION + " child node!"); - } else { - testSpecChild(pNodeNameEnum); - } + testSpecChild(pNodeNameEnum); } /** --- ResponseDestinationNode.java DELETED --- |
From: Dave B. <bla...@us...> - 2013-10-11 14:28:24
|
Update of /cvsroot/sblim/jsr48-client/src/org/sblim/cimclient/internal/cimxml In directory sfp-cvs-1.v30.ch3.sourceforge.com:/tmp/cvs-serv815/src/org/sblim/cimclient/internal/cimxml Modified Files: Tag: Experimental CIMXMLParserImpl.java Log Message: 2680 IPARAMVALUE parsing broken on DOM/SAX #2 Index: CIMXMLParserImpl.java =================================================================== RCS file: /cvsroot/sblim/jsr48-client/src/org/sblim/cimclient/internal/cimxml/CIMXMLParserImpl.java,v retrieving revision 1.14.2.58 retrieving revision 1.14.2.59 diff -u -d -r1.14.2.58 -r1.14.2.59 --- CIMXMLParserImpl.java 10 Oct 2013 11:40:27 -0000 1.14.2.58 +++ CIMXMLParserImpl.java 11 Oct 2013 14:28:21 -0000 1.14.2.59 @@ -1430,7 +1430,7 @@ TypedValue tVal = parseVALUE(valueE); String valueStr = (String) tVal.getValue(); type = typeStr == null ? tVal.getType() : parseScalarTypeStr(typeStr); - value = createJavaObject(type.toString(), valueStr); + value = createJavaObject(type == null ? null : type.toString(), valueStr); } } if (type == null && (pMask & VALUEREF) > 0) { @@ -1452,7 +1452,8 @@ if (valStrA != null) { Object[] values = new Object[valStrA.length]; for (int i = 0; i < valStrA.length; i++) { - values[i] = createJavaObject(type.toString(), valStrA[i]); + values[i] = createJavaObject(type == null ? null : type.toString(), + valStrA[i]); } value = values; } @@ -2338,7 +2339,7 @@ return new CIMArgument<Object>(name, CIMDataType.OBJECT_T, inst); } - throw new CIMXMLParseException("IPARAMVALUE element missing required child element!"); + return new CIMArgument<Object>(name, CIMDataType.STRING_T, null); } /** |
From: Dave B. <bla...@us...> - 2013-10-11 10:34:23
|
Update of /cvsroot/sblim/jsr48-client In directory sfp-cvs-1.v30.ch3.sourceforge.com:/tmp/cvs-serv14811 Modified Files: NEWS Log Message: 2676 parseMULTI(EXP)REQ looking for wrong child elements Index: NEWS =================================================================== RCS file: /cvsroot/sblim/jsr48-client/NEWS,v retrieving revision 1.380 retrieving revision 1.381 diff -u -d -r1.380 -r1.381 --- NEWS 11 Oct 2013 10:28:14 -0000 1.380 +++ NEWS 11 Oct 2013 10:34:21 -0000 1.381 @@ -1,5 +1,6 @@ Changes in HEAD ================ + 2676 parseMULTI(EXP)REQ looking for wrong child elements 2675 CIMXMLParseException messages should contain element name 2674 Null pointer exception in CIMDateTime(String) 2673 NameSpaceNode does not need testCompletness() |
From: Dave B. <bla...@us...> - 2013-10-11 10:28:16
|
Update of /cvsroot/sblim/jsr48-client/src/org/sblim/cimclient/internal/cimxml In directory sfp-cvs-1.v30.ch3.sourceforge.com:/tmp/cvs-serv14358/src/org/sblim/cimclient/internal/cimxml Modified Files: CIMXMLParserImpl.java Log Message: 2675 CIMXMLParseException messages should contain element name Index: CIMXMLParserImpl.java =================================================================== RCS file: /cvsroot/sblim/jsr48-client/src/org/sblim/cimclient/internal/cimxml/CIMXMLParserImpl.java,v retrieving revision 1.57 retrieving revision 1.58 diff -u -d -r1.57 -r1.58 --- CIMXMLParserImpl.java 9 Oct 2013 18:04:10 -0000 1.57 +++ CIMXMLParserImpl.java 11 Oct 2013 10:28:14 -0000 1.58 @@ -64,6 +64,7 @@ * 2669 2013-09-24 blaschke-oss Potential null pointer exception in parseMESSAGE * 2670 2013-09-25 blaschke-oss NAME attribute not required by DOM parser * 2671 2013-09-25 blaschke-oss Potential null pointer exception in parseERROR + * 2675 2013-09-27 blaschke-oss CIMXMLParseException messages should contain element name */ package org.sblim.cimclient.internal.cimxml; @@ -154,12 +155,12 @@ // <!ATTLIST CIM %CIMVERSION;%DTDVERSION;> Attr cim_cimversionA = (Attr) searchAttribute(pCimE, "CIMVERSION"); if (cim_cimversionA == null) throw new CIMXMLParseException( - "CIMVERSION attribute not found!"); + "CIM element missing CIMVERSION attribute!"); String cimversion = cim_cimversionA.getNodeValue(); Attr cim_dtdversionA = (Attr) searchAttribute(pCimE, "DTDVERSION"); if (cim_dtdversionA == null) throw new CIMXMLParseException( - "DTDVERSION attribute not found!"); + "CIM element missing DTDVERSION attribute!"); String dtdversion = cim_dtdversionA.getNodeValue(); // MESSAGE @@ -171,9 +172,11 @@ return message; } - // TODO : DECLARATION + // DECLARATION + if (searchFirstNode(pCimE, "DECLARATION") != null) throw new CIMXMLParseException( + "DECLARATION element not supported!"); - throw new CIMXMLParseException(); + throw new CIMXMLParseException("CIM element missing required child element!"); } // //////////////////////////////////////////////////////////////////////////////////////// @@ -296,7 +299,7 @@ return op; } - throw new CIMXMLParseException(); + throw new CIMXMLParseException("VALUE.REFERENCE element missing required child element!"); } /** @@ -345,7 +348,7 @@ return obj; } - throw new CIMXMLParseException(); + throw new CIMXMLParseException("VALUE.OBJECT element missing required child element!"); } /** @@ -361,12 +364,14 @@ // INSTANCENAME Element instancenameE = (Element) searchFirstNode(pValueNamedInstanceE, "INSTANCENAME"); - if (instancenameE == null) { throw new CIMXMLParseException(); } + if (instancenameE == null) { throw new CIMXMLParseException( + "VALUE.NAMEDINSTANCE element missing INSTANCENAME child element!"); } CIMObjectPath op = parseINSTANCENAME(instancenameE); // INSTANCE Element instanceE = (Element) searchFirstNode(pValueNamedInstanceE, "INSTANCE"); - if (instanceE == null) { throw new CIMXMLParseException(); } + if (instanceE == null) { throw new CIMXMLParseException( + "VALUE.NAMEDINSTANCE element missing INSTANCE child element!"); } CIMInstance inst = parseINSTANCE(instanceE, op); // BB mod return inst; } @@ -384,12 +389,14 @@ // INSTANCEPATH Element instancepathE = (Element) searchFirstNode(pValueNamedInstanceE, "INSTANCEPATH"); - if (instancepathE == null) { throw new CIMXMLParseException(); } + if (instancepathE == null) { throw new CIMXMLParseException( + "VALUE.INSTANCEWITHPATH element missing INSTANCEPATH child element!"); } CIMObjectPath op = parseINSTANCEPATH(instancepathE); // INSTANCE Element instanceE = (Element) searchFirstNode(pValueNamedInstanceE, "INSTANCE"); - if (instanceE == null) { throw new CIMXMLParseException(); } + if (instanceE == null) { throw new CIMXMLParseException( + "VALUE.INSTANCEWITHPATH element missing INSTANCE child element!"); } CIMInstance inst = parseINSTANCE(instanceE, op); // BB mod return inst; } @@ -419,12 +426,13 @@ // INSTANCE Element instanceE = (Element) searchFirstNode(pValueNamedObjectE, "INSTANCE"); - if (instanceE == null) { throw new CIMXMLParseException(); } + if (instanceE == null) { throw new CIMXMLParseException( + "VALUE.NAMEDOBJECT element missing INSTANCE child element!"); } CIMInstance inst = parseINSTANCE(instanceE, op); // BB mod return inst; } - throw new CIMXMLParseException(); + throw new CIMXMLParseException("VALUE.NAMEDOBJECT element missing required child element!"); } /** @@ -446,7 +454,8 @@ // CLASS Element classE = (Element) searchFirstNode(pValueObjectWithPathE, "CLASS"); - if (classE == null) { throw new CIMXMLParseException(); } + if (classE == null) { throw new CIMXMLParseException( + "VALUE.OBJECTWITHPATH element missing CLASS child element!"); } // TODO parse CLASS with ObjectPath CIMClass obj = parseCLASS(classE); return obj; @@ -459,12 +468,14 @@ // INSTANCE Element instanceE = (Element) searchFirstNode(pValueObjectWithPathE, "INSTANCE"); - if (instanceE == null) { throw new CIMXMLParseException(); } + if (instanceE == null) { throw new CIMXMLParseException( + "VALUE.OBJECTWITHPATH element missing INSTANCE child element!"); } CIMInstance inst = parseINSTANCE(instanceE, op); // BB mod return inst; } - throw new CIMXMLParseException(); + throw new CIMXMLParseException( + "VALUE.OBJECTWITHPATH element missing required child element!"); } /** @@ -487,7 +498,8 @@ // CLASS Element classE = (Element) searchFirstNode(pValueObjectWithLocalPathE, "CLASS"); - if (classE == null) { throw new CIMXMLParseException(); } + if (classE == null) { throw new CIMXMLParseException( + "VALUE.OBJECTWITHLOCALPATH element missing CLASS child element!"); } // TODO parse class with path CIMClass obj = parseCLASS(classE); return obj; @@ -501,12 +513,14 @@ // INSTANCE Element instanceE = (Element) searchFirstNode(pValueObjectWithLocalPathE, "INSTANCE"); - if (instanceE == null) { throw new CIMXMLParseException(); } + if (instanceE == null) { throw new CIMXMLParseException( + "VALUE.OBJECTWITHLOCALPATH element missing INSTANCE child element!"); } CIMInstance inst = parseINSTANCE(instanceE, op); // BB mod return inst; } - throw new CIMXMLParseException(); + throw new CIMXMLParseException( + "VALUE.OBJECTWITHLOCALPATH element missing required child element!"); } // //////////////////////////////////////////////////////////////////////////////////////// @@ -525,12 +539,14 @@ // <!ELEMENT NAMESPACEPATH (HOST,LOCALNAMESPACEPATH)> // HOST Element hostE = (Element) searchFirstNode(pNameSpacePathE, "HOST"); - if (hostE == null) { throw new CIMXMLParseException(); } + if (hostE == null) { throw new CIMXMLParseException( + "NAMESPACEPATH element missing HOST child element!"); } XMLHostStr xmlHostStr = new XMLHostStr(parseHOST(hostE)); // LOCALNAMESPACE Element localnamespacepathE = (Element) searchFirstNode(pNameSpacePathE, "LOCALNAMESPACEPATH"); - if (localnamespacepathE == null) { throw new CIMXMLParseException(); } + if (localnamespacepathE == null) { throw new CIMXMLParseException( + "NAMESPACEPATH element missing LOCALNAMESPACEPATH child element!"); } String nameSpace = parseLOCALNAMESPACEPATH(localnamespacepathE); /* * CIMObjectPath( String scheme, String host, String port, String @@ -554,7 +570,7 @@ Element[] nameSpaceElementA = searchNodes(pLocalNameSpaceE, "NAMESPACE"); if (nameSpaceElementA == null) { if (cLocalPathBuilder == null) throw new CIMXMLParseException( - "NAMESPACE child element is mandatory for LOCALNAMESPACEPATH element!"); + "LOCALNAMESPACEPATH element missing NAMESPACE child element!"); return cLocalPathBuilder.getBasePath().getNamespace(); } StringBuffer sb = new StringBuffer(); @@ -593,7 +609,8 @@ // <!ATTLIST NAMESPACE %NAME;> Attr namespace_nameA = (Attr) searchAttribute(pNameSpaceE, "NAME"); - if (namespace_nameA == null) throw new CIMXMLParseException("NAME attribute not found!"); + if (namespace_nameA == null) throw new CIMXMLParseException( + "NAMESPACE element missing NAME attribute!"); String n = namespace_nameA.getValue(); return n; } @@ -610,11 +627,13 @@ // NAMESPACEPATH Element namespacepathE = (Element) searchFirstNode(pClassPathE, "NAMESPACEPATH"); - if (namespacepathE == null) { throw new CIMXMLParseException(); } + if (namespacepathE == null) { throw new CIMXMLParseException( + "CLASSPATH element missing NAMESPACEPATH child element!"); } CIMObjectPath nsPath = parseNAMESPACEPATH(namespacepathE); // CLASSNAME Element classnameE = (Element) searchFirstNode(pClassPathE, "CLASSNAME"); - if (classnameE == null) { throw new CIMXMLParseException(); } + if (classnameE == null) { throw new CIMXMLParseException( + "CLASSPATH element missing CLASSNAME child element!"); } String className = parseClassName(classnameE); /* * CIMObjectPath( String scheme, String host, String port, String @@ -637,12 +656,14 @@ // NAMESPACEPATH Element localnamespacepathE = (Element) searchFirstNode(pClassPathE, "LOCALNAMESPACEPATH"); - if (localnamespacepathE == null) { throw new CIMXMLParseException(); } + if (localnamespacepathE == null) { throw new CIMXMLParseException( + "LOCALCLASSPATH element missing LOCALNAMESPACEPATH child element!"); } String nameSpace = parseLOCALNAMESPACEPATH(localnamespacepathE); // CLASSNAME Element classnameE = (Element) searchFirstNode(pClassPathE, "CLASSNAME"); - if (classnameE == null) { throw new CIMXMLParseException(); } + if (classnameE == null) { throw new CIMXMLParseException( + "LOCALCLASSPATH element missing CLASSNAME child element!"); } CIMObjectPath op = parseCLASSNAME(classnameE); return cLocalPathBuilder.build(op.getObjectName(), nameSpace); } @@ -658,7 +679,8 @@ // <!ELEMENT CLASSNAME EMPTY> // <!ATTLIST CLASSNAME %NAME;> Attr classname_nameA = (Attr) searchAttribute(pClassNameE, "NAME"); - if (classname_nameA == null) throw new CIMXMLParseException("NAME attribute not found!"); + if (classname_nameA == null) throw new CIMXMLParseException( + "CLASSNAME element missing NAME attribute!"); return classname_nameA.getNodeValue(); } @@ -686,11 +708,13 @@ // NAMESPACEPATH Element namespacepathE = (Element) searchFirstNode(pInstancePathE, "NAMESPACEPATH"); - if (namespacepathE == null) { throw new CIMXMLParseException(); } + if (namespacepathE == null) { throw new CIMXMLParseException( + "INSTANCEPATH element missing NAMESPACEPATH child element!"); } CIMObjectPath nsPath = parseNAMESPACEPATH(namespacepathE); // INSTANCENAME Element instancenameE = (Element) searchFirstNode(pInstancePathE, "INSTANCENAME"); - if (instancenameE == null) { throw new CIMXMLParseException(); } + if (instancenameE == null) { throw new CIMXMLParseException( + "INSTANCEPATH element missing INSTANCENAME child element!"); } CIMObjectPath op = parseINSTANCENAME(instancenameE); // ebak: change host and namespace return new CIMObjectPath(nsPath.getScheme(), nsPath.getHost(), nsPath.getPort(), nsPath @@ -711,12 +735,14 @@ // LOCALNAMESPACEPATH Element localnamespacepathE = (Element) searchFirstNode(pLocalInstancePathE, "LOCALNAMESPACEPATH"); - if (localnamespacepathE == null) { throw new CIMXMLParseException(); } + if (localnamespacepathE == null) { throw new CIMXMLParseException( + "LOCALINSTANCEPATH element missing LOCALNAMESPACEPATH child element!"); } String nameSpace = parseLOCALNAMESPACEPATH(localnamespacepathE); // INSTANCENAME Element instancenameE = (Element) searchFirstNode(pLocalInstancePathE, "INSTANCENAME"); - if (instancenameE == null) { throw new CIMXMLParseException(); } + if (instancenameE == null) { throw new CIMXMLParseException( + "LOCALINSTANCEPATH element missing INSTANCENAME child element!"); } CIMObjectPath op = parseINSTANCENAME(instancenameE); /* * CIMObjectPath(String objectName, String namespace, CIMProperty[] @@ -738,7 +764,7 @@ // <!ATTLIST INSTANCENAME %CLASSNAME;> Attr instance_classnameA = (Attr) searchAttribute(pInstanceNameE, "CLASSNAME"); if (instance_classnameA == null) throw new CIMXMLParseException( - "CLASSNAME attribute not found!"); + "INSTANCENAME element missing CLASSNAME attribute!"); String opClassName = instance_classnameA.getNodeValue(); // KEYBINDING @@ -779,7 +805,7 @@ return op; } - throw new CIMXMLParseException(); + throw new CIMXMLParseException("OBJECTPATH element missing required child element!"); } /** @@ -794,7 +820,8 @@ // <!ATTLIST KEYBINDING %NAME;> Attr keybinding_nameA = (Attr) searchAttribute(pKeyBindingE, "NAME"); - if (keybinding_nameA == null) throw new CIMXMLParseException("NAME attribute not found!"); + if (keybinding_nameA == null) throw new CIMXMLParseException( + "KEYBINDING element missing NAME attribute!"); String propName = keybinding_nameA.getValue(); // KEYVALUE @@ -813,7 +840,7 @@ op, true, false, null); } - throw new CIMXMLParseException(); + throw new CIMXMLParseException("KEYBINDING element missing required child element!"); } private static final TreeMap<String, CIMDataType> TYPESTR_MAP = new TreeMap<String, CIMDataType>( @@ -883,7 +910,7 @@ throws CIMXMLParseException { if (pTypeStr == null) return pArray ? CIMDataType.STRING_ARRAY_T : CIMDataType.STRING_T; CIMDataType type = TYPESTR_MAP.get(pTypeStr); - if (type == null) throw new CIMXMLParseException("Unknown type string:" + pTypeStr); + if (type == null) throw new CIMXMLParseException("Unknown TYPE string:" + pTypeStr); if (pArray) { if (type.getType() == CIMDataType.REFERENCE) return new CIMDataType(type .getRefClassName(), 0); @@ -944,7 +971,7 @@ public ValueTypeHandler(String pValueTypeStr, String pValueStr) throws CIMXMLParseException { if (pValueTypeStr == null) throw new CIMXMLParseException( - "KEYVALUE node must have a VALUETYPE attribute!"); + "KEYVALUE element missing VALUETYPE attribute!"); if (pValueTypeStr.equals("numeric")) { if (!setUInt64(pValueStr) && !setSInt64(pValueStr) && !setReal64(pValueStr)) throw new CIMXMLParseException( @@ -956,9 +983,9 @@ } } else if (pValueTypeStr.equals(MOF.DT_BOOL)) { if (!setBoolean(pValueStr)) throw new CIMXMLParseException( - "Unparsable \"boolean\" value: " + pValueStr + " !"); + "Unparseable \"boolean\" value: " + pValueStr + " !"); } else { - throw new CIMXMLParseException("KEYVALUE node's VALUETYPE attribute must be " + throw new CIMXMLParseException("KEYVALUE element's VALUETYPE attribute must be " + MOF.DT_STR + ", " + MOF.DT_BOOL + " or numeric! " + pValueStr + " is not allowed!"); } @@ -1071,7 +1098,8 @@ // <!ATTLIST CLASS %NAME;%SUPERCLASS;> Attr class_nameA = (Attr) searchAttribute(pClassE, "NAME"); - if (class_nameA == null) throw new CIMXMLParseException("NAME attribute not found!"); + if (class_nameA == null) throw new CIMXMLParseException( + "CLASS element missing NAME attribute!"); String name = class_nameA.getNodeValue(); // Attr superclass_nameA = (Attr)searchAttribute(classE, "SUPERCLASS"); @@ -1189,7 +1217,7 @@ // %Propagated;> String name = attribute(pMethodE, "NAME"); - if (name == null) throw new CIMXMLParseException("NAME attribute not found!"); + if (name == null) throw new CIMXMLParseException("METHOD element missing NAME attribute!"); EmbObjHandler embObjHandler = new EmbObjHandler(pMethodE); CIMDataType type = embObjHandler.getType(); if (type.isArray()) throw new CIMXMLParseException("Method's type cannot be Array!"); @@ -1214,7 +1242,8 @@ */ public static CIMParameter<Object> parsePARAMETER(Element pParamE) throws CIMXMLParseException { String name = attribute(pParamE, "NAME"); - if (name == null) throw new CIMXMLParseException("NAME attribute not found!"); + if (name == null) throw new CIMXMLParseException( + "PARAMETER element missing NAME attribute!"); EmbObjHandler iEmbObjHandler = new EmbObjHandler(pParamE); // CIMParameter(String name, CIMDataType type, CIMQualifier[] // qualifiers) @@ -1232,7 +1261,8 @@ public static CIMParameter<Object> parsePARAMETERREFERENCE(Element pParamE) throws CIMXMLParseException { String name = attribute(pParamE, "NAME"); - if (name == null) throw new CIMXMLParseException("NAME attribute not found!"); + if (name == null) throw new CIMXMLParseException( + "PARAMETER.REFERENCE element missing NAME attribute!"); String referenceClass = attribute(pParamE, "REFERENCECLASS"); CIMDataType type = new CIMDataType(referenceClass != null ? referenceClass : ""); // QUALIFIER @@ -1250,7 +1280,8 @@ public static CIMParameter<Object> parsePARAMETERARRAY(Element pParamE) throws CIMXMLParseException { String name = attribute(pParamE, "NAME"); - if (name == null) throw new CIMXMLParseException("NAME attribute not found!"); + if (name == null) throw new CIMXMLParseException( + "PARAMETER.ARRAY element missing NAME attribute!"); EmbObjHandler iEmbObjHandler = new EmbObjHandler(pParamE); return new CIMParameter<Object>(name, iEmbObjHandler.getArrayType(), iEmbObjHandler .getQualifiers()); @@ -1266,7 +1297,8 @@ public static CIMParameter<Object> parsePARAMETERREFARRAY(Element pParamE) throws CIMXMLParseException { String name = attribute(pParamE, "NAME"); - if (name == null) throw new CIMXMLParseException("NAME attribute not found!"); + if (name == null) throw new CIMXMLParseException( + "PARAMETER.REFARRAY element missing NAME attribute!"); String referenceClass = attribute(pParamE, "REFERENCECLASS"); @@ -1314,7 +1346,8 @@ // BB mod CIMInstance inst = new CIMInstance(); String className = attribute(pInstanceE, "CLASSNAME"); - if (className == null) throw new CIMXMLParseException("CLASSNAME attribute not found!"); + if (className == null) throw new CIMXMLParseException( + "INSTANCE element missing CLASSNAME attribute!"); // QUALIFIER // FIXME: in JSR48 CIMInstance doesn't have qualifiers // CIMQualifier[] qualis = parseQUALIFIERS(pInstanceE); @@ -1448,7 +1481,8 @@ // <!ATTLIST QUALIFIER %NAME;%TYPE;%PROPAGATED;%QUALIFIERFLAVOR;> String name = attribute(pQualifierE, "NAME"); - if (name == null) throw new CIMXMLParseException("NAME attribute not found!"); + if (name == null) throw new CIMXMLParseException( + "QUALIFIER element missing NAME attribute!"); boolean propagated = MOF.TRUE.equalsIgnoreCase(pQualifierE.getAttribute("PROPAGATED")); // FLAVORS int flavors = parseFLAVORS(pQualifierE); @@ -1480,7 +1514,8 @@ // %QualifierFlavor;> String name = attribute(pQualifierTypeE, "NAME"); - if (name == null) throw new CIMXMLParseException("NAME attribute not found!"); + if (name == null) throw new CIMXMLParseException( + "QUALIFIER.DECLARATION element missing NAME attribute!"); // SCOPES // ebak: there should be only 1 scope node @@ -1963,7 +1998,8 @@ // <!ATTLIST PROPERTY %NAME;%TYPE;%CLASSORIGIN;%PROPAGATED;> Attr property_nameA = (Attr) searchAttribute(pPropertyE, "NAME"); - if (property_nameA == null) throw new CIMXMLParseException("NAME attribute not found!"); + if (property_nameA == null) throw new CIMXMLParseException( + "PROPERTY element missing NAME attribute!"); String name = property_nameA.getNodeValue(); String classOrigin = pPropertyE.getAttribute("CLASSORIGIN"); @@ -2011,7 +2047,8 @@ // %NAME;%TYPE;%ARRAYSIZE;%CLASSORIGIN;%PROPAGATED;> String name = pPropArrayE.getAttribute("NAME"); - if (name == null) throw new CIMXMLParseException("NAME attribute not found!"); + if (name == null) throw new CIMXMLParseException( + "PROPERTY.ARRAY element missing NAME attribute!"); // String valueArraysizeStr = propertyarrayE.getAttribute("ARRAYSIZE"); @@ -2056,7 +2093,8 @@ // %NAME;%REFERENCECLASS;%CLASSORIGIN;%PROPAGATED;> String name = pPropRefE.getAttribute("NAME"); - if (name == null) throw new CIMXMLParseException("NAME attribute not found!"); + if (name == null) throw new CIMXMLParseException( + "PROPERTY.REFERENCE element missing NAME attribute!"); String classOrigin = pPropRefE.getAttribute("CLASSORIGIN"); if (classOrigin != null && classOrigin.length() == 0) classOrigin = null; @@ -2096,12 +2134,12 @@ // <!ATTLIST MESSAGE %ID;%PROTOCOLVERSION;> Attr idA = (Attr) searchAttribute(pMessageE, "ID"); - if (idA == null) throw new CIMXMLParseException("ID attribute not found!"); + if (idA == null) throw new CIMXMLParseException("MESSAGE element missing ID attribute!"); String id = idA.getNodeValue(); Attr protocolA = (Attr) searchAttribute(pMessageE, "PROTOCOLVERSION"); if (protocolA == null) throw new CIMXMLParseException( - "PROTOCOLVERSION attribute not found!"); + "MESSAGE element missing PROTOCOLVERSION attribute!"); // TODO if (pCimVersion.equals("2.0") && pDtdVersion.equals("2.0")) { @@ -2171,7 +2209,7 @@ request.setId(id); return request; } - throw new CIMXMLParseException(); + throw new CIMXMLParseException("MESSAGE element missing required child element!"); } // TODO, look for the specific error message in the spec throw new CIMXMLParseException("DTD not supported"); @@ -2190,7 +2228,8 @@ // (VALUE|VALUE.REFERENCE|VALUE.ARRAY|VALUE.REFARRAY)?>) // <!ATTLIST PARAMTYPE %NAME;%PARAMTYPE%> String name = attribute(pParamValueE, "NAME"); - if (name == null) throw new CIMXMLParseException("NAME attribute not found!"); + if (name == null) throw new CIMXMLParseException( + "PARAMVALUE element missing NAME attribute!"); // FIXME: ebak: The base implementation didn't contain VALUE.REFARRAY // handling. Why? // ebak: embedded object support, different parsing for VALUE and @@ -2200,7 +2239,7 @@ TypedValue typedValue = parseSingleValue(pParamValueE, VALUEREF); CIMDataType type = typedValue.getType(); Object value = typedValue.getValue(); - if (type == null) throw new CIMXMLParseException("Type is null!"); + if (type == null) throw new CIMXMLParseException("PARAMVALUE element type is null!"); return new CIMArgument<Object>(name, type, value); } EmbObjHandler embObjHandler = new EmbObjHandler(pParamValueE); @@ -2223,7 +2262,8 @@ // %CIMName;> String name = attribute(pParamValueE, "NAME"); - if (name == null) throw new CIMXMLParseException("NAME attribute not found!"); + if (name == null) throw new CIMXMLParseException( + "IPARAMVALUE element missing NAME attribute!"); // this can parse VALUE, VALUE.ARRAY and VALUE.REFERENCE TypedValue typedValue = parseSingleValue(pParamValueE, VALUE | VALUEA | VALUEREF); if (typedValue.getType() != null) { return new CIMArgument<Object>(name, typedValue @@ -2298,7 +2338,7 @@ Element imethodresponseE = (Element) searchFirstNode(pSimpleRspE, "IMETHODRESPONSE"); if (imethodresponseE != null) { return parseIMETHODRESPONSE(imethodresponseE); } - throw new CIMXMLParseException(); + throw new CIMXMLParseException("SIMPLERSP element missing required child element!"); } /** @@ -2323,7 +2363,7 @@ return multiRsp; } - throw new CIMXMLParseException("SIMPLRESP nodes aren't found!"); + throw new CIMXMLParseException("MULTIRSP element missing SIMPLERSP child element!"); } /** @@ -2344,7 +2384,7 @@ Element imethodcallE = (Element) searchFirstNode(pSimpleReqE, "IMETHODCALL"); if (imethodcallE != null) { return parseIMETHODCALL(imethodcallE); } - throw new CIMXMLParseException("METHODCALL or IMETHODCALL nodes aren't found!"); + throw new CIMXMLParseException("SIMPLEREQ element missing required child element!"); } /** @@ -2369,7 +2409,7 @@ } return multiReq; } - throw new CIMXMLParseException("MULTIREQ nodes aren't found!"); + throw new CIMXMLParseException("MULTIREQ element missing SIMPLEREQ child element!"); } /** @@ -2385,7 +2425,7 @@ // <!ATTLIST METHODCALL // %CIMName;> if (pMethodCallE.getAttribute("NAME") == null) throw new CIMXMLParseException( - "NAME attribute not found!"); + "METHODCALL element missing NAME attribute!"); CIMRequest request = new CIMRequest(); String methodname = pMethodCallE.getAttribute("CIMName"); @@ -2408,7 +2448,7 @@ request.setObjectPath(path); } else { if (!localclasspathFound) throw new CIMXMLParseException( - "LOCALCLASSPATH or LOCALINSTANCEPATH not found!"); + "METHODCALL element missing required child element!"); } Element[] paramValueElementA = searchNodes(pMethodCallE, "PARAMVALUE"); @@ -2440,7 +2480,8 @@ CIMRequest request = new CIMRequest(); String methodname = pIMethodCallE.getAttribute("NAME"); // ebak: // CIMName->NAME - if (methodname == null) throw new CIMXMLParseException("NAME attribute not found!"); + if (methodname == null) throw new CIMXMLParseException( + "IMETHODCALL element missing NAME attribute!"); request.setMethodName(methodname); // METHODCALL @@ -2480,7 +2521,7 @@ return request; } - throw new CIMXMLParseException("IPARAMVALUE node not found!"); + throw new CIMXMLParseException("IMETHODCALL element missing IPARAMVALUE child element!"); } /** @@ -2522,7 +2563,7 @@ } return multiReq; } - throw new CIMXMLParseException("SIMPLEEXREQ node not found!"); + throw new CIMXMLParseException("MULTIEXPREQ element missing SIMPLEEXPREQ child element!"); } /** @@ -2569,7 +2610,7 @@ CIMInstance inst = parseINSTANCE(instanceE); return inst; } - throw new CIMXMLParseException("INSTANCE node not found!"); + throw new CIMXMLParseException("EXPPARAMVALUE element missing INSTANCE child element!"); } /** @@ -2583,7 +2624,7 @@ throws CIMXMLParseException { // <!ELEMENT METHODRESPONSE (ERROR|(RETURNVALUE?,PARAMVALUE*))> if (pMethodResponseE.getAttribute("NAME") == null) throw new CIMXMLParseException( - "NAME attribute not found!"); + "METHODRESPONSE element missing NAME attribute!"); CIMResponse response = new CIMResponse(); @@ -2650,7 +2691,7 @@ throws CIMXMLParseException { // <!ELEMENT IMETHODRESPONSE (ERROR|(IRETURNVALUE?, PARAMVALUE*))> if (pIMethodResponseE.getAttribute("NAME") == null) throw new CIMXMLParseException( - "NAME attribute not found!"); + "IMETHODRESPONSE element missing NAME attribute!"); CIMResponse response = new CIMResponse(); // ERROR @@ -2699,7 +2740,8 @@ // <!ATTLSIT ERROR %CODE;%DESCRIPTION;> Attr error_codeA = (Attr) searchAttribute(pErrorE, "CODE"); - if (error_codeA == null) throw new CIMXMLParseException("CODE attribute not found!"); + if (error_codeA == null) throw new CIMXMLParseException( + "ERROR element missing CODE attribute!"); String code = error_codeA.getNodeValue(); int errorCode = 0; try { @@ -2752,7 +2794,7 @@ } TypedValue typedVal = parseSingleValue(pRetValE, VALUEREF); if (typedVal.getType() == null) throw new CIMXMLParseException( - "VALUE or VALUE.REFERENCE nodes not found!"); + "RETURNVALUE element missing required child element!"); Object value = typedVal.getValue(); return value; } @@ -3158,7 +3200,8 @@ Element expmethodresponseE = (Element) searchFirstNode(pSimpleExpRspE, "EXPMETHODRESPONSE"); if (expmethodresponseE != null) { return parseEXPMETHODRESPONSE(expmethodresponseE); } - throw new CIMXMLParseException("EXPMETHODRESPONSE node not found!"); + throw new CIMXMLParseException( + "SIMPLEEXPRSP element missing EXPMETHODRESPONSE child element!"); } /** |
From: Dave B. <bla...@us...> - 2013-10-11 10:13:14
|
Update of /cvsroot/sblim/jsr48-client/src/javax/cim In directory sfp-cvs-1.v30.ch3.sourceforge.com:/tmp/cvs-serv13266/src/javax/cim Modified Files: CIMDateTimeAbsolute.java CIMDateTimeInterval.java Log Message: 2674 Null pointer exception in CIMDateTime(String) Index: CIMDateTimeInterval.java =================================================================== RCS file: /cvsroot/sblim/jsr48-client/src/javax/cim/CIMDateTimeInterval.java,v retrieving revision 1.24 retrieving revision 1.25 diff -u -d -r1.24 -r1.25 --- CIMDateTimeInterval.java 13 Sep 2012 09:29:24 -0000 1.24 +++ CIMDateTimeInterval.java 11 Oct 2013 10:13:10 -0000 1.25 @@ -1,5 +1,5 @@ /** - * (C) Copyright IBM Corp. 2006, 2012 + * (C) Copyright IBM Corp. 2006, 2013 * * THIS FILE IS PROVIDED UNDER THE TERMS OF THE ECLIPSE PUBLIC LICENSE * ("AGREEMENT"). ANY USE, REPRODUCTION OR DISTRIBUTION OF THIS FILE @@ -31,6 +31,7 @@ * 3026302 2010-07-07 blaschke-oss CIMDateTimeInterval uses # constructor instead of valueOf * 3400209 2011-08-31 blaschke-oss Highlighted Static Analysis (PMD) issues * 3565581 2012-09-07 blaschke-oss TCK: remove unnecessary overriding methods + * 2674 2013-09-26 blaschke-oss Null pointer exception in CIMDateTime(String) */ package javax.cim; @@ -194,6 +195,8 @@ * If string is not in the correct format. */ public CIMDateTimeInterval(String pIntervalString) throws IllegalArgumentException { + if (pIntervalString == null) throw new IllegalArgumentException( + "Null IntervalString is not allowed!"); if (pIntervalString.length() != LENGTH) throw new IllegalArgumentException("Length of " + pIntervalString + " must be " + LENGTH + ", " + pIntervalString.length() + " is not valid!"); Index: CIMDateTimeAbsolute.java =================================================================== RCS file: /cvsroot/sblim/jsr48-client/src/javax/cim/CIMDateTimeAbsolute.java,v retrieving revision 1.22 retrieving revision 1.23 diff -u -d -r1.22 -r1.23 --- CIMDateTimeAbsolute.java 13 Sep 2012 09:29:24 -0000 1.22 +++ CIMDateTimeAbsolute.java 11 Oct 2013 10:13:10 -0000 1.23 @@ -1,5 +1,5 @@ /** - * (C) Copyright IBM Corp. 2006, 2012 + * (C) Copyright IBM Corp. 2006, 2013 * * THIS FILE IS PROVIDED UNDER THE TERMS OF THE ECLIPSE PUBLIC LICENSE * ("AGREEMENT"). ANY USE, REPRODUCTION OR DISTRIBUTION OF THIS FILE @@ -27,6 +27,7 @@ * 3022501 2010-06-30 blaschke-oss Possible integer overflow in getTotalUSec * 3400209 2011-08-31 blaschke-oss Highlighted Static Analysis (PMD) issues * 3565581 2012-09-07 blaschke-oss TCK: remove unnecessary overriding methods + * 2674 2013-09-26 blaschke-oss Null pointer exception in CIMDateTime(String) */ package javax.cim; @@ -86,7 +87,7 @@ * If <code>Calendar</code> object is <code>null</code>. */ public CIMDateTimeAbsolute(Calendar pCalendar) throws IllegalArgumentException { - if (pCalendar == null) throw new IllegalArgumentException("null Calendar is not allowed!"); + if (pCalendar == null) throw new IllegalArgumentException("Null Calendar is not allowed!"); if (pCalendar.get(Calendar.YEAR) > 9999) throw new IllegalArgumentException( "The year field cannot be greater than 9999!"); set(pCalendar); @@ -101,6 +102,7 @@ * If string is not in the correct format. */ public CIMDateTimeAbsolute(String pDateTime) throws IllegalArgumentException { + if (pDateTime == null) throw new IllegalArgumentException("Null DateTime is not allowed!"); DTStringReader reader = new DTStringReader(pDateTime); this.iYear = reader.readAndCheck(4, "year", 0, 9999, true); this.iMonth = reader.readAndCheck(2, "month", 1, 12, true); |
From: Dave B. <bla...@us...> - 2013-10-11 10:13:13
|
Update of /cvsroot/sblim/jsr48-client/utst/org/sblim/cimclient/unittest/cim In directory sfp-cvs-1.v30.ch3.sourceforge.com:/tmp/cvs-serv13266/utst/org/sblim/cimclient/unittest/cim Modified Files: CIMDateTimeIntervalTest.java CIMDateTimeAbsoluteTest.java Log Message: 2674 Null pointer exception in CIMDateTime(String) Index: CIMDateTimeIntervalTest.java =================================================================== RCS file: /cvsroot/sblim/jsr48-client/utst/org/sblim/cimclient/unittest/cim/CIMDateTimeIntervalTest.java,v retrieving revision 1.9 retrieving revision 1.10 diff -u -d -r1.9 -r1.10 --- CIMDateTimeIntervalTest.java 13 May 2010 13:41:55 -0000 1.9 +++ CIMDateTimeIntervalTest.java 11 Oct 2013 10:13:10 -0000 1.10 @@ -1,5 +1,5 @@ /** - * (C) Copyright IBM Corp. 2006, 2010 + * (C) Copyright IBM Corp. 2006, 2013 * * THIS FILE IS PROVIDED UNDER THE TERMS OF THE ECLIPSE PUBLIC LICENSE * ("AGREEMENT"). ANY USE, REPRODUCTION OR DISTRIBUTION OF THIS FILE @@ -19,6 +19,7 @@ * 2989367 2010-04-29 blaschke-oss CIMDateTimeInterval(long) constructor range wrong * 2989424 2010-04-29 blaschke-oss TCK: CIMDateTimeInterval constructor * 2994252 2010-04-30 blaschke-oss CIMDateTimeInterval.getTotalMilliseconds() not unit tested + * 2674 2013-09-26 blaschke-oss Null pointer exception in CIMDateTime(String) */ package org.sblim.cimclient.unittest.cim; @@ -283,6 +284,8 @@ negativeConstruction("000001331024-1.001328:000"); negativeConstruction("00000133102418.-01328:000"); + + negativeConstruction(null); } private void checkCompareTo(CIMDateTimeInterval pThisDTI, CIMDateTimeInterval pThatDTI, Index: CIMDateTimeAbsoluteTest.java =================================================================== RCS file: /cvsroot/sblim/jsr48-client/utst/org/sblim/cimclient/unittest/cim/CIMDateTimeAbsoluteTest.java,v retrieving revision 1.12 retrieving revision 1.13 diff -u -d -r1.12 -r1.13 --- CIMDateTimeAbsoluteTest.java 29 Jul 2010 18:51:56 -0000 1.12 +++ CIMDateTimeAbsoluteTest.java 11 Oct 2013 10:13:10 -0000 1.13 @@ -1,5 +1,5 @@ /** - * (C) Copyright IBM Corp. 2006, 2010 + * (C) Copyright IBM Corp. 2006, 2013 * * THIS FILE IS PROVIDED UNDER THE TERMS OF THE ECLIPSE PUBLIC LICENSE * ("AGREEMENT"). ANY USE, REPRODUCTION OR DISTRIBUTION OF THIS FILE @@ -22,6 +22,7 @@ * 2531371 2009-02-10 raman_arora Upgrade client to JDK 1.5 (Phase 2) * 2806362 2009-06-14 blaschke-oss Missing new CIMDateTimeAbsolute.getUTCOffset() method * 2944826 2010-02-08 blaschke-oss getUTCOffset() incorrect if not significant field + * 2674 2013-09-26 blaschke-oss Null pointer exception in CIMDateTime(String) */ package org.sblim.cimclient.unittest.cim; @@ -344,6 +345,7 @@ negativeConstruction("", "20070314160503.5660120010"); negativeConstruction("", "200703141605-3.566012+010"); negativeConstruction("", "200703141605+3.566012+010"); + negativeConstruction("", null); } /** |
From: Dave B. <bla...@us...> - 2013-10-11 10:12:45
|
Update of /cvsroot/sblim/jsr48-client/src/javax/cim In directory sfp-cvs-1.v30.ch3.sourceforge.com:/tmp/cvs-serv13175/src/javax/cim Modified Files: Tag: Experimental CIMDateTimeInterval.java Log Message: 2674 Null pointer exception in CIMDateTime(String) Index: CIMDateTimeInterval.java =================================================================== RCS file: /cvsroot/sblim/jsr48-client/src/javax/cim/CIMDateTimeInterval.java,v retrieving revision 1.5.2.20 retrieving revision 1.5.2.21 diff -u -d -r1.5.2.20 -r1.5.2.21 --- CIMDateTimeInterval.java 26 Sep 2013 23:23:56 -0000 1.5.2.20 +++ CIMDateTimeInterval.java 11 Oct 2013 10:12:42 -0000 1.5.2.21 @@ -1,5 +1,5 @@ /** - * (C) Copyright IBM Corp. 2006, 2012 + * (C) Copyright IBM Corp. 2006, 2013 * * THIS FILE IS PROVIDED UNDER THE TERMS OF THE ECLIPSE PUBLIC LICENSE * ("AGREEMENT"). ANY USE, REPRODUCTION OR DISTRIBUTION OF THIS FILE |
From: Dave B. <bla...@us...> - 2013-10-11 09:56:57
|
Update of /cvsroot/sblim/jsr48-client In directory sfp-cvs-1.v30.ch3.sourceforge.com:/tmp/cvs-serv11323 Modified Files: NEWS Log Message: 2673 NameSpaceNode does not need testCompletness() Index: NEWS =================================================================== RCS file: /cvsroot/sblim/jsr48-client/NEWS,v retrieving revision 1.377 retrieving revision 1.378 diff -u -d -r1.377 -r1.378 --- NEWS 11 Oct 2013 09:44:44 -0000 1.377 +++ NEWS 11 Oct 2013 09:56:55 -0000 1.378 @@ -1,5 +1,6 @@ Changes in HEAD ================ + 2673 NameSpaceNode does not need testCompletness() 2672 Remove SIMPLEREQACK support 2671 Potential null pointer exception in parseERROR 2670 NAME attribute not required by DOM parser |
From: Dave B. <bla...@us...> - 2013-10-11 09:44:47
|
Update of /cvsroot/sblim/jsr48-client In directory sfp-cvs-1.v30.ch3.sourceforge.com:/tmp/cvs-serv10450 Modified Files: NEWS Log Message: 2672 Remove SIMPLEREQACK support Index: NEWS =================================================================== RCS file: /cvsroot/sblim/jsr48-client/NEWS,v retrieving revision 1.376 retrieving revision 1.377 diff -u -d -r1.376 -r1.377 --- NEWS 9 Oct 2013 18:04:10 -0000 1.376 +++ NEWS 11 Oct 2013 09:44:44 -0000 1.377 @@ -1,5 +1,6 @@ Changes in HEAD ================ + 2672 Remove SIMPLEREQACK support 2671 Potential null pointer exception in parseERROR 2670 NAME attribute not required by DOM parser 2669 Potential null pointer exception in parseMESSAGE |
From: Dave B. <bla...@us...> - 2013-10-10 12:15:03
|
Update of /cvsroot/sblim/jsr48-client/src/org/sblim/cimclient/internal/cimxml In directory sfp-cvs-1.v30.ch3.sourceforge.com:/tmp/cvs-serv7891/src/org/sblim/cimclient/internal/cimxml Modified Files: Tag: Experimental CIMClientXML_HelperImpl.java CIMXMLBuilderImpl.java Log Message: 2689 createMETHODCALL should not add PARAMTYPE attribute Index: CIMXMLBuilderImpl.java =================================================================== RCS file: /cvsroot/sblim/jsr48-client/src/org/sblim/cimclient/internal/cimxml/CIMXMLBuilderImpl.java,v retrieving revision 1.9.2.37 retrieving revision 1.9.2.38 diff -u -d -r1.9.2.37 -r1.9.2.38 --- CIMXMLBuilderImpl.java 10 May 2013 02:53:17 -0000 1.9.2.37 +++ CIMXMLBuilderImpl.java 10 Oct 2013 12:14:59 -0000 1.9.2.38 @@ -51,6 +51,7 @@ * 3588558 2012-11-26 blaschke-oss An enhancement on Java CIM Client logging * 2616 2013-02-23 blaschke-oss Add new API WBEMClientSBLIM.sendIndication() * 2638 2013-05-09 blaschke-oss Do not build empty REFERENCECLASS + * 2689 2013-10-10 blaschke-oss createMETHODCALL should not add PARAMTYPE attribute */ package org.sblim.cimclient.internal.cimxml; @@ -583,21 +584,16 @@ * @param pDoc * @param pParentE * @param pName - * @param pParamtype * @return Element */ - public static Element createMETHODCALL(Document pDoc, Element pParentE, String pName, - String pParamtype) { + public static Element createMETHODCALL(Document pDoc, Element pParentE, String pName) { // <!ELEMENT METHODCALL // ((LOCALCLASSPATH|LOCALINSTANCEPATH),PARAMVALUE*)> - // <!ATTLIST METHODCALL %NAME;%PARAMTYPE;> + // <!ATTLIST METHODCALL %NAME;> Element e = pDoc.createElement("METHODCALL"); if (pName != null) { e.setAttribute("NAME", pName); } - if (pParamtype != null) { - e.setAttribute("PARAMTYPE", pParamtype); - } pParentE.appendChild(e); return e; } Index: CIMClientXML_HelperImpl.java =================================================================== RCS file: /cvsroot/sblim/jsr48-client/src/org/sblim/cimclient/internal/cimxml/CIMClientXML_HelperImpl.java,v retrieving revision 1.18.2.32 retrieving revision 1.18.2.33 diff -u -d -r1.18.2.32 -r1.18.2.33 --- CIMClientXML_HelperImpl.java 23 Feb 2013 19:56:54 -0000 1.18.2.32 +++ CIMClientXML_HelperImpl.java 10 Oct 2013 12:14:59 -0000 1.18.2.33 @@ -50,6 +50,7 @@ * 3527580 2012-05-17 blaschke-oss WBEMClient should not throw IllegalArgumentException * 3601894 2013-01-23 blaschke-oss Enhance HTTP and CIM-XML tracing * 2616 2013-02-23 blaschke-oss Add new API WBEMClientSBLIM.sendIndication() + * 2689 2013-10-10 blaschke-oss createMETHODCALL should not add PARAMTYPE attribute */ package org.sblim.cimclient.internal.cimxml; @@ -896,8 +897,7 @@ CIMProperty<?>[] keysA = pLocalPath.getKeys(); Element simplereqE = CIMXMLBuilderImpl.createSIMPLEREQ(pDoc); - Element methodcallE = CIMXMLBuilderImpl.createMETHODCALL(pDoc, simplereqE, pMethodName, - null); + Element methodcallE = CIMXMLBuilderImpl.createMETHODCALL(pDoc, simplereqE, pMethodName); // 13521 if (keysA.length > 0) { |
From: Dave B. <bla...@us...> - 2013-10-10 11:40:29
|
Update of /cvsroot/sblim/jsr48-client/src/org/sblim/cimclient/internal/cimxml In directory sfp-cvs-1.v30.ch3.sourceforge.com:/tmp/cvs-serv4288/src/org/sblim/cimclient/internal/cimxml Modified Files: Tag: Experimental CIMXMLParserImpl.java Log Message: 2688 parseMETHODCALL looks for CIMName attribute instead of NAME Index: CIMXMLParserImpl.java =================================================================== RCS file: /cvsroot/sblim/jsr48-client/src/org/sblim/cimclient/internal/cimxml/CIMXMLParserImpl.java,v retrieving revision 1.14.2.57 retrieving revision 1.14.2.58 diff -u -d -r1.14.2.57 -r1.14.2.58 --- CIMXMLParserImpl.java 10 Oct 2013 11:01:04 -0000 1.14.2.57 +++ CIMXMLParserImpl.java 10 Oct 2013 11:40:27 -0000 1.14.2.58 @@ -74,6 +74,7 @@ * 2684 2013-10-07 blaschke-oss parseEXPMETHODRESPONSE has several issues * 2685 2013-10-07 blaschke-oss Element.getAttribute returns empty string if no attribute * 2686 2013-10-10 blaschke-oss parseEXPPARAMVALUE allows 2+ children, prohibits 0 + * 2688 2013-10-10 blaschke-oss parseMETHODCALL looks for CIMName attribute instead of NAME */ package org.sblim.cimclient.internal.cimxml; @@ -2450,11 +2451,11 @@ // ((LOCALCLASSPATH|LOCALINSTANCEPATH),PARAMVALUE*)> // <!ATTLIST METHODCALL // %CIMName;> - if (attribute(pMethodCallE, "NAME") == null) throw new CIMXMLParseException( - "METHODCALL element missing NAME attribute!"); CIMRequest request = new CIMRequest(); - String methodname = pMethodCallE.getAttribute("CIMName"); + String methodname = attribute(pMethodCallE, "NAME"); + if (methodname == null) throw new CIMXMLParseException( + "METHODCALL element missing NAME attribute!"); request.setMethodName(methodname); // EXPMETHODCALL |
From: Dave B. <bla...@us...> - 2013-10-10 11:32:44
|
Update of /cvsroot/sblim/jsr48-client/src/org/sblim/cimclient/internal/cimxml/sax/node In directory sfp-cvs-1.v30.ch3.sourceforge.com:/tmp/cvs-serv3555/src/org/sblim/cimclient/internal/cimxml/sax/node Modified Files: Tag: Experimental ExpParamValueNode.java Log Message: 2687 ExpParamValueNode allows VALUE, (I)METHODRESPONSE children Index: ExpParamValueNode.java =================================================================== RCS file: /cvsroot/sblim/jsr48-client/src/org/sblim/cimclient/internal/cimxml/sax/node/ExpParamValueNode.java,v retrieving revision 1.1.2.8 retrieving revision 1.1.2.9 diff -u -d -r1.1.2.8 -r1.1.2.9 --- ExpParamValueNode.java 27 Mar 2012 19:06:32 -0000 1.1.2.8 +++ ExpParamValueNode.java 10 Oct 2013 11:32:41 -0000 1.1.2.9 @@ -1,5 +1,5 @@ /** - * (C) Copyright IBM Corp. 2006, 2012 + * (C) Copyright IBM Corp. 2006, 2013 * * THIS FILE IS PROVIDED UNDER THE TERMS OF THE ECLIPSE PUBLIC LICENSE * ("AGREEMENT"). ANY USE, REPRODUCTION OR DISTRIBUTION OF THIS FILE @@ -19,6 +19,7 @@ * 2003590 2008-06-30 blaschke-oss Change licensing from CPL to EPL * 2524131 2009-01-21 raman_arora Upgrade client to JDK 1.5 (Phase 1) * 3511454 2012-03-27 blaschke-oss SAX nodes not reinitialized properly + * 2687 2013-10-10 blaschke-oss ExpParamValueNode allows VALUE, (I)METHODRESPONSE children */ package org.sblim.cimclient.internal.cimxml.sax.node; @@ -29,7 +30,7 @@ /** * <pre> - * ELEMENT EXPPARAMVALUE (INSTANCE?|VALUE?|METHODRESPONSE?|IMETHODRESPONSE?) + * ELEMENT EXPPARAMVALUE (INSTANCE?) * ATTLIST EXPPARAMVALUE * %CIMName; * </pre> @@ -72,9 +73,8 @@ public void testChild(String pNodeNameEnum) throws SAXException { if (this.iChildNode != null) throw new SAXException(getNodeName() + " node can have only one child node!"); - if (pNodeNameEnum != INSTANCE && pNodeNameEnum != VALUE && pNodeNameEnum != METHODRESPONSE - && pNodeNameEnum != IMETHODRESPONSE) throw new SAXException(getNodeName() - + " node cannot have " + pNodeNameEnum + " child node!"); + if (pNodeNameEnum != INSTANCE) throw new SAXException(getNodeName() + " node cannot have " + + pNodeNameEnum + " child node!"); } /** |
From: Dave B. <bla...@us...> - 2013-10-10 11:01:07
|
Update of /cvsroot/sblim/jsr48-client/src/org/sblim/cimclient/internal/cimxml In directory sfp-cvs-1.v30.ch3.sourceforge.com:/tmp/cvs-serv1064/src/org/sblim/cimclient/internal/cimxml Modified Files: Tag: Experimental CIMXMLParserImpl.java Log Message: 2686 parseEXPPARAMVALUE allows 2+ children, prohibits 0 Index: CIMXMLParserImpl.java =================================================================== RCS file: /cvsroot/sblim/jsr48-client/src/org/sblim/cimclient/internal/cimxml/CIMXMLParserImpl.java,v retrieving revision 1.14.2.56 retrieving revision 1.14.2.57 diff -u -d -r1.14.2.56 -r1.14.2.57 --- CIMXMLParserImpl.java 7 Oct 2013 21:55:35 -0000 1.14.2.56 +++ CIMXMLParserImpl.java 10 Oct 2013 11:01:04 -0000 1.14.2.57 @@ -73,6 +73,7 @@ * 2683 2013-10-07 blaschke-oss KEYVALUE VALUETYPE optional, "string" default * 2684 2013-10-07 blaschke-oss parseEXPMETHODRESPONSE has several issues * 2685 2013-10-07 blaschke-oss Element.getAttribute returns empty string if no attribute + * 2686 2013-10-10 blaschke-oss parseEXPPARAMVALUE allows 2+ children, prohibits 0 */ package org.sblim.cimclient.internal.cimxml; @@ -2627,16 +2628,22 @@ */ public static CIMInstance parseEXPPARAMVALUE(Element pExpParamValueE) throws CIMXMLParseException { - // <!ELEMENT EXPPARAMVALUE (INSTANCE)> + // <!ELEMENT EXPPARAMVALUE (INSTANCE?)> // <!ATTLIST EXPPARAMVALUE // %CIMName;> // INSTANCE - Element instanceE = (Element) searchFirstNode(pExpParamValueE, "INSTANCE"); - if (instanceE != null) { - CIMInstance inst = parseINSTANCE(instanceE); + Element[] instanceA = searchNodes(pExpParamValueE, "INSTANCE"); + if (instanceA != null && instanceA.length > 0) { + if (instanceA.length > 1) throw new CIMXMLParseException( + "EXPPARAMVALUE element must have only one INSTANCE child element!"); + CIMInstance inst = parseINSTANCE(instanceA[0]); return inst; } - throw new CIMXMLParseException("EXPPARAMVALUE element missing INSTANCE child element!"); + + if (hasNodes(pExpParamValueE)) throw new CIMXMLParseException( + "EXPPARAMVALUE element contains invalid child element!"); + + return null; } /** |
From: Dave B. <bla...@us...> - 2013-10-09 18:04:12
|
Update of /cvsroot/sblim/jsr48-client/src/org/sblim/cimclient/internal/cimxml In directory sfp-cvs-1.v30.ch3.sourceforge.com:/tmp/cvs-serv15511/src/org/sblim/cimclient/internal/cimxml Modified Files: CIMXMLParserImpl.java Log Message: 2671 Potential null pointer exception in parseERROR Index: CIMXMLParserImpl.java =================================================================== RCS file: /cvsroot/sblim/jsr48-client/src/org/sblim/cimclient/internal/cimxml/CIMXMLParserImpl.java,v retrieving revision 1.56 retrieving revision 1.57 diff -u -d -r1.56 -r1.57 --- CIMXMLParserImpl.java 9 Oct 2013 17:48:54 -0000 1.56 +++ CIMXMLParserImpl.java 9 Oct 2013 18:04:10 -0000 1.57 @@ -63,6 +63,7 @@ * 2668 2013-09-24 blaschke-oss Potential null pointer exception in parseCIM * 2669 2013-09-24 blaschke-oss Potential null pointer exception in parseMESSAGE * 2670 2013-09-25 blaschke-oss NAME attribute not required by DOM parser + * 2671 2013-09-25 blaschke-oss Potential null pointer exception in parseERROR */ package org.sblim.cimclient.internal.cimxml; @@ -2698,6 +2699,7 @@ // <!ATTLSIT ERROR %CODE;%DESCRIPTION;> Attr error_codeA = (Attr) searchAttribute(pErrorE, "CODE"); + if (error_codeA == null) throw new CIMXMLParseException("CODE attribute not found!"); String code = error_codeA.getNodeValue(); int errorCode = 0; try { |
From: Dave B. <bla...@us...> - 2013-10-09 17:48:57
|
Update of /cvsroot/sblim/jsr48-client/src/org/sblim/cimclient/internal/cimxml In directory sfp-cvs-1.v30.ch3.sourceforge.com:/tmp/cvs-serv14064/src/org/sblim/cimclient/internal/cimxml Modified Files: CIMXMLParserImpl.java Log Message: 2670 NAME attribute not required by DOM parser Index: CIMXMLParserImpl.java =================================================================== RCS file: /cvsroot/sblim/jsr48-client/src/org/sblim/cimclient/internal/cimxml/CIMXMLParserImpl.java,v retrieving revision 1.55 retrieving revision 1.56 diff -u -d -r1.55 -r1.56 --- CIMXMLParserImpl.java 9 Oct 2013 17:27:00 -0000 1.55 +++ CIMXMLParserImpl.java 9 Oct 2013 17:48:54 -0000 1.56 @@ -62,6 +62,7 @@ * 2640 2013-05-11 blaschke-oss Multiple CDATA parsing broken in DOM parser * 2668 2013-09-24 blaschke-oss Potential null pointer exception in parseCIM * 2669 2013-09-24 blaschke-oss Potential null pointer exception in parseMESSAGE + * 2670 2013-09-25 blaschke-oss NAME attribute not required by DOM parser */ package org.sblim.cimclient.internal.cimxml; @@ -584,12 +585,14 @@ * * @param pNameSpaceE * @return String + * @throws CIMXMLParseException */ - public static String parseNAMESPACE(Element pNameSpaceE) { + public static String parseNAMESPACE(Element pNameSpaceE) throws CIMXMLParseException { // <!ELEMENT NAMESPACE EMPTY> // <!ATTLIST NAMESPACE %NAME;> Attr namespace_nameA = (Attr) searchAttribute(pNameSpaceE, "NAME"); + if (namespace_nameA == null) throw new CIMXMLParseException("NAME attribute not found!"); String n = namespace_nameA.getValue(); return n; } @@ -648,11 +651,13 @@ * * @param pClassNameE * @return String + * @throws CIMXMLParseException */ - public static String parseClassName(Element pClassNameE) { + public static String parseClassName(Element pClassNameE) throws CIMXMLParseException { // <!ELEMENT CLASSNAME EMPTY> // <!ATTLIST CLASSNAME %NAME;> Attr classname_nameA = (Attr) searchAttribute(pClassNameE, "NAME"); + if (classname_nameA == null) throw new CIMXMLParseException("NAME attribute not found!"); return classname_nameA.getNodeValue(); } @@ -661,8 +666,9 @@ * * @param pClassNameE * @return CIMObjectPath + * @throws CIMXMLParseException */ - public static CIMObjectPath parseCLASSNAME(Element pClassNameE) { + public static CIMObjectPath parseCLASSNAME(Element pClassNameE) throws CIMXMLParseException { return cLocalPathBuilder.build(parseClassName(pClassNameE), null); } @@ -730,6 +736,8 @@ // <!ELEMENT INSTANCENAME (KEYBINDING*|KEYVALUE?|VALUE.REFERNCE?)> // <!ATTLIST INSTANCENAME %CLASSNAME;> Attr instance_classnameA = (Attr) searchAttribute(pInstanceNameE, "CLASSNAME"); + if (instance_classnameA == null) throw new CIMXMLParseException( + "CLASSNAME attribute not found!"); String opClassName = instance_classnameA.getNodeValue(); // KEYBINDING @@ -785,6 +793,7 @@ // <!ATTLIST KEYBINDING %NAME;> Attr keybinding_nameA = (Attr) searchAttribute(pKeyBindingE, "NAME"); + if (keybinding_nameA == null) throw new CIMXMLParseException("NAME attribute not found!"); String propName = keybinding_nameA.getValue(); // KEYVALUE @@ -1061,6 +1070,7 @@ // <!ATTLIST CLASS %NAME;%SUPERCLASS;> Attr class_nameA = (Attr) searchAttribute(pClassE, "NAME"); + if (class_nameA == null) throw new CIMXMLParseException("NAME attribute not found!"); String name = class_nameA.getNodeValue(); // Attr superclass_nameA = (Attr)searchAttribute(classE, "SUPERCLASS"); @@ -1178,6 +1188,7 @@ // %Propagated;> String name = attribute(pMethodE, "NAME"); + if (name == null) throw new CIMXMLParseException("NAME attribute not found!"); EmbObjHandler embObjHandler = new EmbObjHandler(pMethodE); CIMDataType type = embObjHandler.getType(); if (type.isArray()) throw new CIMXMLParseException("Method's type cannot be Array!"); @@ -1202,6 +1213,7 @@ */ public static CIMParameter<Object> parsePARAMETER(Element pParamE) throws CIMXMLParseException { String name = attribute(pParamE, "NAME"); + if (name == null) throw new CIMXMLParseException("NAME attribute not found!"); EmbObjHandler iEmbObjHandler = new EmbObjHandler(pParamE); // CIMParameter(String name, CIMDataType type, CIMQualifier[] // qualifiers) @@ -1219,6 +1231,7 @@ public static CIMParameter<Object> parsePARAMETERREFERENCE(Element pParamE) throws CIMXMLParseException { String name = attribute(pParamE, "NAME"); + if (name == null) throw new CIMXMLParseException("NAME attribute not found!"); String referenceClass = attribute(pParamE, "REFERENCECLASS"); CIMDataType type = new CIMDataType(referenceClass != null ? referenceClass : ""); // QUALIFIER @@ -1236,6 +1249,7 @@ public static CIMParameter<Object> parsePARAMETERARRAY(Element pParamE) throws CIMXMLParseException { String name = attribute(pParamE, "NAME"); + if (name == null) throw new CIMXMLParseException("NAME attribute not found!"); EmbObjHandler iEmbObjHandler = new EmbObjHandler(pParamE); return new CIMParameter<Object>(name, iEmbObjHandler.getArrayType(), iEmbObjHandler .getQualifiers()); @@ -1251,6 +1265,7 @@ public static CIMParameter<Object> parsePARAMETERREFARRAY(Element pParamE) throws CIMXMLParseException { String name = attribute(pParamE, "NAME"); + if (name == null) throw new CIMXMLParseException("NAME attribute not found!"); String referenceClass = attribute(pParamE, "REFERENCECLASS"); @@ -1298,6 +1313,7 @@ // BB mod CIMInstance inst = new CIMInstance(); String className = attribute(pInstanceE, "CLASSNAME"); + if (className == null) throw new CIMXMLParseException("CLASSNAME attribute not found!"); // QUALIFIER // FIXME: in JSR48 CIMInstance doesn't have qualifiers // CIMQualifier[] qualis = parseQUALIFIERS(pInstanceE); @@ -1431,6 +1447,7 @@ // <!ATTLIST QUALIFIER %NAME;%TYPE;%PROPAGATED;%QUALIFIERFLAVOR;> String name = attribute(pQualifierE, "NAME"); + if (name == null) throw new CIMXMLParseException("NAME attribute not found!"); boolean propagated = MOF.TRUE.equalsIgnoreCase(pQualifierE.getAttribute("PROPAGATED")); // FLAVORS int flavors = parseFLAVORS(pQualifierE); @@ -1462,6 +1479,7 @@ // %QualifierFlavor;> String name = attribute(pQualifierTypeE, "NAME"); + if (name == null) throw new CIMXMLParseException("NAME attribute not found!"); // SCOPES // ebak: there should be only 1 scope node @@ -1944,6 +1962,7 @@ // <!ATTLIST PROPERTY %NAME;%TYPE;%CLASSORIGIN;%PROPAGATED;> Attr property_nameA = (Attr) searchAttribute(pPropertyE, "NAME"); + if (property_nameA == null) throw new CIMXMLParseException("NAME attribute not found!"); String name = property_nameA.getNodeValue(); String classOrigin = pPropertyE.getAttribute("CLASSORIGIN"); @@ -1991,6 +2010,7 @@ // %NAME;%TYPE;%ARRAYSIZE;%CLASSORIGIN;%PROPAGATED;> String name = pPropArrayE.getAttribute("NAME"); + if (name == null) throw new CIMXMLParseException("NAME attribute not found!"); // String valueArraysizeStr = propertyarrayE.getAttribute("ARRAYSIZE"); @@ -2035,6 +2055,7 @@ // %NAME;%REFERENCECLASS;%CLASSORIGIN;%PROPAGATED;> String name = pPropRefE.getAttribute("NAME"); + if (name == null) throw new CIMXMLParseException("NAME attribute not found!"); String classOrigin = pPropRefE.getAttribute("CLASSORIGIN"); if (classOrigin != null && classOrigin.length() == 0) classOrigin = null; @@ -2168,6 +2189,7 @@ // (VALUE|VALUE.REFERENCE|VALUE.ARRAY|VALUE.REFARRAY)?>) // <!ATTLIST PARAMTYPE %NAME;%PARAMTYPE%> String name = attribute(pParamValueE, "NAME"); + if (name == null) throw new CIMXMLParseException("NAME attribute not found!"); // FIXME: ebak: The base implementation didn't contain VALUE.REFARRAY // handling. Why? // ebak: embedded object support, different parsing for VALUE and @@ -2200,6 +2222,7 @@ // %CIMName;> String name = attribute(pParamValueE, "NAME"); + if (name == null) throw new CIMXMLParseException("NAME attribute not found!"); // this can parse VALUE, VALUE.ARRAY and VALUE.REFERENCE TypedValue typedValue = parseSingleValue(pParamValueE, VALUE | VALUEA | VALUEREF); if (typedValue.getType() != null) { return new CIMArgument<Object>(name, typedValue @@ -2360,6 +2383,8 @@ // ((LOCALCLASSPATH|LOCALINSTANCEPATH),PARAMVALUE*)> // <!ATTLIST METHODCALL // %CIMName;> + if (pMethodCallE.getAttribute("NAME") == null) throw new CIMXMLParseException( + "NAME attribute not found!"); CIMRequest request = new CIMRequest(); String methodname = pMethodCallE.getAttribute("CIMName"); @@ -2414,6 +2439,7 @@ CIMRequest request = new CIMRequest(); String methodname = pIMethodCallE.getAttribute("NAME"); // ebak: // CIMName->NAME + if (methodname == null) throw new CIMXMLParseException("NAME attribute not found!"); request.setMethodName(methodname); // METHODCALL @@ -2555,6 +2581,8 @@ public static CIMResponse parseMETHODRESPONSE(Element pMethodResponseE) throws CIMXMLParseException { // <!ELEMENT METHODRESPONSE (ERROR|(RETURNVALUE?,PARAMVALUE*))> + if (pMethodResponseE.getAttribute("NAME") == null) throw new CIMXMLParseException( + "NAME attribute not found!"); CIMResponse response = new CIMResponse(); @@ -2620,6 +2648,8 @@ public static CIMResponse parseIMETHODRESPONSE(Element pIMethodResponseE) throws CIMXMLParseException { // <!ELEMENT IMETHODRESPONSE (ERROR|(IRETURNVALUE?, PARAMVALUE*))> + if (pIMethodResponseE.getAttribute("NAME") == null) throw new CIMXMLParseException( + "NAME attribute not found!"); CIMResponse response = new CIMResponse(); // ERROR |
From: Dave B. <bla...@us...> - 2013-10-09 17:27:02
|
Update of /cvsroot/sblim/jsr48-client/src/org/sblim/cimclient/internal/cimxml In directory sfp-cvs-1.v30.ch3.sourceforge.com:/tmp/cvs-serv12556/src/org/sblim/cimclient/internal/cimxml Modified Files: CIMXMLParserImpl.java Log Message: 2669 Potential null pointer exception in parseMESSAGE Index: CIMXMLParserImpl.java =================================================================== RCS file: /cvsroot/sblim/jsr48-client/src/org/sblim/cimclient/internal/cimxml/CIMXMLParserImpl.java,v retrieving revision 1.54 retrieving revision 1.55 diff -u -d -r1.54 -r1.55 --- CIMXMLParserImpl.java 9 Oct 2013 17:18:55 -0000 1.54 +++ CIMXMLParserImpl.java 9 Oct 2013 17:27:00 -0000 1.55 @@ -61,6 +61,7 @@ * 2636 2013-05-08 blaschke-oss Nested embedded instances cause CIMXMLParseException * 2640 2013-05-11 blaschke-oss Multiple CDATA parsing broken in DOM parser * 2668 2013-09-24 blaschke-oss Potential null pointer exception in parseCIM + * 2669 2013-09-24 blaschke-oss Potential null pointer exception in parseMESSAGE */ package org.sblim.cimclient.internal.cimxml; @@ -2073,7 +2074,12 @@ // <!ATTLIST MESSAGE %ID;%PROTOCOLVERSION;> Attr idA = (Attr) searchAttribute(pMessageE, "ID"); + if (idA == null) throw new CIMXMLParseException("ID attribute not found!"); String id = idA.getNodeValue(); + + Attr protocolA = (Attr) searchAttribute(pMessageE, "PROTOCOLVERSION"); + if (protocolA == null) throw new CIMXMLParseException( + "PROTOCOLVERSION attribute not found!"); // TODO if (pCimVersion.equals("2.0") && pDtdVersion.equals("2.0")) { |
From: Dave B. <bla...@us...> - 2013-10-09 17:18:58
|
Update of /cvsroot/sblim/jsr48-client/src/org/sblim/cimclient/internal/cimxml In directory sfp-cvs-1.v30.ch3.sourceforge.com:/tmp/cvs-serv11931/src/org/sblim/cimclient/internal/cimxml Modified Files: CIMXMLParserImpl.java Log Message: 2668 Potential null pointer exception in parseCIM Index: CIMXMLParserImpl.java =================================================================== RCS file: /cvsroot/sblim/jsr48-client/src/org/sblim/cimclient/internal/cimxml/CIMXMLParserImpl.java,v retrieving revision 1.53 retrieving revision 1.54 diff -u -d -r1.53 -r1.54 --- CIMXMLParserImpl.java 27 May 2013 19:13:33 -0000 1.53 +++ CIMXMLParserImpl.java 9 Oct 2013 17:18:55 -0000 1.54 @@ -60,6 +60,7 @@ * 2616 2013-02-23 blaschke-oss Add new API WBEMClientSBLIM.sendIndication() * 2636 2013-05-08 blaschke-oss Nested embedded instances cause CIMXMLParseException * 2640 2013-05-11 blaschke-oss Multiple CDATA parsing broken in DOM parser + * 2668 2013-09-24 blaschke-oss Potential null pointer exception in parseCIM */ package org.sblim.cimclient.internal.cimxml; @@ -149,9 +150,13 @@ // <!ELEMENT CIM (MESSAGE|DECLARATION)> // <!ATTLIST CIM %CIMVERSION;%DTDVERSION;> Attr cim_cimversionA = (Attr) searchAttribute(pCimE, "CIMVERSION"); + if (cim_cimversionA == null) throw new CIMXMLParseException( + "CIMVERSION attribute not found!"); String cimversion = cim_cimversionA.getNodeValue(); Attr cim_dtdversionA = (Attr) searchAttribute(pCimE, "DTDVERSION"); + if (cim_dtdversionA == null) throw new CIMXMLParseException( + "DTDVERSION attribute not found!"); String dtdversion = cim_dtdversionA.getNodeValue(); // MESSAGE |
From: Dave B. <bla...@us...> - 2013-10-07 21:55:38
|
Update of /cvsroot/sblim/jsr48-client/src/org/sblim/cimclient/internal/cimxml In directory sfp-cvs-1.v30.ch3.sourceforge.com:/tmp/cvs-serv8065/src/org/sblim/cimclient/internal/cimxml Modified Files: Tag: Experimental CIMXMLParserImpl.java Log Message: 2685 Element.getAttribute returns empty string if no attribute Index: CIMXMLParserImpl.java =================================================================== RCS file: /cvsroot/sblim/jsr48-client/src/org/sblim/cimclient/internal/cimxml/CIMXMLParserImpl.java,v retrieving revision 1.14.2.55 retrieving revision 1.14.2.56 diff -u -d -r1.14.2.55 -r1.14.2.56 --- CIMXMLParserImpl.java 7 Oct 2013 20:50:24 -0000 1.14.2.55 +++ CIMXMLParserImpl.java 7 Oct 2013 21:55:35 -0000 1.14.2.56 @@ -72,6 +72,7 @@ * 2681 2013-10-02 blaschke-oss parseQUALIFIERDECLARATION does not require TYPE attribute * 2683 2013-10-07 blaschke-oss KEYVALUE VALUETYPE optional, "string" default * 2684 2013-10-07 blaschke-oss parseEXPMETHODRESPONSE has several issues + * 2685 2013-10-07 blaschke-oss Element.getAttribute returns empty string if no attribute */ package org.sblim.cimclient.internal.cimxml; @@ -2053,7 +2054,7 @@ // <!ATTLIST PROPERTY.ARRAY // %NAME;%TYPE;%ARRAYSIZE;%CLASSORIGIN;%PROPAGATED;> - String name = pPropArrayE.getAttribute("NAME"); + String name = attribute(pPropArrayE, "NAME"); if (name == null) throw new CIMXMLParseException( "PROPERTY.ARRAY element missing NAME attribute!"); @@ -2099,7 +2100,7 @@ // <!ATTLIST PROPERTY.REFERENCE // %NAME;%REFERENCECLASS;%CLASSORIGIN;%PROPAGATED;> - String name = pPropRefE.getAttribute("NAME"); + String name = attribute(pPropRefE, "NAME"); if (name == null) throw new CIMXMLParseException( "PROPERTY.REFERENCE element missing NAME attribute!"); @@ -2448,7 +2449,7 @@ // ((LOCALCLASSPATH|LOCALINSTANCEPATH),PARAMVALUE*)> // <!ATTLIST METHODCALL // %CIMName;> - if (pMethodCallE.getAttribute("NAME") == null) throw new CIMXMLParseException( + if (attribute(pMethodCallE, "NAME") == null) throw new CIMXMLParseException( "METHODCALL element missing NAME attribute!"); CIMRequest request = new CIMRequest(); @@ -2502,7 +2503,7 @@ // %CIMName;> CIMRequest request = new CIMRequest(); - String methodname = pIMethodCallE.getAttribute("NAME"); // ebak: + String methodname = attribute(pIMethodCallE, "NAME"); // ebak: // CIMName->NAME if (methodname == null) throw new CIMXMLParseException( "IMETHODCALL element missing NAME attribute!"); @@ -2648,7 +2649,7 @@ public static CIMResponse parseMETHODRESPONSE(Element pMethodResponseE) throws CIMXMLParseException { // <!ELEMENT METHODRESPONSE (ERROR|(RETURNVALUE?,PARAMVALUE*))> - if (pMethodResponseE.getAttribute("NAME") == null) throw new CIMXMLParseException( + if (attribute(pMethodResponseE, "NAME") == null) throw new CIMXMLParseException( "METHODRESPONSE element missing NAME attribute!"); CIMResponse response = new CIMResponse(); @@ -2715,7 +2716,7 @@ public static CIMResponse parseIMETHODRESPONSE(Element pIMethodResponseE) throws CIMXMLParseException { // <!ELEMENT IMETHODRESPONSE (ERROR|(IRETURNVALUE?, PARAMVALUE*))> - if (pIMethodResponseE.getAttribute("NAME") == null) throw new CIMXMLParseException( + if (attribute(pIMethodResponseE, "NAME") == null) throw new CIMXMLParseException( "IMETHODRESPONSE element missing NAME attribute!"); CIMResponse response = new CIMResponse(); |
From: Dave B. <bla...@us...> - 2013-10-07 20:50:27
|
Update of /cvsroot/sblim/jsr48-client/src/org/sblim/cimclient/internal/cimxml In directory sfp-cvs-1.v30.ch3.sourceforge.com:/tmp/cvs-serv3895/src/org/sblim/cimclient/internal/cimxml Modified Files: Tag: Experimental CIMXMLParserImpl.java Log Message: 2684 parseEXPMETHODRESPONSE has several issues Index: CIMXMLParserImpl.java =================================================================== RCS file: /cvsroot/sblim/jsr48-client/src/org/sblim/cimclient/internal/cimxml/CIMXMLParserImpl.java,v retrieving revision 1.14.2.54 retrieving revision 1.14.2.55 diff -u -d -r1.14.2.54 -r1.14.2.55 --- CIMXMLParserImpl.java 7 Oct 2013 17:28:16 -0000 1.14.2.54 +++ CIMXMLParserImpl.java 7 Oct 2013 20:50:24 -0000 1.14.2.55 @@ -70,7 +70,8 @@ * 2679 2013-10-01 blaschke-oss parseIMETHODCALL requires one IPARAMVALUE child element * 2680 2013-10-02 blaschke-oss IPARAMVALUE parsing broken on DOM/SAX * 2681 2013-10-02 blaschke-oss parseQUALIFIERDECLARATION does not require TYPE attribute - * 2683 2013-10-07 blaschke-oss KEYVALUE VALUETYPE optional, "string" default + * 2683 2013-10-07 blaschke-oss KEYVALUE VALUETYPE optional, "string" default + * 2684 2013-10-07 blaschke-oss parseEXPMETHODRESPONSE has several issues */ package org.sblim.cimclient.internal.cimxml; @@ -3050,6 +3051,17 @@ // /////////////////////////////////////////////////////////////////////////////////////////// /** + * hasNodes + * + * @param pParentE + * @return boolean + */ + private static boolean hasNodes(Element pParentE) { + NodeList nl = pParentE.getChildNodes(); + return (nl != null && nl.getLength() > 0); + } + + /** * searchNodes * * @param pParentE @@ -3268,10 +3280,15 @@ CIMResponse response = new CIMResponse(); + if (attribute(pExpMethodResponseE, "NAME") == null) throw new CIMXMLParseException( + "EXPMETHODRESPONSE element missing NAME attribute!"); + // ERROR - Element errorE = (Element) searchFirstNode(pExpMethodResponseE, "ERROR"); - if (errorE != null) { - WBEMException exception = parseERROR(errorE); + Element[] errorA = searchNodes(pExpMethodResponseE, "ERROR"); + if (errorA != null && errorA.length > 0) { + if (errorA.length > 1) throw new CIMXMLParseException( + "EXPMETHODRESPONSE element must have only one ERROR child element!"); + WBEMException exception = parseERROR(errorA[0]); response.setError(exception); return response; } @@ -3279,14 +3296,18 @@ // RETURNVALUE Element[] retValElementA = searchNodes(pExpMethodResponseE, "IRETURNVALUE"); if (retValElementA != null && retValElementA.length > 0) { + if (retValElementA.length > 1) throw new CIMXMLParseException( + "EXPMETHODRESPONSE element must have only one IRETURNVALUE child element!"); Vector<Object> v = new Vector<Object>(); - for (int i = 0; i < retValElementA.length; i++) { - Element returnvalueE = retValElementA[i]; - v.add(parseIRETURNVALUE(returnvalueE)); - } + Element returnvalueE = retValElementA[0]; + v.add(parseIRETURNVALUE(returnvalueE)); response.setReturnValue(v); + return response; } + if (hasNodes(pExpMethodResponseE)) throw new CIMXMLParseException( + "EXPMETHODRESPONSE element contains invalid child element!"); + return response; } |