Save This Page
Home » jakarta-jmeter-2.3.4_src » org.apache.jmeter.engine.util » [javadoc | source]
    1   /*
    2    * Licensed to the Apache Software Foundation (ASF) under one or more
    3    * contributor license agreements.  See the NOTICE file distributed with
    4    * this work for additional information regarding copyright ownership.
    5    * The ASF licenses this file to You under the Apache License, Version 2.0
    6    * (the "License"); you may not use this file except in compliance with
    7    * the License.  You may obtain a copy of the License at
    8    *
    9    *   http://www.apache.org/licenses/LICENSE-2.0
   10    *
   11    * Unless required by applicable law or agreed to in writing, software
   12    * distributed under the License is distributed on an "AS IS" BASIS,
   13    * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   14    * See the License for the specific language governing permissions and
   15    * limitations under the License.
   16    *
   17    */
   18   
   19   /*
   20    * Created on May 4, 2003
   21    */
   22   package org.apache.jmeter.engine.util;
   23   
   24   import java.util.Iterator;
   25   import java.util.Map;
   26   
   27   import org.apache.jmeter.functions.InvalidVariableException;
   28   import org.apache.jmeter.testelement.property.JMeterProperty;
   29   import org.apache.jmeter.testelement.property.StringProperty;
   30   import org.apache.jmeter.util.StringUtilities;
   31   
   32   public class UndoVariableReplacement extends AbstractTransformer {
   33       public UndoVariableReplacement(CompoundVariable masterFunction, Map variables) {
   34           super();
   35           setMasterFunction(masterFunction);
   36           setVariables(variables);
   37       }
   38   
   39       /*
   40        * (non-Javadoc)
   41        *
   42        * @see ValueTransformer#transformValue(JMeterProperty)
   43        */
   44       public JMeterProperty transformValue(JMeterProperty prop) throws InvalidVariableException {
   45           Iterator iter = getVariables().keySet().iterator();
   46           String input = prop.getStringValue();
   47           while (iter.hasNext()) {
   48               String key = (String) iter.next();
   49               String value = (String) getVariables().get(key);
   50               input = StringUtilities.substitute(input, "${" + key + "}", value);
   51           }
   52           StringProperty newProp = new StringProperty(prop.getName(), input);
   53           return newProp;
   54       }
   55   
   56   }

Save This Page
Home » jakarta-jmeter-2.3.4_src » org.apache.jmeter.engine.util » [javadoc | source]