Exemplo n.º 1
0
  /** 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;
  }
Exemplo n.º 2
0
  /** 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;
    }
  }