/** Loads the buffer via SourceMapper, and maps it in SourceMapper */ private IBuffer mapSource( SourceMapper mapper, ClassFileElementInfo info, IClassFile bufferOwner) { char[] contents = mapper.findSource(getPart(), info.getEglFileName(), info.getCaseSensitivePackageName()); // create buffer BufferManager bufManager = getBufferManager(); IBuffer buffer = bufManager.createBuffer(bufferOwner); if (buffer == null) return null; bufManager.addBuffer(buffer); if (contents != null) { // set the buffer source if (buffer.getCharacters() == null) { buffer.setContents(contents); } } else { if (buffer.getCharacters() == null) { String result = EGLModelResources.eglarNoSourceAttachmentContent; buffer.setContents(result.toCharArray()); } } buffer.addBufferChangedListener(this); return buffer; }
/** Loads the buffer via SourceMapper, and maps it in SourceMapper */ private IBuffer mapSource(SourceMapper mapper, IBinaryType info, IClassFile bufferOwner) { char[] contents = mapper.findSource(getType(), info); if (contents != null) { // create buffer IBuffer buffer = BufferManager.createBuffer(bufferOwner); if (buffer == null) return null; BufferManager bufManager = getBufferManager(); bufManager.addBuffer(buffer); // set the buffer source if (buffer.getCharacters() == null) { buffer.setContents(contents); } // listen to buffer changes buffer.addBufferChangedListener(this); // do the source mapping mapper.mapSource(getOuterMostEnclosingType(), contents, info); return buffer; } else { // create buffer IBuffer buffer = BufferManager.createNullBuffer(bufferOwner); if (buffer == null) return null; BufferManager bufManager = getBufferManager(); bufManager.addBuffer(buffer); // listen to buffer changes buffer.addBufferChangedListener(this); return buffer; } }