View Javadoc
1   /*
2    *   Licensed to the Apache Software Foundation (ASF) under one
3    *   or more contributor license agreements.  See the NOTICE file
4    *   distributed with this work for additional information
5    *   regarding copyright ownership.  The ASF licenses this file
6    *   to you under the Apache License, Version 2.0 (the
7    *   "License"); you may not use this file except in compliance
8    *   with the License.  You may obtain a copy of the License at
9    *
10   *     http://www.apache.org/licenses/LICENSE-2.0
11   *
12   *   Unless required by applicable law or agreed to in writing,
13   *   software distributed under the License is distributed on an
14   *   "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
15   *   KIND, either express or implied.  See the License for the
16   *   specific language governing permissions and limitations
17   *   under the License.
18   *
19   */
20  package org.apache.directory.api.ldap.extras.controls.ppolicy;
21  
22  
23  /**
24   * The PasswordPolicy response. It contains information about the error if we
25   * had one when injecting a bad password into the server.
26   * 
27   * @author <a href="mailto:dev@directory.apache.org">Apache Directory Project</a>
28   * @version $Rev$, $Date$
29   */
30  public interface PasswordPolicyResponse
31  {
32      /**
33       * Returns the time before expiration.  Will return -1 if this warning 
34       * was not present in the response.
35       * 
36       * @return The time before expiration of the password, or -1 if not set
37       */
38      int getTimeBeforeExpiration();
39  
40  
41      /**
42       * Set a date of expiration for the password.
43       * 
44       * @param timeBeforeExpiration The time before the password will expire
45       */
46      void setTimeBeforeExpiration( int timeBeforeExpiration );
47  
48  
49      /**
50       * Returns the number of possible attempts on the password before it's 
51       * locked.  Will return -1 if this warning was not present in the 
52       * response.
53       * 
54       * @return The number of possible attempts on the password before it's locked
55       */
56      int getGraceAuthNRemaining();
57  
58  
59      /**
60       * Sets the number of remaining wrong authentication for this password.
61       * 
62       * @param graceAuthNRemaining The number of remaining attempts
63       */
64      void setGraceAuthNRemaining( int graceAuthNRemaining );
65  
66  
67      /**
68       * Returns the password policy error.
69       * 
70       * @return The PasswordPolicyErrorEnum representing the error
71       */
72      PasswordPolicyErrorEnum getPasswordPolicyError();
73  
74  
75      /**
76       * Sets the PasswordPolicy error.
77       * 
78       * @param ppolicyError The PasswordPolicyErrorEnum representing the error
79       */
80      void setPasswordPolicyError( PasswordPolicyErrorEnum ppolicyError );
81  }