Class ReplacerAdapter

  • All Implemented Interfaces:
    Replacer, Report, Reporter, java.lang.Runnable

    public class ReplacerAdapter
    extends ReporterAdapter
    implements Replacer
    Provide a macro Domain. This Domain 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 Domain (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.
    • Field Summary

      Fields 
      Modifier and Type Field Description
      static java.lang.String _fileHelp  
      static java.lang.String _fmodifiedHelp  
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      java.lang.String _basename​(java.lang.String[] args)  
      java.lang.String _bytes​(java.lang.String[] args)
      Format bytes
      java.lang.String _cat​(java.lang.String[] args)
      Get the contents of a file.
      java.lang.String _currenttime​(java.lang.String[] args)  
      java.lang.String _def​(java.lang.String[] args)  
      java.lang.String _dir​(java.lang.String[] args)  
      java.lang.String _env​(java.lang.String[] args)  
      java.lang.String _error​(java.lang.String[] args)  
      java.lang.String _filter​(java.lang.String[] args)  
      java.lang.String _filterout​(java.lang.String[] args)  
      java.lang.String _fmodified​(java.lang.String[] args)  
      long _freeMemory​(java.lang.String[] args)  
      java.lang.String _if​(java.lang.String[] args)  
      java.lang.String _isdir​(java.lang.String[] args)  
      java.lang.String _isfile​(java.lang.String[] args)  
      java.lang.String _join​(java.lang.String[] args)  
      java.lang.String _literal​(java.lang.String[] args)  
      java.lang.String _long2date​(java.lang.String[] args)  
      java.lang.String _lsa​(java.lang.String[] args)  
      java.lang.String _lsr​(java.lang.String[] args)
      Wildcard a directory.
      long _maxMemory​(java.lang.String[] args)  
      long _nanoTime​(java.lang.String[] args)  
      java.lang.String _now​(java.lang.String[] args)  
      java.lang.String _nsort​(java.lang.String[] args)  
      java.lang.String _osfile​(java.lang.String[] args)  
      java.lang.String _path​(java.lang.String[] args)  
      java.lang.String _pathseparator​(java.lang.String[] args)  
      int _processors​(java.lang.String[] args)  
      java.lang.String _random​(java.lang.String[] args)
      Generate a random string, which is guaranteed to be a valid Java identifier (first character is an ASCII letter, subsequent characters are ASCII letters or numbers).
      java.lang.String _replace​(java.lang.String[] args)
      replace ; ; regex ; replace
      java.lang.String _separator​(java.lang.String[] args)  
      java.lang.String _sort​(java.lang.String[] args)  
      java.lang.String _system​(java.lang.String[] args)  
      java.lang.String _system_allow_fail​(java.lang.String[] args)  
      java.lang.String _toclassname​(java.lang.String[] args)  
      java.lang.String _toclasspath​(java.lang.String[] args)  
      java.lang.String _tstamp​(java.lang.String[] args)  
      java.lang.String _unescape​(java.lang.String[] args)  
      java.lang.String _uniq​(java.lang.String[] args)  
      java.lang.String _warning​(java.lang.String[] args)  
      void addTarget​(java.lang.Object target)  
      int findMacro​(java.lang.CharSequence line, int index)
      Traverses a string to find a macro.
      java.util.Map<java.lang.String,​java.lang.String> getFlattenedProperties()
      Take all the properties and translate them to actual values.
      static java.util.Properties getParent​(java.util.Properties p)  
      java.lang.String getProcessed​(java.lang.String key)  
      static char getTerminator​(char c)  
      java.lang.String process​(java.lang.String line)  
      java.lang.String process​(java.lang.String line, Domain source)  
      void removeTarget​(java.lang.Object target)  
      protected java.lang.String replace​(java.lang.String key, aQute.libg.sed.ReplacerAdapter.Link link)  
      void setReporter​(Reporter reporter)  
      java.lang.String system_internal​(boolean allowFail, java.lang.String[] args)
      System command.
      ReplacerAdapter target​(java.io.File base)  
      ReplacerAdapter target​(java.lang.Object target)  
      static void verifyCommand​(java.lang.String[] args, java.lang.String help, java.util.regex.Pattern[] patterns, int low, int high)  
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • ReplacerAdapter

        public ReplacerAdapter​(Domain domain)
      • ReplacerAdapter

        public ReplacerAdapter​(java.util.Map<java.lang.String,​java.lang.String> domain)
    • Method Detail

      • process

        public java.lang.String process​(java.lang.String line,
                                        Domain source)
      • findMacro

        public int findMacro​(java.lang.CharSequence line,
                             int index)
        Traverses a string to find a macro. It can handle nested brackets.
        Parameters:
        line - The line with the macro
        index - Points to the character after the '$'
        Returns:
        the end position
      • getTerminator

        public static char getTerminator​(char c)
      • getProcessed

        public java.lang.String getProcessed​(java.lang.String key)
      • replace

        protected java.lang.String replace​(java.lang.String key,
                                           aQute.libg.sed.ReplacerAdapter.Link link)
      • _uniq

        public java.lang.String _uniq​(java.lang.String[] args)
      • _pathseparator

        public java.lang.String _pathseparator​(java.lang.String[] args)
      • _separator

        public java.lang.String _separator​(java.lang.String[] args)
      • _filter

        public java.lang.String _filter​(java.lang.String[] args)
      • _filterout

        public java.lang.String _filterout​(java.lang.String[] args)
      • _sort

        public java.lang.String _sort​(java.lang.String[] args)
      • _nsort

        public java.lang.String _nsort​(java.lang.String[] args)
      • _join

        public java.lang.String _join​(java.lang.String[] args)
      • _if

        public java.lang.String _if​(java.lang.String[] args)
      • _now

        public java.lang.String _now​(java.lang.String[] args)
      • _fmodified

        public java.lang.String _fmodified​(java.lang.String[] args)
                                    throws java.lang.Exception
        Throws:
        java.lang.Exception
      • _long2date

        public java.lang.String _long2date​(java.lang.String[] args)
      • _literal

        public java.lang.String _literal​(java.lang.String[] args)
      • _def

        public java.lang.String _def​(java.lang.String[] args)
      • _replace

        public java.lang.String _replace​(java.lang.String[] args)
        replace ; ; regex ; replace
        Parameters:
        args -
        Returns:
        result
      • _warning

        public java.lang.String _warning​(java.lang.String[] args)
      • _error

        public java.lang.String _error​(java.lang.String[] args)
      • _toclassname

        public java.lang.String _toclassname​(java.lang.String[] args)
      • _toclasspath

        public java.lang.String _toclasspath​(java.lang.String[] args)
      • _dir

        public java.lang.String _dir​(java.lang.String[] args)
      • _basename

        public java.lang.String _basename​(java.lang.String[] args)
      • _isfile

        public java.lang.String _isfile​(java.lang.String[] args)
      • _isdir

        public java.lang.String _isdir​(java.lang.String[] args)
      • _tstamp

        public java.lang.String _tstamp​(java.lang.String[] args)
      • _lsr

        public java.lang.String _lsr​(java.lang.String[] args)
        Wildcard a directory. The lists can contain Instruction that are matched against the given directory ${lsr;;(;)*} ${lsa;; (;)*}
      • _lsa

        public java.lang.String _lsa​(java.lang.String[] args)
      • _currenttime

        public java.lang.String _currenttime​(java.lang.String[] args)
      • system_internal

        public java.lang.String system_internal​(boolean allowFail,
                                                java.lang.String[] args)
                                         throws java.lang.Exception
        System command. Execute a command and insert the result.
        Throws:
        java.lang.Exception
      • _system

        public java.lang.String _system​(java.lang.String[] args)
                                 throws java.lang.Exception
        Throws:
        java.lang.Exception
      • _system_allow_fail

        public java.lang.String _system_allow_fail​(java.lang.String[] args)
                                            throws java.lang.Exception
        Throws:
        java.lang.Exception
      • _env

        public java.lang.String _env​(java.lang.String[] args)
      • _cat

        public java.lang.String _cat​(java.lang.String[] args)
                              throws java.io.IOException
        Get the contents of a file.
        Returns:
        contents of file
        Throws:
        java.io.IOException
      • verifyCommand

        public static void verifyCommand​(java.lang.String[] args,
                                         java.lang.String help,
                                         java.util.regex.Pattern[] patterns,
                                         int low,
                                         int high)
      • getFlattenedProperties

        public java.util.Map<java.lang.String,​java.lang.String> 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 java.lang.String _osfile​(java.lang.String[] args)
      • _path

        public java.lang.String _path​(java.lang.String[] args)
      • getParent

        public static java.util.Properties getParent​(java.util.Properties p)
      • process

        public java.lang.String process​(java.lang.String line)
        Specified by:
        process in interface Replacer
      • _random

        public java.lang.String _random​(java.lang.String[] args)
        Generate a random string, which is guaranteed to be a valid Java identifier (first character is an ASCII letter, subsequent characters are ASCII letters or numbers). Takes an optional parameter for the length of string to generate; default is 8 characters.
      • setReporter

        public void setReporter​(Reporter reporter)
      • _processors

        public int _processors​(java.lang.String[] args)
      • _maxMemory

        public long _maxMemory​(java.lang.String[] args)
      • _freeMemory

        public long _freeMemory​(java.lang.String[] args)
      • _nanoTime

        public long _nanoTime​(java.lang.String[] args)
      • addTarget

        public void addTarget​(java.lang.Object target)
      • removeTarget

        public void removeTarget​(java.lang.Object target)
      • _unescape

        public java.lang.String _unescape​(java.lang.String[] args)
      • _bytes

        public java.lang.String _bytes​(java.lang.String[] args)
        Format bytes