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  
21  package org.apache.directory.kerberos.client;
22  
23  import java.nio.charset.StandardCharsets;
24  
25  /**
26   * The class to hold the result of change password operation.
27   *
28   * @author <a href="mailto:dev@directory.apache.org">Apache Directory Project</a>
29   */
30  public class ChangePasswordResult
31  {
32      /** the result code */
33      private ChangePasswordResultCode code;
34  
35      /** result message */
36      private String message;
37  
38  
39      public ChangePasswordResult( byte[] userData )
40      {
41          // first 2 bytes contain the result code ( from 0-7 )
42          int r = ( userData[0] & 0xFFFF << 8 ) + ( userData[1] & 0xFFFF );
43  
44          code = ChangePasswordResultCode.getByValue( r );
45  
46          message = new String( userData, 2, userData.length - 2, StandardCharsets.UTF_8 );
47      }
48  
49  
50      public ChangePasswordResultCode getCode()
51      {
52          return code;
53      }
54  
55  
56      public String getMessage()
57      {
58          return message;
59      }
60  
61  
62      @Override
63      public String toString()
64      {
65          return "ChangePasswordResult [result=" + code + ", message=" + message + "]";
66      }
67  
68  }