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 package org.apache.shale.dialog.basic.config;
19
20 import org.apache.shale.dialog.basic.model.ActionState;
21
22
23 /***
24 * <p>{@link ActionStateImpl} is a basic implementation of
25 * {@link ActionState}.</p>
26 *
27 * @since 1.0.4
28 */
29
30 public final class ActionStateImpl extends AbstractState implements ActionState {
31
32
33 // ------------------------------------------------------ Instance Variables
34
35
36 /***
37 * <p>Method binding expression specifying the method to be invoked
38 * when this {@link State} is entered.</p>
39 */
40 private String method = null;
41
42
43 // -------------------------------------------------------------- Properties
44
45
46 /***
47 * {@inheritDoc}
48 */
49 public String getMethod() {
50
51 return this.method;
52
53 }
54
55
56 // ---------------------------------------------------------- Public Methods
57
58
59 /***
60 * <p>Render a printable version of this instance.</p>
61 *
62 * @return The printable version of this instance
63 */
64 public String toString() {
65
66 return "ActionState[dialog=" +
67 ((getDialog() != null) ? getDialog().getName() : "<null>") +
68 ",name=" + getName() +
69 ",method=" + getMethod() +
70 "]";
71
72 }
73
74
75 // --------------------------------------------------- Configuration Methods
76
77
78 /***
79 * <p>Set the method binding expression specifying the method to be
80 * invoked when this {@link State} is entered.</p>
81 *
82 * @param method The new method binding expression
83 */
84 public void setMethod(String method) {
85
86 this.method = method;
87
88 }
89
90
91 }