Skip to content
38 changes: 27 additions & 11 deletions sqldev/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -33,10 +33,10 @@
</dependency>
<dependency>
<groupId>oracle</groupId>
<artifactId>javatools-nodeps</artifactId>
<version>13.0.0</version>
<artifactId>oracle.javatools-nodeps</artifactId>
<version>12.2.1</version>
<scope>system</scope>
<systemPath>${sqldev.basedir}/modules/oracle.javatools/javatools-nodeps.jar</systemPath>
<systemPath>${sqldev.basedir}/external/oracle.javatools-nodeps.jar</systemPath>
</dependency>
<dependency>
<groupId>oracle</groupId>
Expand Down Expand Up @@ -192,19 +192,19 @@
<!-- used mainly to access the database via JdbcTemplate -->
<groupId>org.springframework</groupId>
<artifactId>spring-jdbc</artifactId>
<version>5.2.6.RELEASE</version>
<version>5.3.2</version>
</dependency>
<dependency>
<!-- transitive reference, but IntelliJ wants to have it explicit (to avoid warnings) -->
<groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
<version>5.2.6.RELEASE</version>
<version>5.3.2</version>
</dependency>
<dependency>
<!-- used for HtmlUtils.htmlEscape in RunnerPanel -->
<groupId>org.springframework</groupId>
<artifactId>spring-web</artifactId>
<version>5.2.6.RELEASE</version>
<version>5.3.2</version>
</dependency>
<dependency>
<!-- optional, for RunGenerator and TestGenerator -->
Expand All @@ -222,7 +222,7 @@
<dependency>
<groupId>org.jetbrains</groupId>
<artifactId>annotations</artifactId>
<version>13.0</version>
<version>20.1.0</version>
<scope>compile</scope>
</dependency>
</dependencies>
Expand Down Expand Up @@ -430,17 +430,33 @@
META-INF/extension.xml=target/classes/META-INF/extension.xml
</Include-Resource>
<Export-Package>
org.utplsql.sqldev,
org.utplsql.sqldev.coverage,
org.utplsql.sqldev.dal,
org.utplsql.sqldev.exception,
org.utplsql.sqldev.menu,
org.utplsql.sqldev.model,
org.utplsql.sqldev.model.oddgen,
org.utplsql.sqldev.model.parser,
org.utplsql.sqldev.model.preference,
org.utplsql.sqldev.actions,
org.utplsql.sqldev.resources
org.utplsql.sqldev.model.runner,
org.utplsql.sqldev.model.ut,
org.utplsql.sqldev.oddgen,
org.utplsql.sqldev.parser,
org.utplsql.sqldev.resources,
org.utplsql.sqldev.runner,
org.utplsql.sqldev.snippet,
org.utplsql.sqldev.ui.common,
org.utplsql.sqldev.ui.coverage,
org.utplsql.sqldev.ui.preference,
org.utplsql.sqldev.ui.runner
</Export-Package>
<_exportcontents>
org.aspectj.runtime.internal,
org.aspectj.lang,
org.aspectj.runtime,
org.aspectj.lang.reflect
org.aspectj.lang.reflect,
org.springframework.core.style,
org.springframework.lang
</_exportcontents>
<Require-Bundle>
oracle.javatools,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -25,10 +25,11 @@
import org.springframework.core.style.ValueStyler;

