You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@jackrabbit.apache.org by tr...@apache.org on 2018/03/27 05:16:42 UTC
svn commit: r1827806 -
/jackrabbit/commons/filevault/trunk/vault-cli/src/main/java/org/apache/jackrabbit/vault/cli/CmdFormatCli.java
Author: tripod
Date: Tue Mar 27 05:16:42 2018
New Revision: 1827806
URL: http://svn.apache.org/viewvc?rev=1827806&view=rev
Log:
JCRVLT-271 Support a CLI command to format vault xml files
Modified:
jackrabbit/commons/filevault/trunk/vault-cli/src/main/java/org/apache/jackrabbit/vault/cli/CmdFormatCli.java
Modified: jackrabbit/commons/filevault/trunk/vault-cli/src/main/java/org/apache/jackrabbit/vault/cli/CmdFormatCli.java
URL: http://svn.apache.org/viewvc/jackrabbit/commons/filevault/trunk/vault-cli/src/main/java/org/apache/jackrabbit/vault/cli/CmdFormatCli.java?rev=1827806&r1=1827805&r2=1827806&view=diff
==============================================================================
--- jackrabbit/commons/filevault/trunk/vault-cli/src/main/java/org/apache/jackrabbit/vault/cli/CmdFormatCli.java (original)
+++ jackrabbit/commons/filevault/trunk/vault-cli/src/main/java/org/apache/jackrabbit/vault/cli/CmdFormatCli.java Tue Mar 27 05:16:42 2018
@@ -49,16 +49,26 @@ public class CmdFormatCli extends Abstra
boolean checkOnly = cl.hasOption(optCheckOnly);
boolean verbose = cl.hasOption(OPT_VERBOSE);
List<String> givenPatterns = (List<String>) cl.getValues(optPatterns);
- List<Pattern> parsedPatterns = new ArrayList<>(givenPatterns.size());
+ List<String> localPaths = new LinkedList<String>(cl.getValues(argPaths));
+ List<Pattern> parsedPatterns = new ArrayList<>(givenPatterns.size());
+ boolean hasArgSeparator = false;
for (String pattern : givenPatterns) {
- parsedPatterns.add(Pattern.compile(pattern));
+ if ("--".equals(pattern)) {
+ // little hack to separate the patterns from the files
+ hasArgSeparator = true;
+ } else {
+ if (hasArgSeparator) {
+ localPaths.add(0, pattern);
+ } else {
+ parsedPatterns.add(Pattern.compile(pattern));
+ }
+ }
}
if (parsedPatterns.isEmpty()) {
parsedPatterns.add(DEFAULT_PATTERN);
}
- List<String> localPaths = cl.getValues(argPaths);
List<File> localFiles = app.getPlatformFiles(localPaths, true);
if (localFiles.isEmpty()) {
localFiles.add(app.getPlatformFile(".", true));
@@ -122,6 +132,7 @@ public class CmdFormatCli extends Abstra
.withDescription("pattern for recursive format. defaults to match all xml files.")
.withArgument(new ArgumentBuilder()
.withMinimum(0)
+ .withConsumeRemaining("**dummy**")
.create())
.create())
.withOption(argPaths = new ArgumentBuilder()
@@ -143,8 +154,10 @@ public class CmdFormatCli extends Abstra
public String getLongDescription() {
return "Formats the file specified by <path> according to the vault specific docview format." +
"If the <path> points at a directory, the files matching the patterns are processed recursively.\n\n" +
- "Example:\n" +
- " vlt format -c -p '\\\\.content\\\\.xml' content/jcr_root\n\n";
+ "Examples:\n" +
+ " vlt format -c -p '\\.content\\.xml' content/jcr_root\n\n" +
+ "" +
+ " vlt format -p \\.content\\.xml -p _jcr_content\\.xml -- apps/";
}
}