[Demonstration 1]

[Buggy Method]
public void onBinaryMessage(WebSocket websocket, byte[] binary) {
    try {
        Thread.sleep(delay);
        //System.out.println("HASH : " + DatatypeConverter.printHexBinary(MessageDigest.getInstance("MD5").digest(binary)));
    } catch (Exception e) {
        e.printStackTrace();
    }
    //while(!inprogress)
    //{
    //System.out.println(inprogress);
    //}
    write(binary, asy);
}

[Buggy Hunk]
write(binary,asy);

[Patch]
wsc.write(binary,v);

[Demonstration 2]

[Buggy Method]
public static void removeNode(String workflowName, String type, String name) {
    AbstractWorkflow1 aw = abstractWorkflows.get(workflowName);
    aw.removeNode(type, name);
}

[Buggy Hunk]
public static void removeNode(String workflowName, String type, String name) {

[Patch]
public static void removeNode(String workflowName, String type, String name) throws Exception {

[Demonstration 3]

[Buggy Method]
public static String getTextContentFromNodeName(NodeList nodeList, String nodeName) {
    nodeName = StringUtils.trimToEmpty(nodeName);
    if (nodeList == null || StringUtils.isEmpty(nodeName)) {
        return "";
    }
    for (int i = 0; i < nodeList.getLength(); i++) {
        Node node = nodeList.item(i);
        if (nodeName.equalsIgnoreCase(node.getNodeName())) {
            String text = node.getTextContent();
            text = StringUtils.trimToEmpty(text);
            return text;
        }
    }
    return "";
}

[Buggy Hunk]
String text = node.getTextContent();

[Patch]
String text = node.getNodeValue();