[Demonstration 1]

[Buggy Method]
public Folder convert(Configuration configuration, MappingConfig mappingConfig) {
    Map<Resource, ArchimateElement> resourcesTraces = new HashMap<>();
    Map<Link, Relationship> linksTraces = new HashMap<>();
    Folder techFolder = BaseFactory.eINSTANCE.createFolder();
    techFolder.setName(TECHNICAL_LAYER_NAME);
    Folder nodesFolder = BaseFactory.eINSTANCE.createFolder();
    nodesFolder.setName(ModelUtils.NODES_FOLDER_NAME);
    techFolder.getFolders().add(nodesFolder);
    // NOTE unused: configuration.use
    for (Resource resource : configuration.getResources()) {
        EClass elementType = mappingConfig.getArchiType(resource.getKind());
        ArchimateElement element = (ArchimateElement) createArchimateComponentFrom(resource, elementType);
        ModelUtils.getFolderFor(techFolder, element).getElements().add(element);
        resourcesTraces.put(resource, element);
        for (AttributeState attributeState : resource.getAttributes()) {
            convertAttributeState(element, attributeState);
        }
        for (Link link : resource.getLinks()) {
            EClass relationshipType = mappingConfig.getArchiType(link.getKind());
            if (relationshipType == null) {
                throw new UnsupportedOperationException(link.getKind().getTerm());
            }
            Relationship relationship = (Relationship) createArchimateComponentFrom(link, relationshipType);
            linksTraces.put(link, relationship);
            for (AttributeState attributeState : link.getAttributes()) {
                convertAttributeState(relationship, attributeState);
            }
        }
    }
    for (Link link : linksTraces.keySet()) {
        ArchimateElement source = resourcesTraces.get(link.getSource());
        ArchimateElement target = resourcesTraces.get(link.getTarget());
        Relationship relationship = linksTraces.get(link);
        if (relationship instanceof UnidirectionalRelationship) {
            UnidirectionalRelationship ur = (UnidirectionalRelationship) relationship;
            source.getOwnedUnidirectionalRelationships().add(ur);
            ur.setTarget(target);
        } else if (relationship instanceof BidirectionalRelationship) {
            BidirectionalRelationship br = (BidirectionalRelationship) relationship;
            source.getOwnedBidirectionalRelationships().add(br);
            br.setSourceElement(source);
            br.setTargetElement(target);
        }
    }
    return techFolder;
}

[Buggy Hunk]
techFolder.setName(TECHNICAL_LAYER_NAME);

[Patch]
techFolder.setName(ModelUtils.TECHNOLOGY_FOLDER_NAME);

[Demonstration 2]

[Buggy Method]
public static Resource createGraphitiModel(IResource file) {
    URI uri = URI.createPlatformResourceURI(file.getFullPath().toString(), true);
    Resource resource = resourceSet.createResource(uri);
    return resource;
}

[Buggy Hunk]
Resource resource = resourceSet.createResource(uri);

[Patch]
Resource resource = createResourceSet().createResource(uri);