public class Builder extends Analyzer
Analyzer.Check
Processor.CL, Processor.FileLine, Processor.SetLocationImpl
Reporter.SetLocation
Report.Location
Modifier and Type | Field and Description |
---|---|
(package private) static java.lang.String |
_githeadHelp |
private Instructions |
defaultPreProcessMatcher |
private DiffPluginImpl |
differ |
(package private) static DSAnnotations |
dsAnnotations |
(package private) boolean |
firstUse |
(package private) static java.util.regex.Pattern |
GITREF_P
#388 Manifest header to get GIT head Get the head commit number.
|
(package private) static java.util.regex.Pattern |
IR_PATTERN |
private static org.slf4j.Logger |
logger |
private Make |
make |
(package private) static MakeBnd |
makeBnd |
(package private) static MakeCopy |
makeCopy |
(package private) static MetatypeAnnotations |
metatypeAnnotations |
(package private) static MetatypePlugin |
metatypePlugin |
(package private) static ServiceComponent |
serviceComponent |
private java.util.List<java.io.File> |
sourcePath |
private static int |
SPLIT_DEFAULT |
private static int |
SPLIT_ERROR |
private static int |
SPLIT_FIRST |
private static int |
SPLIT_MERGE_FIRST |
private static int |
SPLIT_MERGE_LAST |
private Tree |
tree |
private java.util.regex.Pattern |
xdoNotCopy |
_classesHelp, _md5Help, _packagesHelp, _sha1Help, bndInfo, DEFAULT_CONSUMER_POLICY, DEFAULT_PROVIDER_POLICY, df, fuzzyModifier, fuzzyVersion, fuzzyVersionRange, msgs, nummeric, OBJECT_REFERENCE, OLD_PACKAGEINFO_SYNTAX_P
_fileuri, _uri, basicPlugins, BUFFER_SIZE, current, errors, exceptions, fileMustExist, filter, fixupMessages, included, LIST_SPLITTER, locations, log, missingCommand, modified, PACKAGES_IGNORED, parent, pedantic, pluginLoader, profile, properties, random, strict, trace, upto, warnings
translation
AUGMENT, AUGMENT_CAPABILITY_DIRECTIVE, AUGMENT_RANGE_ATTRIBUTE, AUGMENT_REQUIREMENT_DIRECTIVE, BASELINE, BASELINEREPO, BLUEPRINT_TIMEOUT_ATTRIBUTE, BLUEPRINT_WAIT_FOR_DEPENDENCIES_ATTRIBUTE, BND_ADDXMLTOTEST, BND_LASTMODIFIED, BNDDRIVER, BNDDRIVER_ANT, BNDDRIVER_BND, BNDDRIVER_ECLIPSE, BNDDRIVER_GRADLE, BNDDRIVER_GRADLE_NATIVE, BNDDRIVER_INTELLIJ, BNDDRIVER_MAVEN, BNDDRIVER_OSMORC, BNDDRIVER_SBT, BUILDFILES, BUILDPACKAGES, BUILDPATH, BUILDREPO, BUMPPOLICY, BUNDLE_ACTIVATIONPOLICY, BUNDLE_ACTIVATOR, BUNDLE_BLUEPRINT, BUNDLE_CATEGORY, BUNDLE_CLASSPATH, BUNDLE_CONTACTADDRESS, BUNDLE_CONTRIBUTORS, BUNDLE_COPYRIGHT, BUNDLE_DESCRIPTION, BUNDLE_DEVELOPERS, BUNDLE_DOCURL, BUNDLE_ICON, BUNDLE_LICENSE, BUNDLE_LOCALIZATION, BUNDLE_MANIFESTVERSION, BUNDLE_NAME, BUNDLE_NATIVECODE, BUNDLE_REQUIREDEXECUTIONENVIRONMENT, BUNDLE_SCM, BUNDLE_SPECIFIC_HEADERS, BUNDLE_SYMBOLIC_NAME_ATTRIBUTE, BUNDLE_SYMBOLICNAME, BUNDLE_UPDATELOCATION, BUNDLE_VENDOR, BUNDLE_VERSION, BUNDLE_VERSION_ATTRIBUTE, CACHEDIR, CARDINALITY_DIRECTIVE, CHECK, CLASSPATH, COMMAND_DIRECTIVE, COMPILER_SOURCE, COMPILER_TARGET, COMPONENT_ACTIVATE, COMPONENT_CONFIGURATION_POLICY, COMPONENT_DEACTIVATE, COMPONENT_DESCRIPTORS, COMPONENT_DESIGNATE, COMPONENT_DESIGNATEFACTORY, COMPONENT_DYNAMIC, COMPONENT_ENABLED, COMPONENT_FACTORY, COMPONENT_GREEDY, COMPONENT_IMMEDIATE, COMPONENT_IMPLEMENTATION, COMPONENT_MODIFIED, COMPONENT_MULTIPLE, COMPONENT_NAME, COMPONENT_NAMESPACE, COMPONENT_OPTIONAL, COMPONENT_PROPERTIES, COMPONENT_PROVIDE, COMPONENT_SERVICEFACTORY, COMPONENT_VERSION, componentDirectives, CONDITIONAL_PACKAGE, CONDITIONALPACKAGE, CONDUIT, CONNECTION_SETTINGS, CONSUMER_POLICY, CONTRACT, CREATED_BY, CURRENT_PACKAGE, CURRENT_USES, CURRENT_VERSION, DEBUG, DEFAULT_BAR_EXTENSION, DEFAULT_BND_EXTENSION, DEFAULT_BNDRUN_EXTENSION, DEFAULT_CHARSET, DEFAULT_DO_NOT_COPY, DEFAULT_JAR_EXTENSION, DEFAULT_LAUNCHER_BSN, DEFAULT_PREPROCESSS_MATCHERS, DEFAULT_PROP_BIN_DIR, DEFAULT_PROP_SRC_DIR, DEFAULT_PROP_TARGET_DIR, DEFAULT_PROP_TESTBIN_DIR, DEFAULT_PROP_TESTSRC_DIR, DEFAULT_TESTER_BSN, DEPENDSON, DEPLOY, DEPLOYREPO, DESCRIPTION_ATTRIBUTE, DIFFIGNORE, DIFFPACKAGES, DIGESTS, directives, DISTRO, DONOTCOPY, DSANNOTATIONS, DSANNOTATIONS_OPTIONS, DUPLICATE_MARKER, DYNAMICIMPORT_PACKAGE, EEPROFILE, EEPROFILE_AUTO_ATTRIBUTE, EFFECTIVE_DIRECTIVE, EMBEDDED_REPO, EMPTY, EMPTY_HEADER, EXCLUDE_DIRECTIVE, EXPERIMENTS, EXPORT, EXPORT_CONTENTS, EXPORT_PACKAGE, EXPORT_SERVICE, EXPORTTYPE, EXTENSION, EXTENSION_DIRECTIVE, FAIL_OK, FILTER_DIRECTIVE, FIXUPMESSAGES, FIXUPMESSAGES_IS_DIRECTIVE, FIXUPMESSAGES_IS_ERROR, FIXUPMESSAGES_IS_IGNORE, FIXUPMESSAGES_IS_WARNING, FIXUPMESSAGES_REPLACE_DIRECTIVE, FIXUPMESSAGES_RESTRICT_DIRECTIVE, FRAGMENT_ATTACHMENT_DIRECTIVE, FRAGMENT_HOST, FROM_DIRECTIVE, GESTALT, GESTALT_BATCH, GESTALT_CI, GESTALT_INTERACTIVE, GESTALT_OFFLINE, GESTALT_SHELL, GROUPID, headers, IGNORE_PACKAGE, IGNORE_STANDALONE, IMPORT_DIRECTIVE, IMPORT_PACKAGE, IMPORT_PRIVATE, IMPORT_REFERENCE, IMPORT_SERVICE, importDirectives, INCLUDE, INCLUDE_DIRECTIVE, INCLUDE_RESOURCE, INCLUDERESOURCE, INIT, INTERNAL_EXPORTED_DIRECTIVE, INTERNAL_SOURCE_DIRECTIVE, INVALIDFILENAMES, JAVA, JAVA_DEBUG, JAVAAGENT, JAVAC, JAVAC_PROFILE, JAVAC_SOURCE, JAVAC_TARGET, JIDENTIFIER, KEYSTORE_LOCATION_DIRECTIVE, KEYSTORE_PASSWORD_DIRECTIVE, KEYSTORE_PROVIDER_DIRECTIVE, LANGUAGE_ATTRIBUTE, LAUNCHER_PLUGIN, LIB_DIRECTIVE, LINK_ATTRIBUTE, LITERAL_ATTRIBUTE, MAKE, MANDATORY_DIRECTIVE, MANIFEST, MANIFEST_NAME, MAVEN_RELEASE, META_PERSISTENCE, METAPACKAGES, METATYPE, METATYPE_ANNOTATIONS, METATYPE_ANNOTATIONS_OPTIONS, NAME_ATTRIBUTE, NAMESECTION, NAMESPACE_STEM, NO_IMPORT_DIRECTIVE, NOANNOTATIONS, NOBUILDINCACHE, NOBUNDLES, NODEFAULTVERSION, NOEE, NOEXTRAHEADERS, NOJUNIT, NOJUNITOSGI, NOMANIFEST, NONE, NOUSES, OPTIONAL, options, OSNAME_ATTRIBUTE, OSVERSION_ATTRIBUTE, OUTPUT, OUTPUTMASK, PACKAGE, PACKAGE_JPM, PACKAGEINFOTYPE, PATH_DIRECTIVE, PEDANTIC, PLUGIN, PLUGINPATH, PLUGINPATH_SHA1_ATTR, PLUGINPATH_URL_ATTR, POM, PREPROCESSMATCHERS, PRESENCE_DIRECTIVE, PRIVATE_DIRECTIVE, PRIVATE_PACKAGE, PRIVATEPACKAGE, PROCESSOR_ATTRIBUTE, PROFILE, PROVIDE_CAPABILITY, PROVIDE_DIRECTIVE, PROVIDER_POLICY, PROVIDER_TYPE_DIRECTIVE, RELEASEREPO, REMOVE_ATTRIBUTE_DIRECTIVE, REMOVEHEADERS, REPORTNEWER, REPOSITORIES, REQUIRE_BND, REQUIRE_BUNDLE, REQUIRE_CAPABILITY, RESOLUTION, RESOLUTION_DIRECTIVE, RESOLUTION_DYNAMIC, RESOLVE, RESOURCEONLY, RUNBLACKLIST, RUNBUILDS, RUNBUNDLES, RUNEE, RUNENV, RUNFRAMEWORK, RUNFRAMEWORK_NONE, RUNFRAMEWORK_SERVICES, RUNFW, RUNJDB, RUNKEEP, RUNNOREFERENCES, RUNPATH, RUNPATH_LAUNCHER_DIRECTIVE, RUNPATH_MAIN_DIRECTIVE, RUNPROGRAMARGS, RUNPROPERTIES, RUNPROVIDEDCAPABILITIES, RUNREMOTE, RUNREPOS, RUNREQUIRE, RUNREQUIRES, RUNSTORAGE, RUNSYSTEMCAPABILITIES, RUNSYSTEMPACKAGES, RUNTIMEOUT, RUNTRACE, RUNVM, SAVEMANIFEST, SELECTION_FILTER_ATTRIBUTE, SERVICE_COMPONENT, SET_COMPONENT_DIRECTIVES, SET_COMPONENT_DIRECTIVES_1_1, SET_COMPONENT_DIRECTIVES_1_2, SIGN, SIGN_PASSWORD_DIRECTIVE, SIGNATURE_TEST, SINGLETON_DIRECTIVE, SIZE_ATTRIBUTE, SNAPSHOT, SOURCEPATH, SOURCES, SPECIFICATION_VERSION, SPLIT_PACKAGE_DIRECTIVE, STANDALONE, STRICT, SUB, SYSTEMPROPERTIES, TESTCASES, TESTCONTINUOUS, TESTER, TESTER_PLUGIN, TESTPACKAGES, TESTPATH, TESTREPORT, TESTSOURCES, TESTSUITES, TESTUNRESOLVED, TOOL, TSTAMP, UNDERTEST, UPTO, USES_DIRECTIVE, USES_USES, VALID_PROPERTY_TYPES, VERBOSE, VERSION_ATTR_HASH, VERSION_ATTR_LATEST, VERSION_ATTR_PROJECT, VERSION_ATTR_SNAPSHOT, VERSION_ATTRIBUTE, VERSION_FILTER, VISIBILITY_DIRECTIVE, WAB, WABLIB, WORKINGSET, WORKINGSET_MEMBER
Modifier and Type | Method and Description |
---|---|
java.lang.String |
_githead(java.lang.String[] args) |
java.lang.String |
_maven_version(java.lang.String[] args)
A macro to convert a maven version to an OSGi version
|
java.lang.String |
_permissions(java.lang.String[] args) |
boolean |
addAll(Jar to,
Jar sub,
Instruction filter)
Add all the resources in the given jar that match the given filter.
|
boolean |
addAll(Jar to,
Jar sub,
Instruction filter,
java.lang.String destination)
Add all the resources in the given jar that match the given filter.
|
void |
addSourcepath(java.util.Collection<java.io.File> sourcepath) |
void |
addSourcepath(java.io.File cp) |
private void |
addSources(Jar dot) |
private void |
addWabLib(Jar dot,
java.io.File f)
Add a wab lib to the jar.
|
void |
analyze()
Intercept the call to analyze and cleanup versions after we have analyzed
the setup.
|
Jar |
build() |
Jar[] |
builds()
Build Multiple jars.
|
protected void |
changedFile(java.io.File f) |
void |
cleanupVersion(Packages packages,
java.lang.String defaultVersion) |
private void |
copy(Jar dest,
Jar srce,
java.lang.String path,
boolean overwrite)
Cop
|
private void |
copy(Jar jar,
java.lang.String path,
java.io.File from,
Instructions preprocess,
java.util.Map<java.lang.String,java.lang.String> extra) |
private void |
copy(Jar jar,
java.lang.String path,
Resource resource,
java.util.Map<java.lang.String,java.lang.String> extra) |
private void |
copyPackage(Jar dest,
java.util.List<Jar> providers,
java.lang.String path,
int splitStrategy)
Copy the package from the providers based on the split package strategy.
|
private java.lang.String |
diagnostic(java.lang.String pack,
java.util.List<Jar> culprits)
Analyze the classpath for a split package
|
protected void |
doBaseline(Jar dot)
Base line against a previous version.
|
private void |
doCommand(Jar jar,
java.lang.String source,
java.lang.String destination,
java.util.Map<java.lang.String,java.lang.String> extra,
Instructions preprocess,
boolean absentIsOk)
It is possible in Include-Resource to use a system command that generates
the contents, this is indicated with
cmd attribute. |
void |
doDiff(Jar dot)
Diff this bundle to another bundle for the given packages.
|
private void |
doDigests(Jar dot)
Check if we need to calculate any checksums.
|
private void |
doExpand(Jar dot) |
private java.util.Set<Instruction> |
doExpand(Jar jar,
MultiMap<java.lang.String,Jar> index,
Instructions filter)
Destructively filter the packages from the build up index.
|
private void |
doIncludeResource(Jar jar,
Parameters clauses) |
private void |
doIncludeResource(Jar jar,
java.lang.String includes) |
private void |
doIncludeResource(Jar jar,
java.lang.String name,
java.util.Map<java.lang.String,java.lang.String> extra) |
private void |
doIncludeResources(Jar jar)
Parse the Bundle-Includes header.
|
protected void |
doneBuild(Builder builder)
Called when we're done with a builder
|
boolean |
doNotCopy(java.io.File from) |
boolean |
doNotCopy(java.lang.String v)
doNotCopy The doNotCopy variable maintains a patter for files that should
not be copied.
|
(package private) void |
doPom(Jar dot) |
private java.lang.String |
doResourceDirectory(Jar jar,
java.util.Map<java.lang.String,java.lang.String> extra,
Instructions preprocess,
java.io.File sourceFile,
java.lang.String destinationPath) |
private void |
doSaveManifest(Jar dot)
Get the manifest and write it out separately if -savemanifest is set
|
private java.lang.String |
doSnapshot(java.lang.String version) |
private void |
doVerify(Jar dot) |
private Jar |
doWab(Jar dot)
Turn this normal bundle in a web and add any resources.
|
private void |
extractFromJar(Jar jar,
java.lang.String source,
java.lang.String destination,
boolean absentIsOk)
Extra resources from a Jar and add them to the given jar.
|
private java.util.List<Jar> |
filterFrom(Instruction from,
java.util.List<Jar> providers) |
private long |
findLastModifiedWhileOlder(java.io.File file,
long lastModified)
Check if a file or directory is older than the given time.
|
java.lang.String |
getClasspathEntrySuffix(java.io.File resource)
Answer the string of the resource that it has in the container.
|
java.util.regex.Pattern |
getDoNotCopy() |
protected Jar |
getExtra()
Answer extra packages.
|
private java.util.Collection<java.lang.String> |
getIncludedResourcePrefixes()
Extra the paths for the directories and files that are used in the
Include-Resource header.
|
private Instructions |
getPreProcessMatcher(java.util.Map<java.lang.String,java.lang.String> extra) |
java.util.Collection<java.io.File> |
getSourcePath() |
private int |
getSplitStrategy(java.lang.String type) |
Builder |
getSubBuilder() |
Builder |
getSubBuilder(java.io.File file) |
java.util.List<Builder> |
getSubBuilders()
Answer a list of builders that represent this file or a list of files
specified in -sub.
|
boolean |
hasSources() |
void |
init()
Allow any local initialization by subclasses before we build.
|
boolean |
isInScope(java.util.Collection<java.io.File> resources)
Check if the given resource is in scope of this bundle.
|
private Instruction |
matches(Instructions instructions,
java.lang.String pack,
java.util.Set<Instruction> unused,
java.lang.String source)
Matches the instructions against a package.
|
private void |
noSuchFile(Jar jar,
java.lang.String clause,
java.util.Map<java.lang.String,java.lang.String> extra,
java.lang.String source,
java.lang.String destinationPath) |
void |
removeBundleSpecificHeaders() |
void |
report(java.util.Map<java.lang.String,java.lang.Object> table)
Create a report of the settings
|
private void |
resolveFiles(java.io.File dir,
java.io.FileFilter filter,
boolean recursive,
java.lang.String path,
java.util.Map<java.lang.String,java.io.File> files,
boolean flatten) |
void |
setSourcepath(java.io.File[] files) |
protected void |
setTypeSpecificPlugins(java.util.Set<java.lang.Object> list) |
private void |
show(Diff p,
java.lang.String indent,
boolean warning)
Show the diff recursively
|
(package private) void |
sign(Jar jar)
Sign the jar file.
|
protected void |
startBuild(Builder builder)
Called when we start to build a builder
|
private void |
traverse(java.util.List<java.lang.String> paths,
java.io.File item) |
_bsn, _classes, _ee, _exporters, _exports, _findname, _findpath, _imports, _md5, _packageattribute, _packages, _sha1, addClasspath, addClasspath, addClasspath, applyVersionPolicy, assignable, assignable, augmentExports, augmentImports, begin, calcManifest, calculateExportsFromContents, calculateVersionRange, check, cleanupModifier, cleanupUses, cleanupVersion, clear, close, divideRegularAndDynamicImports, doExportsToImports, doNameSection, doPlugins, doRequireBnd, doUses, doUses, filter, findClass, findPath, findProvidedPackages, findResource, fixupAttributes, forceRefresh, getAPIUses, getBndInfo, getBndLastModified, getBndVersion, getBsn, getClasses, getClasspath, getClasspathExports, getClassspace, getClassspace, getContained, getDescriptor, getEEs, getExports, getHighestEE, getImports, getJar, getJarFromName, getJarsFromName, getLowestEE, getManifest, getName, getOutputFile, getPackageRef, getPackages, getPrivates, getReferred, getSourceFileFor, getSourceFileFor, getTarget, getTypeRef, getTypeRefFromFQN, getTypeRefFromPath, getUnreachable, getUses, getVersion, getVersionPolicy, getXRef, isImported, isNoBundle, isResourceOnly, mergeManifest, parsePackageinfo, putAll, referred, referTo, referToByBinaryName, removeAttributes, removeDynamicImports, removeTransitive, save, setBase, setClasspath, setClasspath, setClasspath, setClasspath, setDefaults, setDiagnostics, setJar, setJar, setTypeLocation, validResourcePath, verifyManifestHeadersCase
_basedir, _fileuri, _findfile, _frange, _native_capability, _propertiesdir, _propertiesname, _random, _thisfile, _uri, addBasicPlugin, addClose, addExtensions, addIncluded, addProperties, addProperties, append, appendPath, beginHandleErrors, check, concat, customize, doAttrbutes, doIncludeFile, doIncludeFile, endHandleErrors, error, error, exception, exists, findHeader, findHeader, findHeader, formatArrays, get, get, getBase, getBaseURI, getClass, getDuration, getErrors, getExecutor, getFile, getFile, getFlattenedProperties, getFlattenedProperties, getHeader, getHeader, getHeader, getHeader, getIncluded, getInfo, getInfo, getLine, getLoader, getLocation, getLogger, getMacroDomains, getManifestAsProperties, getMergedParameters, getParent, getPlugin, getPlugins, getPlugins, getProperties, getPropertiesFile, getProperty, getProperty, getProperty, getPropertyKeys, getReplacer, getScheduledExecutor, getSettings, getTop, getUnprocessedProperty, getWarnings, is, isDuplicate, isExceptions, isFailOk, isMissingPlugin, isOk, isPedantic, isPerfect, isStrict, isTrace, isTrue, iterator, join, join, join, join, join, keySet, lastModified, loadPlugins, loadProperties, loadProperties0, makePrintable, merge, mergeLocalProperties, mergeProperties, mergeProperties, mergeProperties, mergeProperties, newHashMap, newList, newList, newMap, newMap, newSet, newSet, normalize, normalize, parseHeader, parseHeader, printClause, printClauses, printClauses, printExceptionSummary, printStackTrace, progress, progress, propertiesChanged, quote, read, refresh, removeBasicPlugin, removeClose, removeDuplicateMarker, replaceAll, replaceExtension, report, set, setExceptions, setFileMustExist, setForceLocal, setParent, setPedantic, setProperties, setProperties, setProperties, setProperties, setProperty, setTrace, signal, since, split, split, split, toFullHeaderPattern, toString, trace, tree, unsetProperty, updateModified, use, warning
copyFrom, domain, domain, domain, domain, domain, getBundleActivator, getBundleCategory, getBundleClasspath, getBundleClassPath, getBundleContactAddress, getBundleCopyright, getBundleDescription, getBundleDocURL, getBundleName, getBundleNative, getBundleRequiredExecutionEnvironment, getBundleSymbolicName, getBundleVendor, getBundleVersion, getDynamicImportPackage, getExportContents, getExportPackage, getFragmentHost, getIcon, getImportPackage, getIncludeResource, getParameters, getParameters, getParameters, getParameters, getPrivatePackage, getProvideCapability, getRequireBundle, getRequireCapability, getRunblacklist, getRunee, isSources, setAugment, setBundleActivator, setBundleClasspath, setBundleRequiredExecutionEnvironment, setBundleSymbolicName, setBundleVersion, setBundleVersion, setConditionalPackage, setExportPackage, setFailOk, setImportPackage, setIncludeResource, setPrivatePackage, setRunblacklist, setRunee, setRunfw, setRunRequires, setSources, setTranslation, translate, translate
private static final org.slf4j.Logger logger
static java.util.regex.Pattern IR_PATTERN
private final DiffPluginImpl differ
private java.util.regex.Pattern xdoNotCopy
private static final int SPLIT_MERGE_LAST
private static final int SPLIT_MERGE_FIRST
private static final int SPLIT_ERROR
private static final int SPLIT_FIRST
private static final int SPLIT_DEFAULT
private final java.util.List<java.io.File> sourcePath
private final Make make
private Instructions defaultPreProcessMatcher
boolean firstUse
private Tree tree
static MakeBnd makeBnd
static MakeCopy makeCopy
static ServiceComponent serviceComponent
static DSAnnotations dsAnnotations
static MetatypePlugin metatypePlugin
static MetatypeAnnotations metatypeAnnotations
static java.util.regex.Pattern GITREF_P
static java.lang.String _githeadHelp
public Builder(Processor parent)
public Builder()
public Jar build() throws java.lang.Exception
java.lang.Exception
void doPom(Jar dot) throws java.lang.Exception, java.io.IOException
java.lang.Exception
java.io.IOException
private void doDigests(Jar dot) throws java.lang.Exception
dot
- java.lang.Exception
public void init() throws java.lang.Exception
java.lang.Exception
private Jar doWab(Jar dot) throws java.lang.Exception
java.lang.Exception
private void addWabLib(Jar dot, java.io.File f) throws java.lang.Exception
f
- java.lang.Exception
private void doSaveManifest(Jar dot) throws java.lang.Exception
dot
- java.lang.Exception
protected void changedFile(java.io.File f)
void sign(Jar jar) throws java.lang.Exception
java.lang.Exception
public boolean hasSources()
protected Jar getExtra() throws java.lang.Exception
public void analyze() throws java.lang.Exception
private java.lang.String doSnapshot(java.lang.String version)
public void cleanupVersion(Packages packages, java.lang.String defaultVersion)
private void addSources(Jar dot) throws java.lang.Exception
java.io.IOException
java.lang.Exception
public java.util.Collection<java.io.File> getSourcePath()
private void doVerify(Jar dot) throws java.lang.Exception
java.lang.Exception
private void doExpand(Jar dot) throws java.lang.Exception
java.lang.Exception
private java.util.Set<Instruction> doExpand(Jar jar, MultiMap<java.lang.String,Jar> index, Instructions filter) throws java.lang.Exception
jar
- name
- instructions
- java.lang.Exception
private java.util.List<Jar> filterFrom(Instruction from, java.util.List<Jar> providers)
from
- private void copyPackage(Jar dest, java.util.List<Jar> providers, java.lang.String path, int splitStrategy)
dest
- providers
- directory
- splitStrategy
- private void copy(Jar dest, Jar srce, java.lang.String path, boolean overwrite)
dest
- srce
- path
- overwriteResource
- private java.lang.String diagnostic(java.lang.String pack, java.util.List<Jar> culprits)
pack
- classpath
- source
- private int getSplitStrategy(java.lang.String type)
private Instruction matches(Instructions instructions, java.lang.String pack, java.util.Set<Instruction> unused, java.lang.String source)
instructions
- The list of instructionspack
- The name of the packageunused
- The total list of patterns, matched patterns are removedsource
- The name of the source container, can be filtered upon with
the from: directive.private void doIncludeResources(Jar jar) throws java.lang.Exception
java.io.IOException
java.io.FileNotFoundException
java.lang.Exception
private void doIncludeResource(Jar jar, java.lang.String includes) throws java.lang.Exception
java.lang.Exception
private void doIncludeResource(Jar jar, Parameters clauses) throws java.util.zip.ZipException, java.io.IOException, java.lang.Exception
java.util.zip.ZipException
java.io.IOException
java.lang.Exception
private void doIncludeResource(Jar jar, java.lang.String name, java.util.Map<java.lang.String,java.lang.String> extra) throws java.util.zip.ZipException, java.io.IOException, java.lang.Exception
java.util.zip.ZipException
java.io.IOException
java.lang.Exception
private Instructions getPreProcessMatcher(java.util.Map<java.lang.String,java.lang.String> extra)
private void doCommand(Jar jar, java.lang.String source, java.lang.String destination, java.util.Map<java.lang.String,java.lang.String> extra, Instructions preprocess, boolean absentIsOk) throws java.lang.Exception
cmd
attribute. The command
can be repeated for a number of source files with the for
attribute which indicates a list of repetitions, often down with the
Macro._lsa(String[])
or Macro#_lsb(String[])
macro. The
repetition will repeat the given command for each item. The @} macro can
be used to replace the current item. If no for
is given, the
source is used as the only item. If the destination contains a macro,
each iteration will create a new file, otherwise the destination name is
used.jar
- source
- destination
- extra
- preprocess
- absentIsOk
- java.lang.Exception
private void traverse(java.util.List<java.lang.String> paths, java.io.File item)
private long findLastModifiedWhileOlder(java.io.File file, long lastModified)
file
- lastModified
- private java.lang.String doResourceDirectory(Jar jar, java.util.Map<java.lang.String,java.lang.String> extra, Instructions preprocess, java.io.File sourceFile, java.lang.String destinationPath) throws java.lang.Exception
java.lang.Exception
private void resolveFiles(java.io.File dir, java.io.FileFilter filter, boolean recursive, java.lang.String path, java.util.Map<java.lang.String,java.io.File> files, boolean flatten)
private void noSuchFile(Jar jar, java.lang.String clause, java.util.Map<java.lang.String,java.lang.String> extra, java.lang.String source, java.lang.String destinationPath) throws java.lang.Exception
java.lang.Exception
private void extractFromJar(Jar jar, java.lang.String source, java.lang.String destination, boolean absentIsOk) throws java.util.zip.ZipException, java.io.IOException
jar
- clauses
- i
- java.util.zip.ZipException
java.io.IOException
public boolean addAll(Jar to, Jar sub, Instruction filter)
sub
- the jarfilter
- a pattern that should match the resoures in sub to be addedpublic boolean addAll(Jar to, Jar sub, Instruction filter, java.lang.String destination)
sub
- the jarfilter
- a pattern that should match the resoures in sub to be addedprivate void copy(Jar jar, java.lang.String path, java.io.File from, Instructions preprocess, java.util.Map<java.lang.String,java.lang.String> extra) throws java.lang.Exception
java.lang.Exception
private void copy(Jar jar, java.lang.String path, Resource resource, java.util.Map<java.lang.String,java.lang.String> extra)
public void setSourcepath(java.io.File[] files)
public void addSourcepath(java.io.File cp)
public Jar[] builds() throws java.lang.Exception
java.lang.Exception
protected void startBuild(Builder builder) throws java.lang.Exception
java.lang.Exception
protected void doneBuild(Builder builder) throws java.lang.Exception
java.lang.Exception
public java.util.List<Builder> getSubBuilders() throws java.lang.Exception
java.lang.Exception
public Builder getSubBuilder(java.io.File file) throws java.lang.Exception
java.lang.Exception
public Builder getSubBuilder() throws java.lang.Exception
java.lang.Exception
public java.lang.String _maven_version(java.lang.String[] args)
public java.lang.String _permissions(java.lang.String[] args)
public void removeBundleSpecificHeaders()
public boolean isInScope(java.util.Collection<java.io.File> resources) throws java.lang.Exception
java.lang.Exception
private java.util.Collection<java.lang.String> getIncludedResourcePrefixes()
public java.lang.String getClasspathEntrySuffix(java.io.File resource) throws java.lang.Exception
resource
- The resource to look forjava.lang.Exception
public boolean doNotCopy(java.lang.String v)
Constants.DEFAULT_DO_NOT_COPY
but this
ca be overridden with the Constants.DONOTCOPY
property.public boolean doNotCopy(java.io.File from)
public java.util.regex.Pattern getDoNotCopy()
protected void setTypeSpecificPlugins(java.util.Set<java.lang.Object> list)
setTypeSpecificPlugins
in class Processor
public void doDiff(Jar dot) throws java.lang.Exception
java.lang.Exception
private void show(Diff p, java.lang.String indent, boolean warning)
p
- i
- public void addSourcepath(java.util.Collection<java.io.File> sourcepath)
protected void doBaseline(Jar dot) throws java.lang.Exception
java.lang.Exception
public java.lang.String _githead(java.lang.String[] args) throws java.io.IOException
java.io.IOException