<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head><style type="text/css"><!-- #msg DL { border : 1px #006 solid; background-color : #369; padding : 6px; color : #fff; } #msg DT { float : left; width : 6em; font-weight : bold; } #msg DL, #msg DT, #msg UL, #msg LI { font-family : arial,helvetica,sans-serif; font-size : 10pt; } h3 { font-family : arial,helvetica,sans-serif; font-size : 10pt; font-weight : bold; } #msg PRE { overflow : auto; white-space : normal; background-color : #ffc; border : 1px #fc0 solid; padding : 6px; } #msg UL, PRE, .diff { overflow : auto; } #patch h4 { font-family : arial,helvetica,sans-serif; font-size : 10pt; } #patch h4 { padding: 8px; background : #369; color : #fff; margin : 0; } #patch .propset h4, #patch .binary h4 {margin: 0;} #patch pre {padding:0;line-height:1.2em;margin:0;} #patch .diff {background:#eeeeee;padding: 0 0 10px 0;} #patch .propset .diff, #patch .binary .diff {padding: 10px 0;} #patch span {display:block;padding:0 10px;} #patch .modfile, #patch .addfile, #patch .delfile, #patch .propset, #patch .binary, #patch .copfile {border:1px solid #ccc;margin:10px 0;} #patch .add {background:#ddffdd;} #patch .rem {background:#ffdddd;} #patch .lines, .info {color:#888888;background:#ffffff;} .diff { width : 100%; } #msg DL { border : 1px #006 solid; background-color : #369; padding : 6px; color : #fff; } #msg DT { float : left; width : 6em; font-weight : bold; } #msg DL, #msg DT, #msg UL, #msg LI { font-family : arial,helvetica,sans-serif; font-size : 10pt; } h3 { font-family : arial,helvetica,sans-serif; font-size : 10pt; font-weight : bold; } #msg PRE { overflow : auto; white-space : normal; background-color : #ffc; border : 1px #fc0 solid; padding : 6px; } #msg UL, PRE, .diff { overflow : auto; } #patch h4 { font-family : arial,helvetica,sans-serif; font-size : 10pt; } #patch h4 { padding: 8px; background : #369; color : #fff; margin : 0; } #patch .propset h4, #patch .binary h4 {margin: 0;} #patch pre {padding:0;line-height:1.2em;margin:0;} #patch .diff {background:#eeeeee;padding: 0 0 10px 0;} #patch .propset .diff, #patch .binary .diff {padding: 10px 0;} #patch span {display:block;padding:0 10px;} #patch .modfile, #patch .addfile, #patch .delfile, #patch .propset, #patch .binary, #patch .copfile {border:1px solid #ccc;margin:10px 0;} #patch .add {background:#ddffdd;} #patch .rem {background:#ffdddd;} #patch .lines, .info {color:#888888;background:#ffffff;} .diff { width : 100%; } --></style> <title>[rhq-project.org rhq] [1627] add a second version of toString() that takes a verbose flag and make use of it to print the full results in OperationInvocation error message</title> </head> <body> <div id="msg"> <dl> <dt>Revision</dt> <dd>1627</dd> <dt>Author</dt> <dd>ispringer</dd> <dt>Date</dt> <dd>2008-09-25 16:52:10 -0500 (Thu, 25 Sep 2008)</dd> </dl> <h3>Log Message</h3> <pre>add a second version of toString() that takes a verbose flag and make use of it to print the full results in OperationInvocation error message</pre> <h3>Modified Paths</h3> <ul> <li><a href="#rhqtrunkmodulescoredomainsrcmainjavaorgrhqcoredomainconfigurationConfigurationjava">rhq/trunk/modules/core/domain/src/main/java/org/rhq/core/domain/configuration/Configuration.java</a></li> <li><a href="#rhqtrunkmodulescoreplugincontainersrcmainjavaorgrhqcorepcoperationOperationInvocationjava">rhq/trunk/modules/core/plugin-container/src/main/java/org/rhq/core/pc/operation/OperationInvocation.java</a></li> </ul> </div> <div id="patch"> <h3>Diff</h3> <a id="rhqtrunkmodulescoredomainsrcmainjavaorgrhqcoredomainconfigurationConfigurationjava"></a> <div class="modfile"><h4>Modified: rhq/trunk/modules/core/domain/src/main/java/org/rhq/core/domain/configuration/Configuration.java (1626 => 1627)</h4> <pre class="diff"> <span class="info">--- rhq/trunk/modules/core/domain/src/main/java/org/rhq/core/domain/configuration/Configuration.java 2008-09-25 21:50:16 UTC (rev 1626) +++ rhq/trunk/modules/core/domain/src/main/java/org/rhq/core/domain/configuration/Configuration.java 2008-09-25 21:52:10 UTC (rev 1627) </span><span class="lines">@@ -498,22 +498,28 @@ </span><span class="cx"> @Override public String toString() { </span><span class="add">+ // Default to non-verbose (i.e. not printing the properties), since printing them makes toStrings extremely + // verbose for large configs. + final boolean verbose = false; + return toString(verbose); + } + + public String toString(boolean verbose) { </span><span class="cx"> StringBuilder builder = new StringBuilder("Configuration[id=").append(this.id); </span><span class="rem">- if (this.notes != null) { </span><span class="add">+ if (this.notes != null) </span><span class="cx"> builder.append(", notes=").append(this.notes); </span><span class="rem">- } </span><span class="cx"> </span><span class="rem">- /* This makes toStrings extremely verbose for large configs - for (Property property : this.getMap().values()) { - builder.append(", "); - builder.append(property.getName()); - builder.append("="); - if (property instanceof PropertySimple) { - builder.append(((PropertySimple) property).getStringValue()); - } else { - builder.append(property); </span><span class="add">+ if (verbose) { + for (Property property : this.getMap().values()) { + builder.append(", "); + builder.append(property.getName()); + builder.append("="); + if (property instanceof PropertySimple) + builder.append(((PropertySimple) property).getStringValue()); + else + builder.append(property); </span><span class="cx"> } </span><span class="rem">- }*/ </span><span class="add">+ } </span><span class="cx"> return builder.append("]").toString(); } </span></pre></div> <a id="rhqtrunkmodulescoreplugincontainersrcmainjavaorgrhqcorepcoperationOperationInvocationjava"></a> <div class="modfile"><h4>Modified: rhq/trunk/modules/core/plugin-container/src/main/java/org/rhq/core/pc/operation/OperationInvocation.java (1626 => 1627)</h4> <pre class="diff"> <span class="info">--- rhq/trunk/modules/core/plugin-container/src/main/java/org/rhq/core/pc/operation/OperationInvocation.java 2008-09-25 21:50:16 UTC (rev 1626) +++ rhq/trunk/modules/core/plugin-container/src/main/java/org/rhq/core/pc/operation/OperationInvocation.java 2008-09-25 21:52:10 UTC (rev 1627) </span><span class="lines">@@ -219,7 +219,7 @@ </span><span class="cx"> .getResultsConfigurationDefinition()); // TODO: Validate the result Configuration? } else { </span><span class="rem">- log.error("Plugin error: Operation [" + this.operationDefinition.getName() + "] is defined as returning no results, but it returned non-null results: " + result); </span><span class="add">+ log.error("Plugin error: Operation [" + this.operationDefinition.getName() + "] is defined as returning no results, but it returned non-null results: " + result.toString(true)); </span><span class="cx"> result = null; // Don't return results that the GUI won't be able to display anyway. } } </span> </pre> </div> </div> </body> </html> |