@Override public final FormatterStep newFormatterStep(FormatterStepConfig config) { String delimiterString = delimiter != null ? delimiter : config.getLicenseHeaderDelimiter(); if (delimiterString == null) { throw new IllegalArgumentException("You need to specify 'delimiter'."); } if (file != null ^ content != null) { FormatterStep step = file != null ? createStepFromFile(config, delimiterString) : createStepFromContent(delimiterString); return step.filterByFile(LicenseHeaderStep.unsupportedJvmFilesFilter()); } else { throw new IllegalArgumentException("Must specify exactly one of 'file' or 'content'."); } }
@Override protected FormatterStep create() { FormatterStep baseStep = FormatterStep.create("name", state, state -> input -> state); if (filter == null) { return baseStep; } else { return baseStep.filterByFile(SerializableFileFilter.skipFilesNamed(filter)); } } }.testEquals();
@Test public void behavior() throws Exception { FormatterStep underTest = ReplaceStep.create("makeSpaceA", " ", "a") .filterByFile(SerializableFileFilter.skipFilesNamed("dontFormat")); assertThat(underTest.format(" ", new File("someFileName"))).isEqualTo("a"); assertThat(underTest.format(" ", new File("dontFormat"))).isEqualTo(" "); }
/** If the user hasn't specified the files yet, we'll assume he/she means all of the java files. */ @Override protected void setupTask(SpotlessTask task) { if (target == null) { JavaPluginConvention javaPlugin = getProject().getConvention().findPlugin(JavaPluginConvention.class); if (javaPlugin == null) { throw new GradleException("You must apply the java plugin before the spotless plugin if you are using the java extension."); } FileCollection union = getProject().files(); for (SourceSet sourceSet : javaPlugin.getSourceSets()) { union = union.plus(sourceSet.getAllJava()); } target = union; } steps.replaceAll(step -> { if (LicenseHeaderStep.name().equals(step.getName())) { return step.filterByFile(LicenseHeaderStep.unsupportedJvmFilesFilter()); } else { return step; } }); super.setupTask(task); } }
return step.filterByFile(LicenseHeaderStep.unsupportedJvmFilesFilter()); } else { return step;