@@ -0,0 +1,2682 @@
+/**%0A * Copyright (c) 2004-2011 QOS.ch%0A * All rights reserved.%0A *%0A * Permission is hereby granted, free  of charge, to any person obtaining%0A * a  copy  of this  software  and  associated  documentation files  (the%0A * %22Software%22), to  deal in  the Software without  restriction, including%0A * without limitation  the rights to  use, copy, modify,  merge, publish,%0A * distribute,  sublicense, and/or sell  copies of  the Software,  and to%0A * permit persons to whom the Software  is furnished to do so, subject to%0A * the following conditions:%0A *%0A * The  above  copyright  notice  and  this permission  notice  shall  be%0A * included in all copies or substantial portions of the Software.%0A *%0A * THE  SOFTWARE IS  PROVIDED  %22AS  IS%22, WITHOUT  WARRANTY  OF ANY  KIND,%0A * EXPRESS OR  IMPLIED, INCLUDING  BUT NOT LIMITED  TO THE  WARRANTIES OF%0A * MERCHANTABILITY,    FITNESS    FOR    A   PARTICULAR    PURPOSE    AND%0A * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE%0A * LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION%0A * OF CONTRACT, TORT OR OTHERWISE,  ARISING FROM, OUT OF OR IN CONNECTION%0A * WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.%0A *%0A */%0Apackage org.slf4j.migrator.line;%0A%0Aimport java.util.ArrayList;%0Aimport java.util.Iterator;%0Aimport java.util.regex.Pattern;%0A%0Aimport org.slf4j.migrator.line.ConversionRule;%0Aimport org.slf4j.migrator.line.MultiGroupConversionRule;%0Aimport org.slf4j.migrator.line.RuleSet;%0Aimport org.slf4j.migrator.line.SingleConversionRule;%0A%0Aclass TrivialMatcher implements RuleSet %7B%0A %0A  private ArrayList%3CConversionRule%3E conversionRuleList;%0A  %0A  public TrivialMatcher() %7B%0A    //simple rule no capturing group is defined, we use default capturing group which is group zero%0A    SingleConversionRule cr = new SingleConversionRule(Pattern.compile(%22import org.slf4j.converter%22), %0A        %22simple replacement with an unique capturing group%22);%0A    %0A    //we define 4 differents capturing groups%0A    MultiGroupConversionRule cr1 = new MultiGroupConversionRule(Pattern.compile(%22(first group)( second group)( third group)( 4th group)%22));%0A    //group zero is ignored during treatment%0A    //replacement for the first%0A    cr1.addReplacement(1, %221st group%22);%0A    //no replacement for the second group it will remains the same%0A    //empty string for the third group it will be deleted%0A    cr1.addReplacement(3, %22%22);%0A    //no replacement for the third group it will remains the same%0A    %0A    conversionRuleList = new ArrayList%3CConversionRule%3E();%0A    conversionRuleList.add(cr);%0A    conversionRuleList.add(cr1);%0A  %7D%0A%0A  public Iterator%3CConversionRule%3E iterator() %7B%0A    return conversionRuleList.iterator();%0A  %7D%0A  %0A  %0A%7D

add missing file