From af57baed0d81ffaf7ae6b889dd26d9647a8862f0 Mon Sep 17 00:00:00 2001 From: ?? ? <ulysseskao@ximple.com.tw> Date: Fri, 22 Aug 2008 19:26:24 +0800 Subject: [PATCH] update for EOFM-152 --- xdgnjobs/ximple-dgnio/src/main/java/com/ximple/util/PrintfFormat.java | 16 ++-- xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/jobs/AbstractOracleDatabaseJob.java | 2 xdgnjobs/ximple-dgnio/src/main/java/com/ximple/io/dgn7/TcbElement.java | 4 xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/jobs/context/shapefile/GeneralDgnConvertShpJobContext.java | 2 xdgnjobs/ximple-dgnio/src/main/java/com/ximple/io/dgn7/TextElement.java | 2 xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/jobs/OracleConvertDgn2PostGISJob.java | 107 +++++++++++++++++++++++++++++------ xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/jobs/context/orasdo/GeneralDgnConvertOraSDOJobContext.java | 2 xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/jobs/context/mysql/GeneralDgnConvertMySQLJobContext.java | 2 xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/jobs/context/postgis/AbstractOracleToPostGISJobContext.java | 6 +- xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/util/PrintfFormat.java | 16 ++-- xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/jobs/context/postgis/GeneralDgnConvertPostGISJobContext.java | 2 xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/filter/CreateTextStrategy.java | 2 xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/jobs/context/postgis/AbstractDgnToPostGISJobContext.java | 12 ++-- 13 files changed, 121 insertions(+), 54 deletions(-) diff --git a/xdgnjobs/ximple-dgnio/src/main/java/com/ximple/io/dgn7/TcbElement.java b/xdgnjobs/ximple-dgnio/src/main/java/com/ximple/io/dgn7/TcbElement.java index 2a2e165..58519ae 100644 --- a/xdgnjobs/ximple-dgnio/src/main/java/com/ximple/io/dgn7/TcbElement.java +++ b/xdgnjobs/ximple-dgnio/src/main/java/com/ximple/io/dgn7/TcbElement.java @@ -39,7 +39,7 @@ java.nio.charset.Charset.forName("US-ASCII"); // ASCIIEncoding encode = new ASCIIEncoding(); - StringBuffer sb = new StringBuffer(); + StringBuilder sb = new StringBuilder(); sb.append((char) master[0]); @@ -54,7 +54,7 @@ sub[0] = (byte) (raw[561] & 0x00ff); sub[1] = (byte) (raw[561] >> 8 & 0x00ff); - StringBuffer sb = new StringBuffer(); + StringBuilder sb = new StringBuilder(); sb.append((char) sub[0]); sb.append((char) sub[0]); diff --git a/xdgnjobs/ximple-dgnio/src/main/java/com/ximple/io/dgn7/TextElement.java b/xdgnjobs/ximple-dgnio/src/main/java/com/ximple/io/dgn7/TextElement.java index 6cbcb65..6cf8570 100644 --- a/xdgnjobs/ximple-dgnio/src/main/java/com/ximple/io/dgn7/TextElement.java +++ b/xdgnjobs/ximple-dgnio/src/main/java/com/ximple/io/dgn7/TextElement.java @@ -164,7 +164,7 @@ public String getText() { - StringBuffer val = new StringBuffer(); + StringBuilder val = new StringBuilder(); char[] temp; int num = getTextLength(); diff --git a/xdgnjobs/ximple-dgnio/src/main/java/com/ximple/util/PrintfFormat.java b/xdgnjobs/ximple-dgnio/src/main/java/com/ximple/util/PrintfFormat.java index 5ec015f..8e2bf6b 100644 --- a/xdgnjobs/ximple-dgnio/src/main/java/com/ximple/util/PrintfFormat.java +++ b/xdgnjobs/ximple-dgnio/src/main/java/com/ximple/util/PrintfFormat.java @@ -635,7 +635,7 @@ ConversionSpecification cs = null; char c = 0; int i = 0; - StringBuffer sb = new StringBuffer(); + StringBuilder sb = new StringBuilder(); while (e.hasMoreElements()) { @@ -731,7 +731,7 @@ Enumeration e = vFmt.elements(); ConversionSpecification cs = null; char c = 0; - StringBuffer sb = new StringBuffer(); + StringBuilder sb = new StringBuilder(); while (e.hasMoreElements()) { @@ -764,7 +764,7 @@ Enumeration e = vFmt.elements(); ConversionSpecification cs = null; char c = 0; - StringBuffer sb = new StringBuffer(); + StringBuilder sb = new StringBuilder(); while (e.hasMoreElements()) { @@ -800,7 +800,7 @@ Enumeration e = vFmt.elements(); ConversionSpecification cs = null; char c = 0; - StringBuffer sb = new StringBuffer(); + StringBuilder sb = new StringBuilder(); while (e.hasMoreElements()) { @@ -836,7 +836,7 @@ Enumeration e = vFmt.elements(); ConversionSpecification cs = null; char c = 0; - StringBuffer sb = new StringBuffer(); + StringBuilder sb = new StringBuilder(); while (e.hasMoreElements()) { @@ -871,7 +871,7 @@ Enumeration e = vFmt.elements(); ConversionSpecification cs = null; char c = 0; - StringBuffer sb = new StringBuffer(); + StringBuilder sb = new StringBuilder(); while (e.hasMoreElements()) { @@ -912,7 +912,7 @@ Enumeration e = vFmt.elements(); ConversionSpecification cs = null; char c = 0; - StringBuffer sb = new StringBuffer(); + StringBuilder sb = new StringBuilder(); while (e.hasMoreElements()) { @@ -1223,7 +1223,7 @@ */ String getLiteral() { - StringBuffer sb = new StringBuffer(); + StringBuilder sb = new StringBuilder(); int i = 0; while (i < fmt.length()) diff --git a/xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/filter/CreateTextStrategy.java b/xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/filter/CreateTextStrategy.java index 7257d94..7667761 100644 --- a/xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/filter/CreateTextStrategy.java +++ b/xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/filter/CreateTextStrategy.java @@ -103,7 +103,7 @@ { TextNodeElement nodeElement = (TextNodeElement) element; String[] texts = nodeElement.getTextArray(); - StringBuffer sb = new StringBuffer(); + StringBuilder sb = new StringBuilder(); for (String text : texts) { if (sb.length() != 0) diff --git a/xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/jobs/AbstractOracleDatabaseJob.java b/xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/jobs/AbstractOracleDatabaseJob.java index 3ff0034..f419c5d 100644 --- a/xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/jobs/AbstractOracleDatabaseJob.java +++ b/xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/jobs/AbstractOracleDatabaseJob.java @@ -184,7 +184,7 @@ } } - protected abstract AbstractOracleJobContext prepareJobContext(String filterPath); + protected abstract AbstractOracleJobContext prepareJobContext(String targetSchemaName, String filterPath); protected static byte[] getBytesFromBLOB(BLOB blob) throws SQLException { diff --git a/xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/jobs/OracleConvertDgn2PostGISJob.java b/xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/jobs/OracleConvertDgn2PostGISJob.java index 65d298c..003668e 100644 --- a/xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/jobs/OracleConvertDgn2PostGISJob.java +++ b/xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/jobs/OracleConvertDgn2PostGISJob.java @@ -24,6 +24,7 @@ import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; import org.geotools.data.DataStore; +import org.geotools.data.Transaction; import org.geotools.data.postgis.PostgisDataStore; import org.geotools.data.postgis.PostgisDataStoreFactory; import org.geotools.feature.IllegalAttributeException; @@ -62,6 +63,7 @@ { final static Log logger = LogFactory.getLog(OracleConvertDgn2PostGISJob.class); + private static final String XGVERSION_NAME = "xgversion"; private static final String PGHOST = "PGHOST"; private static final String PGDDATBASE = "PGDDATBASE"; private static final String PGPORT = "PGPORT"; @@ -105,16 +107,9 @@ return logger; } - protected AbstractOracleJobContext prepareJobContext(String filterPath) + protected AbstractOracleJobContext prepareJobContext(String targetSchemaName, String filterPath) { - /* - if (oracleJobContext == null) - { - oracleJobContext = new OracleConvertPostGISJobContext(getDataPath(), getTargetDataStore(), filterPath); - } - return oracleJobContext; - */ - return new OracleConvertPostGISJobContext(getDataPath(), getTargetDataStore(), _pgSchema, filterPath); + return new OracleConvertPostGISJobContext(getDataPath(), getTargetDataStore(), targetSchemaName, filterPath); } protected void extractJobConfiguration(JobDetail jobDetail) throws JobExecutionException @@ -209,22 +204,26 @@ } long t1 = System.currentTimeMillis(); + String targetSchemaName = null; try { logger.info("-- step:clearOutputDatabase --"); clearOutputDatabase(); + targetSchemaName = determineTargetSchemaName(); + if (checkConvertDB()) { logger.info("-- step:convertOracleDB --"); OracleConvertPostGISJobContext jobContext = - (OracleConvertPostGISJobContext) prepareJobContext(_filterPath); + (OracleConvertPostGISJobContext) prepareJobContext(targetSchemaName, _filterPath); jobContext.setSourceDataStore(getSourceDataStore()); // jobContext.setConvertElementIn(_convertElementIn); jobContext.setElementLogging(checkElementLogging()); jobContext.setExecutionContext(context); if (isCopyConnectivityMode()) copyConnectivity(jobContext); + for (String orgSchema : _orgSchema) { @@ -239,15 +238,15 @@ if (checkConvertFile()) { logger.info("-- step:convertIndexDesignFile --"); - convertIndexDesignFile(context); + convertIndexDesignFile(context, targetSchemaName); logger.info("-- step:convertOtherDesignFile --"); - convertOtherDesignFile(context); + convertOtherDesignFile(context, targetSchemaName); } if (checkConvertElementIn()) { logger.info("-- step:convertFeatureDesignFile --"); - convertFeatureDesignFile(context); + convertFeatureDesignFile(context, targetSchemaName); } if (checkCreateDummy()) @@ -330,7 +329,7 @@ } private void exetcuteConvert(OracleConvertPostGISJobContext jobContext, - String querySchema, String dataPath) throws SQLException + String querySchema, String targetSchemaName) throws SQLException { int order = 0; OrderedMap map = getBlobStorageList(jobContext.getOracleConnection(), @@ -638,7 +637,7 @@ * @throws org.quartz.JobExecutionException * exception */ - private void convertIndexDesignFile(JobExecutionContext context) throws JobExecutionException + private void convertIndexDesignFile(JobExecutionContext context, String targetSchemaName) throws JobExecutionException { File indexDir = new File(getDataPath(), "index"); if (!indexDir.exists()) @@ -663,7 +662,7 @@ for (File dgnFile : dgnFiles) { IndexDgnConvertPostGISJobContext convertContext = - new IndexDgnConvertPostGISJobContext(getDataPath(), getTargetDataStore(), _pgSchema); + new IndexDgnConvertPostGISJobContext(getDataPath(), getTargetDataStore(), targetSchemaName); logger.debug("--- start dgnfile-" + dgnFile.toString() + " ---"); try { @@ -778,7 +777,7 @@ * @throws org.quartz.JobExecutionException * exception */ - private void convertOtherDesignFile(JobExecutionContext context) throws JobExecutionException + private void convertOtherDesignFile(JobExecutionContext context, String targetSchemaName) throws JobExecutionException { File otherDir = new File(getDataPath(), "other"); if (!otherDir.exists()) @@ -803,7 +802,7 @@ for (File dgnFile : dgnFiles) { GeneralDgnConvertPostGISJobContext convertContext = - new GeneralDgnConvertPostGISJobContext(getDataPath(), getTargetDataStore(), _pgSchema); + new GeneralDgnConvertPostGISJobContext(getDataPath(), getTargetDataStore(), targetSchemaName); logger.info("--- start dgnfile-" + dgnFile.toString() + " ---"); try { @@ -961,7 +960,7 @@ } } - private void convertFeatureDesignFile(JobExecutionContext context) throws JobExecutionException + private void convertFeatureDesignFile(JobExecutionContext context, String targetSchemaName) throws JobExecutionException { File elminDir = new File(getDataPath(), "elmin"); if (!elminDir.exists()) @@ -986,7 +985,7 @@ for (File dgnFile : dgnFiles) { FeatureDgnConvertPostGISJobContext convertContext = - new FeatureDgnConvertPostGISJobContext(getDataPath(), getTargetDataStore(), _pgSchema, _filterPath); + new FeatureDgnConvertPostGISJobContext(getDataPath(), getTargetDataStore(), targetSchemaName, _filterPath); logger.info("--- start dgnfile-" + dgnFile.toString() + " ---"); try { @@ -1155,4 +1154,72 @@ } } + private String determineTargetSchemaName() throws IOException + { + if (targetDataStore == null) return null; + Connection connection = null; + ResultSet rs = null; + String targetSchema = null; + boolean needCreate = false; + try + { + connection = targetDataStore.getConnection(Transaction.AUTO_COMMIT); + rs = connection.getMetaData().getTables(null, _pgSchema, XGVERSION_NAME, new String[] {"TABLE"}); + if (!rs.next()) needCreate = true; + if (needCreate) + createXGeosVersionTable(connection, _pgSchema); + + StringBuilder sbSQL = new StringBuilder(); + } catch (SQLException e) { + logger.warn(e.getMessage(), e); + } finally { + if (connection != null) try { connection.close(); } catch (SQLException e) {}; + } + return targetSchema; + } + + public String encodeSchemaTableName(String schemaName, String tableName) + { + return "\"" + schemaName + "\".\"" + tableName + "\""; + } + + private void createXGeosVersionTable(Connection connection, String pgSchema) throws SQLException + { + Statement stmt = null; + StringBuilder sql = new StringBuilder("CREATE TABLE "); + sql.append(encodeSchemaTableName(pgSchema, XGVERSION_NAME)); + sql.append(" ( vsid serial PRIMARY KEY, "); + sql.append(" vsschema character varying(64) NOT NULL, "); + sql.append(" vsstatus smallint NOT NULL, "); + sql.append(" vstimestamp timestamp with time zone ) "); + try + { + stmt = connection.createStatement(); + stmt.executeUpdate(sql.toString()); + + sql = new StringBuilder("ALTER TABLE "); + sql.append(encodeSchemaTableName(pgSchema, XGVERSION_NAME)); + sql.append(" OWNER TO spatialdb"); + stmt.executeUpdate(sql.toString()); + + sql = new StringBuilder("GRANT ALL ON TABLE "); + sql.append(encodeSchemaTableName(pgSchema, XGVERSION_NAME)); + sql.append(" TO public"); + stmt.executeUpdate(sql.toString()); + + sql = new StringBuilder("INSERT INTO "); + sql.append(encodeSchemaTableName(pgSchema, XGVERSION_NAME)); + sql.append(" ('vsschema', 'vsstatus' ) VALUES ("); + sql.append("'gisrepo1', 0 "); + stmt.executeUpdate(sql.toString()); + + sql = new StringBuilder("INSERT INTO "); + sql.append(encodeSchemaTableName(pgSchema, XGVERSION_NAME)); + sql.append(" ('vsschema', 'vsstatus' ) VALUES ("); + sql.append("'gisrepo2', 0 "); + stmt.executeUpdate(sql.toString()); + } finally { + if (stmt != null) stmt.close(); + } + } } diff --git a/xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/jobs/context/mysql/GeneralDgnConvertMySQLJobContext.java b/xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/jobs/context/mysql/GeneralDgnConvertMySQLJobContext.java index de90663..d759bd1 100644 --- a/xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/jobs/context/mysql/GeneralDgnConvertMySQLJobContext.java +++ b/xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/jobs/context/mysql/GeneralDgnConvertMySQLJobContext.java @@ -280,7 +280,7 @@ double angle = textNodeElement.getRotationAngle(); angle = BigDecimal.valueOf(angle).setScale(3, RoundingMode.HALF_UP).doubleValue(); String[] texts = textNodeElement.getTextArray(); - StringBuffer sb = new StringBuffer(); + StringBuilder sb = new StringBuilder(); for (String text : texts) { if (sb.length() != 0) diff --git a/xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/jobs/context/orasdo/GeneralDgnConvertOraSDOJobContext.java b/xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/jobs/context/orasdo/GeneralDgnConvertOraSDOJobContext.java index fcdcece..3e8bd3a 100644 --- a/xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/jobs/context/orasdo/GeneralDgnConvertOraSDOJobContext.java +++ b/xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/jobs/context/orasdo/GeneralDgnConvertOraSDOJobContext.java @@ -280,7 +280,7 @@ double angle = textNodeElement.getRotationAngle(); angle = BigDecimal.valueOf(angle).setScale(3, RoundingMode.HALF_UP).doubleValue(); String[] texts = textNodeElement.getTextArray(); - StringBuffer sb = new StringBuffer(); + StringBuilder sb = new StringBuilder(); for (String text : texts) { if (sb.length() != 0) diff --git a/xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/jobs/context/postgis/AbstractDgnToPostGISJobContext.java b/xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/jobs/context/postgis/AbstractDgnToPostGISJobContext.java index 24528bb..615191e 100644 --- a/xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/jobs/context/postgis/AbstractDgnToPostGISJobContext.java +++ b/xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/jobs/context/postgis/AbstractDgnToPostGISJobContext.java @@ -321,7 +321,7 @@ result.add(sqlStr); } - StringBuffer sql = new StringBuffer("CREATE TABLE "); + StringBuilder sql = new StringBuilder("CREATE TABLE "); sql.append(encodeSchemaTableName(tableName)); sql.append(" ( gid serial PRIMARY KEY, "); sql.append(makeNonGeomSqlCreate(attributeType)); @@ -349,7 +349,7 @@ String indexName = tableName.replace('-', '_'); //also build a spatial index on each geometry column. - sql = new StringBuffer("CREATE INDEX \"spatial_"); + sql = new StringBuilder("CREATE INDEX \"spatial_"); sql.append(indexName); sql.append("_"); sql.append(anAttributeType.getLocalName().toLowerCase()); @@ -449,10 +449,10 @@ } - private StringBuffer makeNonGeomSqlCreate(AttributeType[] attributeType) + private StringBuilder makeNonGeomSqlCreate(AttributeType[] attributeType) throws IOException { - StringBuffer buf = new StringBuffer(""); + StringBuilder buf = new StringBuilder(""); for (AttributeType anAttributeType : attributeType) { @@ -587,7 +587,7 @@ String attrValue; - StringBuffer statementSQL = new StringBuffer("INSERT INTO " + tableName + " ("); + StringBuilder statementSQL = new StringBuilder("INSERT INTO " + tableName + " ("); // encode insertion for attributes, but remember to avoid auto-increment ones, // they may be included in the feature type as well @@ -650,7 +650,7 @@ String attrValue; - StringBuffer statementSQL = new StringBuffer("INSERT INTO " + tableName + " ("); + StringBuilder statementSQL = new StringBuilder("INSERT INTO " + tableName + " ("); // encode insertion for attributes, but remember to avoid auto-increment ones, // they may be included in the feature type as well diff --git a/xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/jobs/context/postgis/AbstractOracleToPostGISJobContext.java b/xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/jobs/context/postgis/AbstractOracleToPostGISJobContext.java index e972900..5257b99 100644 --- a/xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/jobs/context/postgis/AbstractOracleToPostGISJobContext.java +++ b/xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/jobs/context/postgis/AbstractOracleToPostGISJobContext.java @@ -322,7 +322,7 @@ result.add(sqlStr); } - StringBuffer sql = new StringBuffer("CREATE TABLE "); + StringBuilder sql = new StringBuilder("CREATE TABLE "); sql.append(encodeSchemaTableName(tableName)); sql.append(" ( gid serial PRIMARY KEY, "); sql.append(makeNonGeomSqlCreate(attributeType)); @@ -350,7 +350,7 @@ String indexName = tableName.replace('-', '_'); //also build a spatial index on each geometry column. - sql = new StringBuffer("CREATE INDEX \""); + sql = new StringBuilder("CREATE INDEX \""); sql.append("spatial_"); sql.append(indexName); sql.append("_"); @@ -651,7 +651,7 @@ String attrValue; - StringBuffer statementSQL = new StringBuffer("INSERT INTO " + tableName + " ("); + StringBuilder statementSQL = new StringBuilder("INSERT INTO " + tableName + " ("); // encode insertion for attributes, but remember to avoid auto-increment ones, // they may be included in the feature type as well diff --git a/xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/jobs/context/postgis/GeneralDgnConvertPostGISJobContext.java b/xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/jobs/context/postgis/GeneralDgnConvertPostGISJobContext.java index 5033bac..2881ab4 100644 --- a/xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/jobs/context/postgis/GeneralDgnConvertPostGISJobContext.java +++ b/xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/jobs/context/postgis/GeneralDgnConvertPostGISJobContext.java @@ -321,7 +321,7 @@ double angle = textNodeElement.getRotationAngle(); angle = BigDecimal.valueOf(angle).setScale(3, RoundingMode.HALF_UP).doubleValue(); String[] texts = textNodeElement.getTextArray(); - StringBuffer sb = new StringBuffer(); + StringBuilder sb = new StringBuilder(); for (String text : texts) { if (sb.length() != 0) diff --git a/xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/jobs/context/shapefile/GeneralDgnConvertShpJobContext.java b/xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/jobs/context/shapefile/GeneralDgnConvertShpJobContext.java index 0da1bc0..fc717dd 100644 --- a/xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/jobs/context/shapefile/GeneralDgnConvertShpJobContext.java +++ b/xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/jobs/context/shapefile/GeneralDgnConvertShpJobContext.java @@ -315,7 +315,7 @@ double angle = textNodeElement.getRotationAngle(); angle = BigDecimal.valueOf(angle).setScale(3, RoundingMode.HALF_UP).doubleValue(); String[] texts = textNodeElement.getTextArray(); - StringBuffer sb = new StringBuffer(); + StringBuilder sb = new StringBuilder(); for (String text : texts) { if (sb.length() != 0) diff --git a/xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/util/PrintfFormat.java b/xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/util/PrintfFormat.java index 8aeac8e..0cf5c23 100644 --- a/xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/util/PrintfFormat.java +++ b/xdgnjobs/ximple-spatialjob/src/main/java/com/ximple/eofms/util/PrintfFormat.java @@ -635,7 +635,7 @@ ConversionSpecification cs = null; char c = 0; int i = 0; - StringBuffer sb = new StringBuffer(); + StringBuilder sb = new StringBuilder(); while (e.hasMoreElements()) { @@ -731,7 +731,7 @@ Enumeration e = vFmt.elements(); ConversionSpecification cs = null; char c = 0; - StringBuffer sb = new StringBuffer(); + StringBuilder sb = new StringBuilder(); while (e.hasMoreElements()) { @@ -764,7 +764,7 @@ Enumeration e = vFmt.elements(); ConversionSpecification cs = null; char c = 0; - StringBuffer sb = new StringBuffer(); + StringBuilder sb = new StringBuilder(); while (e.hasMoreElements()) { @@ -800,7 +800,7 @@ Enumeration e = vFmt.elements(); ConversionSpecification cs = null; char c = 0; - StringBuffer sb = new StringBuffer(); + StringBuilder sb = new StringBuilder(); while (e.hasMoreElements()) { @@ -836,7 +836,7 @@ Enumeration e = vFmt.elements(); ConversionSpecification cs = null; char c = 0; - StringBuffer sb = new StringBuffer(); + StringBuilder sb = new StringBuilder(); while (e.hasMoreElements()) { @@ -871,7 +871,7 @@ Enumeration e = vFmt.elements(); ConversionSpecification cs = null; char c = 0; - StringBuffer sb = new StringBuffer(); + StringBuilder sb = new StringBuilder(); while (e.hasMoreElements()) { @@ -912,7 +912,7 @@ Enumeration e = vFmt.elements(); ConversionSpecification cs = null; char c = 0; - StringBuffer sb = new StringBuffer(); + StringBuilder sb = new StringBuilder(); while (e.hasMoreElements()) { @@ -1223,7 +1223,7 @@ */ String getLiteral() { - StringBuffer sb = new StringBuffer(); + StringBuilder sb = new StringBuilder(); int i = 0; while (i < fmt.length()) -- Gitblit v0.0.0-SNAPSHOT