package ex;
import java.util.Collections;
import java.util.HashMap;
import java.util.HashSet;
import java.util.Iterator;
import java.util.Map;
import java.util.Set;
@SuppressWarnings("all")
public class BSB_Sample {
private Object lock = new Object();
private Set<String> info = new HashSet<String>();
private Map<String, Object> synchMap = Collections.synchronizedMap(new HashMap<String, Object>());
public void testFieldBeginBloated(int i, int j) {
synchronized (lock) {
StringBuffer sb = new StringBuffer();
sb.append("Test");
sb.append(i);
info.add(sb.toString());
}
}
public void testLocalBeginBloated(int j) {
Set<String> i = getInfo();
synchronized (i) {
StringBuffer sb = new StringBuffer();
sb.append("Test");
sb.append(j);
i.add(sb.toString());
}
}
public void testAliasedLocalBeginBloated(int j) {
Set<String> i = getInfo();
synchronized (info) {
StringBuffer sb = new StringBuffer();
sb.append("Test");
sb.append(j);
i.add(sb.toString());
}
}
public void testBranchCutDown(int j) {
Set<String> i = getInfo();
synchronized (i) {
StringBuffer sb = new StringBuffer();
if (sb.length() > 0) {
sb.append("Test");
sb.append(j);
i.add(sb.toString());
}
}
}
public Set<String> getInfo() {
return info;
}
public void accessSyncMap() {
Set keySet = synchMap.keySet();
synchronized (synchMap) {
for (Iterator it = keySet.iterator(); it.hasNext();) {
String key = (String) it.next();
Object obj = synchMap.get(key);
}
}
}
}