propertiesAlreadyLoaded = true; // get parameters previously set by user, or set default values useJavaDefaultFormat =true; // set to use the Java default String useJavaDefaultFormatString = DTProperties.get( thisClassName, "useJavaDefaultFormat"); if (useJavaDefaultFormatString != null && useJavaDefaultFormatString.equals("false")) useJavaDefaultFormat =false; // get which locale-dependent format to use localeFormat =DateFormat.SHORT; // set to use the Java default String localeFormatString = DTProperties.get( thisClassName, "localeFormat"); if (localeFormatString != null) localeFormat = Integer.parseInt(localeFormatString); // use lenient input or force user to enter exact format lenient = true; // set to allow less stringent input String lenientString = DTProperties.get( thisClassName, "lenient"); if (lenientString != null && lenientString.equals("false")) lenient =false; // Bug #1757076 // always use false unless user specifies otherwise; this breaks // date editing in Derby (possibly DB2 as well) readDateAsTimestamp = false; String readDateAsTimestampString = DTProperties.get(thisClassName, "readDateAsTimestamp"); if (readDateAsTimestampString != null && readDateAsTimestampString.equals("true")) { readDateAsTimestamp = true; }
if (propertiesAlreadyLoaded == false) { // get parameters previously set by user, or set default values useJavaDefaultFormat =true; // set to use the Java default String useJavaDefaultFormatString = DTProperties.get( thisClassName, "useJavaDefaultFormat"); if (useJavaDefaultFormatString != null && useJavaDefaultFormatString.equals("false")) useJavaDefaultFormat =false; // get which locale-dependent format to use localeFormat =DateFormat.SHORT; // set to use the Java default String localeFormatString = DTProperties.get( thisClassName, "localeFormat"); if (localeFormatString != null) localeFormat = Integer.parseInt(localeFormatString); // use lenient input or force user to enter exact format lenient = true; // set to allow less stringent input String lenientString = DTProperties.get( thisClassName, "lenient"); if (lenientString != null && lenientString.equals("false")) lenient =false; // how to use Timestamp in WHERE clauses whereClauseUsage = USE_JDBC_ESCAPE_FORMAT; // default to SQL standard String whereClauseUsageString = DTProperties.get( thisClassName, "whereClauseUsage"); if (whereClauseUsageString != null) whereClauseUsage = Integer.parseInt(whereClauseUsageString); }
Clone fragments detected by clone detection tool
File path: /sql12/fw/src/net/sourceforge/squirrel_sql/fw/datasetviewer/cellcomponent/DataTypeDate.java File path: /sql12/fw/src/net/sourceforge/squirrel_sql/fw/datasetviewer/cellcomponent/DataTypeTimestamp.java
Method name: void loadProperties() Method name: void loadProperties()
Number of AST nodes: 17 Number of AST nodes: 17
1
propertiesAlreadyLoaded = true;
1
if (propertiesAlreadyLoaded =
2
			
2
= false) {
3
// get parameters previously set by user, or set default values
3
         // get parameters previously set by user, or set default values
4
			useJavaDefaultFormat =true;	// set to use the Java default
4
         useJavaDefaultFormat =true;	// set to use the Java default
5
			String useJavaDefaultFormatString = DTProperties.get(
5
         String useJavaDefaultFormatString = DTProperties.get(
6
				thisClassName, "useJavaDefaultFormat");
6
            thisClassName, "useJavaDefaultFormat");
7
			if (useJavaDefaultFormatString != null && useJavaDefaultFormatString.equals("false"))
7
         if (useJavaDefaultFormatString != null && useJavaDefaultFormatString.equals("false"))
8
				useJavaDefaultFormat =false;
8
            useJavaDefaultFormat =false;
9
			// get which locale-dependent format to use
9
         // get which locale-dependent format to use
10
			localeFormat =DateFormat.SHORT;	// set to use the Java default
10
         localeFormat =DateFormat.SHORT;	// set to use the Java default
11
			String localeFormatString = DTProperties.get(
11
         String localeFormatString = DTProperties.get(
12
				thisClassName, "localeFormat");
12
            thisClassName, "localeFormat");
13
			if (localeFormatString != null)
13
         if (localeFormatString != null)
14
				localeFormat = Integer.parseInt(localeFormatString);
14
            localeFormat = Integer.parseInt(localeFormatString);
15
			// use lenient input or force user to enter exact format
15
         // use lenient input or force user to enter exact format
16
			lenient = true;	// set to allow less stringent input
16
         lenient = true;	// set to allow less stringent input
17
			String lenientString = DTProperties.get(
17
         String lenientString = DTProperties.get(
18
				thisClassName, "lenient");
18
            thisClassName, "lenient");
19
			if (lenientString != null && lenientString.equals("false"))
19
         if (lenientString != null && lenientString.equals("false"))
20
				lenient =false;
20
            lenient =false;
21
            
22
 
23
           // Bug #1757076
21
         // 
24
            // always use false unless user specifies otherwise; this breaks
25
            // date editing in Derby (possibly DB2 as well)
26
            readDateAsTimestamp = false;
27
            String readDateAsTimestampString = 
28
               
22
how to use Timestamp in WHERE clauses
23
         whereClauseUsage = USE_JDBC_ESCAPE_FORMAT;	// default to SQL standard
29
 DTProperties.get(
24
         String whereClauseUsageString = DTProperties.get(
30
thisClassName, "readDateAsTimestamp");
25
            thisClassName, "whereClauseUsage");
31
            if (readDateAsTimestampString != null && 
26
         if (whereClauseUsageString != null
32
    
27
)
33
                readDateAsTimestampString.equals("true")) 
28
            
34
            {
35
                readDateAsTimestamp = true;
36
      
29
whereClauseUsage = Integer.parseInt(whereClauseUsageString);
37
      }
30
      }
Summary
Number of common nesting structure subtrees1
Number of refactorable cases1
Number of non-refactorable cases0
Time elapsed for finding largest common nesting structure subtrees (ms)1.5
Clones locationClones are in different classes having the same super class
Number of node comparisons50
  1. {Refactorable}
    Mapping Summary
    Number of mapped statements12
    Number of unmapped statements in the first code fragment1
    Number of unmapped statements in the second code fragment0
    Time elapsed for statement mapping (ms)3.8
    Clone typeType 3
    Mapped Statements
    ID Statement ID Statement
    2
    propertiesAlreadyLoaded = true;
    2
    propertiesAlreadyLoaded = true;
    Preondition Violations
    Unmatched statement propertiesAlreadyLoaded=true; cannot be moved before the extracted code, because it has control dependencies from statements that will be extracted
                                                                    
    3
    useJavaDefaultFormat = true;
    2
    useJavaDefaultFormat = true;
    4
    String useJavaDefaultFormatString = DTProperties.get(thisClassName, "useJavaDefaultFormat");
    3
    String useJavaDefaultFormatString = DTProperties.get(thisClassName, "useJavaDefaultFormat");
    5
    if (useJavaDefaultFormatString != null && useJavaDefaultFormatString.equals("false"))
    4
    if (useJavaDefaultFormatString != null && useJavaDefaultFormatString.equals("false"))
    6
    useJavaDefaultFormat = false;
    5
    useJavaDefaultFormat = false;
    7
    localeFormat = DateFormat.SHORT;
    6
    localeFormat = DateFormat.SHORT;
    8
    String localeFormatString = DTProperties.get(thisClassName, "localeFormat");
    7
    String localeFormatString = DTProperties.get(thisClassName, "localeFormat");
    9
    if (localeFormatString != null)
    8
    if (localeFormatString != null)
    10
    localeFormat = Integer.parseInt(localeFormatString);
    9
    localeFormat = Integer.parseInt(localeFormatString);
    11
    lenient = true;
    10
    lenient = true;
    12
    String lenientString = DTProperties.get(thisClassName, "lenient");
    11
    String lenientString = DTProperties.get(thisClassName, "lenient");
    13
    if (lenientString != null && lenientString.equals("false"))
    12
    if (lenientString != null && lenientString.equals("false"))
    14
    lenient = false;
    13
    lenient = false;
    Precondition Violations (1)
    Row Violation
    1Unmatched statement propertiesAlreadyLoaded=true; cannot be moved before the extracted code, because it has control dependencies from statements that will be extracted