@Override
    public GeodeConsoleAppender build() {
      ConsoleAppender.Builder<?> delegate = new ConsoleAppender.Builder<>();
      // AbstractAppender
      delegate.setFilter(getFilter());
      delegate.setName(getName() + "_DELEGATE");
      delegate.setIgnoreExceptions(isIgnoreExceptions());
      delegate.setLayout(getLayout());
      // AbstractOutputStreamAppender
      delegate.setImmediateFlush(isImmediateFlush());
      delegate.setBufferedIo(isBufferedIo());
      delegate.setBufferSize(getBufferSize());
      // ConsoleAppender
      delegate.setTarget(target);
      delegate.setFollow(follow);
      delegate.setDirect(direct);

      Layout<? extends Serializable> layout = getOrCreateLayout(target.getDefaultCharset());
      return new GeodeConsoleAppender(getName(), layout,
          getFilter(), getManager(target, follow, direct, layout),
          isIgnoreExceptions(), startPaused, debug, delegate.build());
    }
Builds GeodeConsoleAppender instances.

@param <B> The type to build
geode-log4j/src/main/java/org/apache/geode/logging/log4j/internal/impl/GeodeConsoleAppender.java