KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > apache > jmeter > engine > util > UndoVariableReplacement


1 // $Header: /home/cvs/jakarta-jmeter/src/core/org/apache/jmeter/engine/util/UndoVariableReplacement.java,v 1.3 2004/02/14 03:34:28 sebb Exp $
2
/*
3  * Copyright 2003-2004 The Apache Software Foundation.
4  *
5  * Licensed under the Apache License, Version 2.0 (the "License");
6  * you may not use this file except in compliance with the License.
7  * 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 JavaDoc;
25 import java.util.Map JavaDoc;
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 /**
33  * @author ano ano
34  *
35  * @version $Revision: 1.3 $
36  */

37 public class UndoVariableReplacement extends AbstractTransformer
38 {
39     public UndoVariableReplacement(
40         CompoundVariable masterFunction,
41         Map JavaDoc variables)
42         {
43             super();
44             setMasterFunction(masterFunction);
45             setVariables(variables);
46         }
47
48     /* (non-Javadoc)
49      * @see ValueTransformer#transformValue(JMeterProperty)
50      */

51     public JMeterProperty transformValue(JMeterProperty prop)
52         throws InvalidVariableException
53     {
54         Iterator JavaDoc iter = getVariables().keySet().iterator();
55          String JavaDoc input = prop.getStringValue();
56          while (iter.hasNext())
57          {
58              String JavaDoc key = (String JavaDoc) iter.next();
59              String JavaDoc value = (String JavaDoc) getVariables().get(key);
60              input = StringUtilities.substitute(input, "${" + key + "}", value);
61          }
62         StringProperty newProp = new StringProperty(prop.getName(), input);
63         return newProp;
64     }
65
66 }
67
Popular Tags