public class JsonToStringStyler implements ToStringStyler, ValueStyler{
public static final ToStringStyler INSTANCE = new JsonToStringStyler();
public static final String INDENT_SPACES = " ";
private int indent = 0;


private static ThreadLocal<JsonToStringStyler> threadLocal = ThreadLocal.withInitial(JsonToStringStyler::new);

private void newLine(StringBuilder buffer) {
buffer.append('\n');
buffer.append(getIndentSpaces(0));
Expand All @@ -45,7 +46,7 @@ private String getIndentSpaces(int indentOffset) {
private String getStringStyle(String value) {
StringBuilder sb = new StringBuilder();
sb.append('"');
sb.append(value.replace("\"", "\\\"").replace("\n", "\\n").replace("\r", ""));
sb.append(value.replace("\\", "\\\\").replace("\"", "\\\"").replace("\n", "\\n").replace("\r", "").replace("\t", "\\t"));
sb.append('"');
return sb.toString();
}
Expand Down Expand Up @@ -95,7 +96,11 @@ private String getMapStyle(Map<?, ?> map) {
private String getDefaultStyle(Object value) {
return String.valueOf(value);
}


public static ToStringStyler getInstance() {
return threadLocal.get();
}

@Override
public void styleStart(StringBuilder buffer, Object obj) {
indent++;
Expand Down Expand Up @@ -157,7 +162,7 @@ public String style(Object value) {
} else if (value instanceof Map) {
return getMapStyle((Map<?, ?>) value);
} else {
return getDefaultStyle(value);
return getDefaultStyle(value.toString());
}
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ public Connection getConn() {

@Override
public String toString() {
return new ToStringCreator(this, JsonToStringStyler.INSTANCE)
return new ToStringCreator(this, JsonToStringStyler.getInstance())
.append("conn", conn)
.append("objectType", objectType)
.append("objectName", objectName)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@ public class PlsqlObject {

@Override
public String toString() {
return new ToStringCreator(this, JsonToStringStyler.INSTANCE)
return new ToStringCreator(this, JsonToStringStyler.getInstance())
.append("name", name)
.append("type", type)
.append("position", position)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ public class Unit {

@Override
public String toString() {
return new ToStringCreator(this, JsonToStringStyler.INSTANCE)
return new ToStringCreator(this, JsonToStringStyler.getInstance())
.append("name", name)
.append("position", position)
.append("positionOfName", positionOfName)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -70,7 +70,7 @@ public static PreferenceModel getInstance(final PropertyStorage prefs) {

@Override
public String toString() {
return new ToStringCreator(this, JsonToStringStyler.INSTANCE)
return new ToStringCreator(this, JsonToStringStyler.getInstance())
.append(KEY_USE_REALTIME_REPORTER, isUseRealtimeReporter())
.append(KEY_UNSHARED_WORKSHEET, isUnsharedWorksheet())
.append(KEY_RESET_PACKAGE, isResetPackage())
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@ public Counter() {

@Override
public String toString() {
return new ToStringCreator(this, JsonToStringStyler.INSTANCE)
return new ToStringCreator(this, JsonToStringStyler.getInstance())
.append("disabled", disabled)
.append("success", success)
.append("failure", failure)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ public class Expectation {

@Override
public String toString() {
return new ToStringCreator(this, JsonToStringStyler.INSTANCE)
return new ToStringCreator(this, JsonToStringStyler.getInstance())
.append("description", description)
.append("message", message)
.append("caller", caller)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@ public Item() {

@Override
public String toString() {
return new ToStringCreator(this, JsonToStringStyler.INSTANCE)
return new ToStringCreator(this, JsonToStringStyler.getInstance())
.append("id", id)
.append("startTime", startTime)
.append("endTime", endTime)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@ public abstract class PostEvent extends RealtimeReporterEvent {

@Override
public String toString() {
return new ToStringCreator(this, JsonToStringStyler.INSTANCE)
return new ToStringCreator(this, JsonToStringStyler.getInstance())
.append("startTime", startTime)
.append("endTime", endTime)
.append("executionTime", executionTime)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ public class PostRunEvent extends PostEvent {

@Override
public String toString() {
return new ToStringCreator(this, JsonToStringStyler.INSTANCE)
return new ToStringCreator(this, JsonToStringStyler.getInstance())
// ancestor
.append("startTime", getStartTime())
.append("endTime", getEndTime())
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ public class PostSuiteEvent extends PostEvent {

@Override
public String toString() {
return new ToStringCreator(this, JsonToStringStyler.INSTANCE)
return new ToStringCreator(this, JsonToStringStyler.getInstance())
// ancestor
.append("startTime", getStartTime())
.append("endTime", getEndTime())
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@ public class PostTestEvent extends PostEvent {

@Override
public String toString() {
return new ToStringCreator(this, JsonToStringStyler.INSTANCE)
return new ToStringCreator(this, JsonToStringStyler.getInstance())
// ancestor
.append("startTime", getStartTime())
.append("endTime", getEndTime())
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ public class PreRunEvent extends RealtimeReporterEvent {

@Override
public String toString() {
return new ToStringCreator(this, JsonToStringStyler.INSTANCE)
return new ToStringCreator(this, JsonToStringStyler.getInstance())
.append("items", items)
.append("totalNumberOfTests", totalNumberOfTests)
.toString();
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ public class PreSuiteEvent extends RealtimeReporterEvent {

@Override
public String toString() {
return new ToStringCreator(this, JsonToStringStyler.INSTANCE)
return new ToStringCreator(this, JsonToStringStyler.getInstance())
.append("id", id)
.toString();
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ public class PreTestEvent extends RealtimeReporterEvent {

@Override
public String toString() {
return new ToStringCreator(this, JsonToStringStyler.INSTANCE)
return new ToStringCreator(this, JsonToStringStyler.getInstance())
.append("id", id)
.append("testNumber", testNumber)
.append("totalNumberOfTests", totalNumberOfTests)
Expand Down
5 changes: 3 additions & 2 deletions sqldev/src/main/java/org/utplsql/sqldev/model/runner/Run.java
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,7 @@

import org.springframework.core.style.ToStringCreator;
import org.utplsql.sqldev.model.JsonToStringStyler;
import org.utplsql.sqldev.model.URLTools;

@SuppressWarnings("unused")
public class Run {
Expand All @@ -45,7 +46,7 @@ public class Run {

@Override
public String toString() {
return new ToStringCreator(this, JsonToStringStyler.INSTANCE)
return new ToStringCreator(this, JsonToStringStyler.getInstance())
.append("reporterId", reporterId)
.append("connectionName", connectionName)
.append("pathList", pathList)
Expand Down Expand Up @@ -82,7 +83,7 @@ public void setStartTime(final String startTime) {

public String getName() {
final String time = startTime.substring(11, 19);
final String conn = connectionName != null ? connectionName.substring(15) : "n/a";
final String conn = connectionName != null ? URLTools.replaceHexChars(connectionName.substring(15)) : "n/a";
return time + " (" + conn + ")";
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@ public Suite() {

@Override
public String toString() {
return new ToStringCreator(this, JsonToStringStyler.INSTANCE)
return new ToStringCreator(this, JsonToStringStyler.getInstance())
// ancestor
.append("id", getId())
.append("startTime", getStartTime())
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@ public class Test extends Item {

@Override
public String toString() {
return new ToStringCreator(this, JsonToStringStyler.INSTANCE)
return new ToStringCreator(this, JsonToStringStyler.getInstance())
// ancestor
.append("id", getId())
.append("startTime", getStartTime())
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ public class Annotation {

@Override
public String toString() {
return new ToStringCreator(this, JsonToStringStyler.INSTANCE)
return new ToStringCreator(this, JsonToStringStyler.getInstance())
.append("objectOwner", objectOwner)
.append("objectName", objectName)
.append("name", name)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ public class OutputLines {

@Override
public String toString() {
return new ToStringCreator(this, JsonToStringStyler.INSTANCE)
return new ToStringCreator(this, JsonToStringStyler.getInstance())
.append("lines", lines)
.append("numlines", numlines)
.toString();
Expand Down