View Javadoc

1   /*
2    * Copyright 2012-2013 smartics, Kronseder & Reiner GmbH
3    *
4    * Licensed under the Apache License, Version 2.0 (the "License");
5    * you may not use this file except in compliance with the License.
6    * You may obtain a copy of the License at
7    *
8    *     http://www.apache.org/licenses/LICENSE-2.0
9    *
10   * Unless required by applicable law or agreed to in writing, software
11   * distributed under the License is distributed on an "AS IS" BASIS,
12   * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13   * See the License for the specific language governing permissions and
14   * limitations under the License.
15   */
16  package de.smartics.maven.issue.command;
17  
18  /**
19   * Defines a command to logout from a issue management system.
20   */
21  public interface LogoutCommand extends Command<LogoutCommand>
22  {
23    // ********************************* Fields *********************************
24  
25    // --- constants ------------------------------------------------------------
26  
27    // ****************************** Initializer *******************************
28  
29    // ****************************** Inner Classes *****************************
30  
31    /**
32     * Defines parameters for the {@link LogoutCommand}.
33     */
34    public static enum Parameter implements CommandParameter<LogoutCommand>
35    {
36      // ***************************** Enumeration ******************************
37  
38      // FIXME: Mapping in the implementation...
39  
40      /**
41       * The logout identifier to signal the request to logout.
42       */
43      LOGOUT("logout");
44  
45      // ******************************** Fields ********************************
46  
47      // --- constants ----------------------------------------------------------
48  
49      // --- members ------------------------------------------------------------
50  
51      /**
52       * The name of the parameter.
53       * <p>
54       * The value of this constant is {@value}.
55       */
56      private final String name;
57  
58      // ***************************** Constructors *****************************
59  
60      /**
61       * Default constructor.
62       *
63       * @param name the name of the parameter.
64       */
65      private Parameter(final String name)
66      {
67        this.name = name;
68      }
69  
70      // ******************************** Methods *******************************
71  
72      // --- init ---------------------------------------------------------------
73  
74      // --- get&set ------------------------------------------------------------
75  
76      /**
77       * Returns the name of the parameter.
78       *
79       * @return the name of the parameter.
80       */
81      public String getName()
82      {
83        return name;
84      }
85  
86      // --- business -----------------------------------------------------------
87  
88      // --- object basics ------------------------------------------------------
89  
90      /**
91       * {@inheritDoc}
92       *
93       * @see java.lang.Enum#toString()
94       */
95      @Override
96      public String toString()
97      {
98        return name;
99      }
100   }
101 
102   // ********************************* Methods ********************************
103 
104   // --- get&set --------------------------------------------------------------
105 
106   // --- business -------------------------------------------------------------
107 
108   // --- object basics --------------------------------------------------------
109 
110 }