001: /*
002: * Licensed to the Apache Software Foundation (ASF) under one or more
003: * contributor license agreements. See the NOTICE file distributed with
004: * this work for additional information regarding copyright ownership.
005: * The ASF licenses this file to You under the Apache License, Version 2.0
006: * (the "License"); you may not use this file except in compliance with
007: * the License. You may obtain a copy of the License at
008: *
009: * http://www.apache.org/licenses/LICENSE-2.0
010: *
011: * Unless required by applicable law or agreed to in writing, software
012: * distributed under the License is distributed on an "AS IS" BASIS,
013: * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
014: * See the License for the specific language governing permissions and
015: * limitations under the License.
016: *
017: */
018:
019: package org.apache.jmeter.protocol.ldap.config.gui;
020:
021: import java.io.Serializable;
022:
023: import org.apache.jmeter.testelement.AbstractTestElement;
024: import org.apache.jmeter.testelement.property.StringProperty;
025:
026: // Mark Walsh, 2002-08-03, add metadata attribute
027: // add constructor Argument(String name, Object value, Object metadata)
028: // add MetaData get and set methods
029: /*******************************************************************************
030: *
031: * Class representing an argument. Each argument consists of a name/value and
032: * opcode combination, as well as (optional) metadata.
033: *
034: * author Dolf Smits(Dolf.Smits@Siemens.com) created Aug 09 2003 11:00 AM
035: * company Siemens Netherlands N.V..
036: *
037: * Based on the work of:
038: *
039: * author Michael Stover author Mark Walsh
040: */
041:
042: public class LDAPArgument extends AbstractTestElement implements
043: Serializable {
044:
045: // ** These constants are used in the JMX files, and so must not be changed **
046:
047: /** Name used to store the argument's name. */
048: private static final String ARG_NAME = "Argument.name"; //$NON-NLS$
049:
050: /** Name used to store the argument's value. */
051: private static final String VALUE = "Argument.value"; //$NON-NLS$
052:
053: /** Name used to store the argument's value. */
054: private static final String OPCODE = "Argument.opcode"; //$NON-NLS$
055:
056: /** Name used to store the argument's metadata. */
057: private static final String METADATA = "Argument.metadata"; //$NON-NLS$
058:
059: /**
060: * Create a new Argument without a name, value, or metadata.
061: */
062: public LDAPArgument() {
063: }
064:
065: /**
066: * Create a new Argument with the specified name and value, and no metadata.
067: *
068: * @param name
069: * the argument name
070: * @param value
071: * the argument value
072: */
073: public LDAPArgument(String name, String value, String opcode) {
074: setProperty(new StringProperty(ARG_NAME, name));
075: setProperty(new StringProperty(VALUE, value));
076: setProperty(new StringProperty(OPCODE, opcode));
077: }
078:
079: /**
080: * Create a new Argument with the specified name, value, and metadata.
081: *
082: * @param name
083: * the argument name
084: * @param value
085: * the argument value
086: * @param metadata
087: * the argument metadata
088: */
089: public LDAPArgument(String name, String value, String opcode,
090: String metadata) {
091: setProperty(new StringProperty(ARG_NAME, name));
092: setProperty(new StringProperty(VALUE, value));
093: setProperty(new StringProperty(OPCODE, opcode));
094: setProperty(new StringProperty(METADATA, metadata));
095: }
096:
097: /**
098: * Set the name of the Argument.
099: *
100: * @param newName
101: * the new name
102: */
103: public void setName(String newName) {
104: setProperty(new StringProperty(ARG_NAME, newName));
105: }
106:
107: /**
108: * Get the name of the Argument.
109: *
110: * @return the attribute's name
111: */
112: public String getName() {
113: return getPropertyAsString(ARG_NAME);
114: }
115:
116: /**
117: * Sets the value of the Argument.
118: *
119: * @param newValue
120: * the new value
121: */
122: public void setValue(String newValue) {
123: setProperty(new StringProperty(VALUE, newValue));
124: }
125:
126: /**
127: * Gets the value of the Argument object.
128: *
129: * @return the attribute's value
130: */
131: public String getValue() {
132: return getPropertyAsString(VALUE);
133: }
134:
135: /**
136: * Sets the opcode of the Argument.
137: *
138: * @param newOpcode
139: * the new value
140: */
141: public void setOpcode(String newOpcode) {
142: setProperty(new StringProperty(OPCODE, newOpcode));
143: }
144:
145: /**
146: * Gets the opcode of the Argument object.
147: *
148: * @return the attribute's value
149: */
150: public String getOpcode() {
151: return getPropertyAsString(OPCODE);
152: }
153:
154: /**
155: * Sets the Meta Data attribute of the Argument.
156: *
157: * @param newMetaData
158: * the new metadata
159: */
160: public void setMetaData(String newMetaData) {
161: setProperty(new StringProperty(METADATA, newMetaData));
162: }
163:
164: /**
165: * Gets the Meta Data attribute of the Argument.
166: *
167: * @return the MetaData value
168: */
169: public String getMetaData() {
170: return getPropertyAsString(METADATA);
171: }
172: }
|