aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/objc_tools/plmerge/java/com/google/devtools/build/xcode/plmerge/MergingArguments.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/objc_tools/plmerge/java/com/google/devtools/build/xcode/plmerge/MergingArguments.java')
-rw-r--r--src/objc_tools/plmerge/java/com/google/devtools/build/xcode/plmerge/MergingArguments.java146
1 files changed, 0 insertions, 146 deletions
diff --git a/src/objc_tools/plmerge/java/com/google/devtools/build/xcode/plmerge/MergingArguments.java b/src/objc_tools/plmerge/java/com/google/devtools/build/xcode/plmerge/MergingArguments.java
deleted file mode 100644
index cf6373afc3..0000000000
--- a/src/objc_tools/plmerge/java/com/google/devtools/build/xcode/plmerge/MergingArguments.java
+++ /dev/null
@@ -1,146 +0,0 @@
-// Copyright 2015 The Bazel Authors. All rights reserved.
-//
-// Licensed under the Apache License, Version 2.0 (the "License");
-// you may not use this file except in compliance with the License.
-// You may obtain a copy of the License at
-//
-// http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing, software
-// distributed under the License is distributed on an "AS IS" BASIS,
-// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-// See the License for the specific language governing permissions and
-// limitations under the License.
-package com.google.devtools.build.xcode.plmerge;
-
-import com.google.common.base.Strings;
-import com.google.common.collect.ImmutableList;
-import com.google.common.collect.ImmutableList.Builder;
-import com.google.common.collect.ImmutableMap;
-import com.google.devtools.build.xcode.plmerge.PlMerge.PlMergeOptions;
-import com.google.devtools.build.xcode.plmerge.proto.PlMergeProtos.Control;
-
-import java.nio.file.FileSystem;
-import java.nio.file.FileSystems;
-import java.nio.file.Path;
-import java.util.List;
-import java.util.Map;
-
-/**
- * Container for data consumed by plmerge
- */
-class MergingArguments {
-
- private final FileSystem fileSystem = FileSystems.getDefault();
- private final List<Path> sourceFilePaths;
- private final List<Path> immutableSourceFilePaths;
- private final String outFile;
- private final Map<String, String> variableSubstitutions;
- private final String primaryBundleId;
- private final String fallbackBundleId;
- private final String executableName;
-
- /**
- * Build MergingArguments from a plmerge protobuf.
- */
- public MergingArguments(Control control) {
- ImmutableList.Builder<Path> sourceFilePathsBuilder = new Builder<>();
- for (String pathString : control.getSourceFileList()) {
- sourceFilePathsBuilder.add(fileSystem.getPath(pathString));
- }
- sourceFilePaths = sourceFilePathsBuilder.build();
-
- ImmutableList.Builder<Path> immutableSourceFilePathsBuilder = new Builder<>();
- for (String pathString : control.getImmutableSourceFileList()) {
- immutableSourceFilePathsBuilder.add(fileSystem.getPath(pathString));
- }
- immutableSourceFilePaths = immutableSourceFilePathsBuilder.build();
-
- outFile = control.getOutFile();
- variableSubstitutions = control.getVariableSubstitutionMap();
-
- primaryBundleId = Strings.emptyToNull(control.getPrimaryBundleId());
- fallbackBundleId = Strings.emptyToNull(control.getFallbackBundleId());
- executableName = Strings.emptyToNull(control.getExecutableName());
- }
-
- /**
- * Build MergingArguments from command line arguments passed to the plmerge executable.
- */
- public MergingArguments(PlMergeOptions options) {
- ImmutableList.Builder<Path> sourceFilePathsBuilder = new Builder<Path>();
- for (String sourceFile : options.sourceFiles) {
- sourceFilePathsBuilder.add(fileSystem.getPath(sourceFile));
- }
-
- sourceFilePaths = sourceFilePathsBuilder.build();
- immutableSourceFilePaths = ImmutableList.<Path>of();
- outFile = options.outFile;
- variableSubstitutions = ImmutableMap.<String, String>of();
- primaryBundleId = options.primaryBundleId;
- fallbackBundleId = options.fallbackBundleId;
- executableName = null;
- }
-
- /**
- * Returns paths to the plist files to merge relative to plmerge. These can be
- * binary, XML, or ASCII format.
- */
- public List<Path> getSourceFilePaths() {
- return sourceFilePaths;
- }
-
- /*
- * Returns paths to plist files with keys which may not be overwritten.
- */
- public List<Path> getImmutableSourceFilePaths() {
- return immutableSourceFilePaths;
- }
-
- /**
- * Returns path to the output file to merge relative to plmerge.
- */
- public String getOutFile() {
- return outFile;
- }
-
- /**
- * Returns a reverse-DNS string identifier for this bundle associated with output
- * binary plist. Overrides the bundle id specified in the CFBundleIdentifier
- * plist field.
- */
- public String getPrimaryBundleId() {
- return primaryBundleId;
- }
-
- /**
- * Returns a fallback reverse-DNS string identifier for this bundle when bundle
- * identifier is not specified in primary_bundle_id or an associated plist
- * file.
- */
- public String getFallbackBundleId() {
- return fallbackBundleId;
- }
-
- /**
- * Returns key-value substitutions to support templating for plists. A substitution
- * is made if the substitution key appears as a value for any key-value pair
- * in any source_file.
- * For example, a plist with the entry:
- * <pre><key>CFBundleExectuable</key>
- * <string>EXECUTABLE_NAME</string></pre>
- * could be templated by passing a variable substitution like
- * {"EXECUTABLE_NAME", "PrenotCalculator"}
- */
- public Map<String, String> getVariableSubstitutions() {
- return variableSubstitutions;
- }
-
- /**
- * Returns the name of the executable for the bundle the merged plist is intended for, or null
- * if no such executable exists.
- */
- public String getExecutableName() {
- return executableName;
- }
-}