boolean defaultValueFlag; Object obj; PropValue value = (PropValue)properties.get(name); if(value != null) { obj = value.value; defaultValueFlag = value.defaultValue; } else { obj = getProperty(name); // will be cached from now on... defaultValueFlag = true; } if(obj == null) return defaultValue; else if(obj instanceof Number) return ((Number)obj).intValue(); else { try { int returnValue = Integer.parseInt( obj.toString().trim()); properties.put(name,new PropValue( new Integer(returnValue), defaultValueFlag)); return returnValue; } catch(Exception e) { return defaultValue; } }
synchronized(propertyLock) { boolean defaultValueFlag; Object obj; PropValue value = (PropValue)properties.get(name); if(value != null) { obj = value.value; defaultValueFlag = value.defaultValue; } else { obj = getProperty(name); // will be cached from now on... defaultValueFlag = true; } if(obj == null) return null; else if(obj instanceof RE) return (RE)obj; else { RE re = new RE(obj.toString(),cflags,syntax); properties.put(name,new PropValue(re, defaultValueFlag)); return re; } }
Clone fragments detected by clone detection tool
File path: /jEdit-4.2/src/org/gjt/sp/jedit/Buffer.java File path: /jEdit-4.2/src/org/gjt/sp/jedit/Buffer.java
Method name: int getIntegerProperty(String, int) Method name: RE getRegexpProperty(String, int, RESyntax)
Number of AST nodes: 16 Number of AST nodes: 16
1
synchronized(propertyLock)
2
		{
1
boolean defaultValueFlag;
3
			boolean defaultValueFlag;
2
		Object obj;
4
			Object obj;
3
		PropValue value = (PropValue)properties.get(name);
5
			PropValue value = (PropValue)properties.get(name);
4
		if(value != null)
6
			if(value != null)
5
		{
7
			{
6
			obj = value.value;
8
				obj = value.value;
7
			defaultValueFlag = value.defaultValue;
9
				defaultValueFlag = value.defaultValue;
8
		}
10
			}
9
		else
11
			else
10
		{
12
			{
11
			obj = getProperty(name);
13
				obj = getProperty(name);
12
			// will be cached from now on...
14
				// will be cached from now on...
13
			defaultValueFlag = true;
15
				defaultValueFlag = true;
14
		}
16
			}
15
		if(obj == null)
17
			if(obj == null)
16
			return defaultValue;
18
				return null;
17
		else if(obj instanceof Number)
19
			else if(obj instanceof RE)
18
			return ((Number)obj).intValue();
20
				return (RE)obj;
19
		else
21
			else
20
		{
22
		
21
			try
22
			{
23
				int returnValue = Integer.parseInt(
24
					obj.toString().trim()
23
	{
25
);
24
				RE re = new RE(obj.toString(),cflags,syntax);
26
				properties.put(name,new PropValue(
25
				properties.put(name,new PropValue(
27
					new Integer(returnValue),
26
re,
28
					defaultValueFlag));
27
					defaultValueFlag));
29
				return returnValue;
28
				return re
30
			}
31
			catch(Exception e)
32
			{
33
				return defaultValue;
29
;
34
			}
30
			}
35
		}
31
		}
Summary
Number of common nesting structure subtrees0
Number of refactorable cases0
Number of non-refactorable cases0
Time elapsed for finding largest common nesting structure subtrees (ms)0.1
Clones locationClones are declared in the same class
Number of node comparisons3