View Javadoc
1   /*
2    * Prometheus: Application Framework
3    * Copyright 2012-2026. Tony Washer
4    *
5    * Licensed under the Apache License, Version 2.0 (the "License"); you may not
6    * use this file except in compliance with the License.  You may obtain a copy
7    * 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, WITHOUT
13   * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.  See the
14   * License for the specific language governing permissions and limitations under
15   * the License.
16   */
17  package io.github.tonywasher.joceanus.prometheus.security;
18  
19  /**
20   * Dialogue Controller class.
21   */
22  public interface PrometheusSecurityDialogController {
23      /**
24       * Create the dialog.
25       *
26       * @param pTitle       the title
27       * @param pNeedConfirm true/false
28       */
29      void createTheDialog(String pTitle,
30                           boolean pNeedConfirm);
31  
32      /**
33       * Show the dialog under an invokeAndWait clause.
34       *
35       * @return successful dialog usage true/false
36       */
37      boolean showTheDialog();
38  
39      /**
40       * Show the spinner.
41       *
42       * @param pShow show spinner true/false
43       */
44      void showTheSpinner(boolean pShow);
45  
46      /**
47       * Release dialog.
48       */
49      void releaseDialog();
50  
51      /**
52       * Obtain the password.
53       *
54       * @return the password
55       */
56      char[] getPassword();
57  
58      /**
59       * report bad password.
60       *
61       * @param pError the error
62       */
63      void reportBadPassword(String pError);
64  }