class SortPrinterColumnsDecorator
    extends CustomResourceDefinitionVersionDecorator<CustomResourceDefinitionVersionFluent<?>> {

  public SortPrinterColumnsDecorator(String name, String version) {
    super(name, version);
  }

  @Override
  public void andThenVisit(CustomResourceDefinitionVersionFluent<?> version) {<FILL_FUNCTION_BODY>}

  @Override
  public Class<? extends Decorator>[] after() {
    return new Class[] { AddCustomResourceDefinitionVersionDecorator.class, AddAdditionPrinterColumnDecorator.class };
  }
}

    List<CustomResourceColumnDefinition> columns = version.buildAdditionalPrinterColumns();
    if (columns != null && !columns.isEmpty()) {
      columns.sort((o1, o2) -> String.CASE_INSENSITIVE_ORDER.compare(o1.getJSONPath(), o2.getJSONPath()));
    }
    version.withAdditionalPrinterColumns(columns);
  
<methods>public void <init>(java.lang.String, java.lang.String) ,public Class<? extends Decorator#RAW>[] after() ,public abstract void andThenVisit(CustomResourceDefinitionVersionFluent<?>) ,public Class<? extends Decorator#RAW>[] before() ,public java.lang.String getName() ,public java.lang.String getVersion() ,public void visit(VisitableBuilder) <variables>protected static final java.lang.String ANY,private final non-sealed java.lang.String name,private final non-sealed java.lang.String version,private final CustomResourceDefinitionVersionVisitor versionSelector,private final VersionVisitor versionVisitor