code: @Override
      public final String render(final RenderConfiguration configuration, final Object entity) {
  
          // Check sanity
          if (configuration == null) {
              throw new IllegalArgumentException("Cannot handle null 'configuration' argument.");
          }
          if (entity == null) {
              throw new IllegalArgumentException("Cannot handle null 'entity' argument.");
          }
          if (!accept(entity)) {
              throw new IllegalArgumentException("Entity of type [" + entity.getClass().getName()
                      + "] was not accepted for rendering. Only [" + acceptedType.getName()
                      + "] types can be rendered by this " + getClass().getSimpleName() + " renderer.");
          }
  
          // Find out the combination of newline and ';' which should be emitted after rendering.
          String epilogue = "";
          if (entity instanceof Subgraph) {
              epilogue = configuration.getNewline();
          } else if (entity instanceof Statement) {
              epilogue = " ;" + configuration.getNewline();
          }
  
          // All Done.
          final T castEntity = acceptedType.cast(entity);
          return doRender(configuration, castEntity) + epilogue;
      }
docs: {@inheritDoc}