aQute.lib.osgi
Class Macro
java.lang.Object
aQute.lib.osgi.Macro
- All Implemented Interfaces:
- Replacer
public class Macro
- extends Object
- implements Replacer
Provide a macro processor. This processor can replace variables in strings
based on a properties and a domain. The domain can implement functions that
start with a "_" and take args[], the names of these functions are available
as functions in the macro processor (without the _). Macros can nest to any
depth but may not contain loops.
Add POSIX macros:
${#parameter}
String length.
${parameter%word}
Remove smallest suffix pattern.
${parameter%%word}
Remove largest suffix pattern.
${parameter#word}
Remove smallest prefix pattern.
${parameter##word}
Remove largest prefix pattern.
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
_fmodifiedHelp
public static String _fmodifiedHelp
_fileHelp
public static String _fileHelp
Macro
public Macro(Processor domain,
Object... targets)
process
public String process(String line,
Processor source)
getTerminator
public static char getTerminator(char c)
replace
protected String replace(String key,
aQute.lib.osgi.Macro.Link link)
_uniq
public String _uniq(String[] args)
_pathseparator
public String _pathseparator(String[] args)
_separator
public String _separator(String[] args)
_filter
public String _filter(String[] args)
_filterout
public String _filterout(String[] args)
_sort
public String _sort(String[] args)
_join
public String _join(String[] args)
_if
public String _if(String[] args)
_now
public String _now(String[] args)
_fmodified
public String _fmodified(String[] args)
throws Exception
- Throws:
Exception
_long2date
public String _long2date(String[] args)
_literal
public String _literal(String[] args)
_def
public String _def(String[] args)
_replace
public String _replace(String[] args)
- replace ;
; regex ; replace
- Parameters:
args
-
- Returns:
_warning
public String _warning(String[] args)
_error
public String _error(String[] args)
_toclassname
public String _toclassname(String[] args)
_toclasspath
public String _toclasspath(String[] args)
_dir
public String _dir(String[] args)
_basename
public String _basename(String[] args)
_isfile
public String _isfile(String[] args)
_isdir
public String _isdir(String[] args)
_tstamp
public String _tstamp(String[] args)
_lsr
public String _lsr(String[] args)
- Wildcard a directory. The lists can contain Instruction that are matched
against the given directory
${lsr;;
(;)*} ${lsa;;(;)*}
_lsa
public String _lsa(String[] args)
_currenttime
public String _currenttime(String[] args)
_version
public String _version(String[] args)
_range
public String _range(String[] args)
system_internal
public String system_internal(boolean allowFail,
String[] args)
throws Exception
- System command. Execute a command and insert the result.
- Parameters:
args
- help
- patterns
- low
- high
-
- Throws:
Exception
_system
public String _system(String[] args)
throws Exception
- Throws:
Exception
_system_allow_fail
public String _system_allow_fail(String[] args)
throws Exception
- Throws:
Exception
_env
public String _env(String[] args)
_cat
public String _cat(String[] args)
throws IOException
- Get the contents of a file.
- Parameters:
in
-
- Returns:
-
- Throws:
IOException
verifyCommand
public static void verifyCommand(String[] args,
String help,
Pattern[] patterns,
int low,
int high)
getFlattenedProperties
public Properties getFlattenedProperties()
- Take all the properties and translate them to actual values. This method
takes the set properties and traverse them over all entries, including
the default properties for that properties. The values no longer contain
macros.
- Returns:
- A new Properties with the flattened values
_osfile
public String _osfile(String[] args)
_path
public String _path(String[] args)
getParent
public static Properties getParent(Properties p)
process
public String process(String line)
- Specified by:
process
in interface Replacer
Copyright © 2012 aQute SARL. All Rights Reserved.