Package Summary Overview Summary

### class:KerberosCredMessage [NONE]
- All Implemented Interfaces: Destroyable
      public final class KerberosCredMessage
      extends Object
      implements Destroyable
  This class encapsulates a Kerberos 5 KRB_CRED message which can be used to send Kerberos credentials from one principal to another. A KRB_CRED message is defined in Section 5.8.1 of the Kerberos Protocol Specification (RFC 4120 ) as:
          KRB-CRED        ::= [APPLICATION 22] SEQUENCE {
                  pvno            [0] INTEGER (5),
                  msg-type        [1] INTEGER (22),
                  tickets         [2] SEQUENCE OF Ticket,
                  enc-part        [3] EncryptedData -- EncKrbCredPart
          }
Since: 1.9

### constructor:KerberosCredMessage(javax.security.auth.kerberos.KerberosPrincipal, javax.security.auth.kerberos.KerberosPrincipal, byte[]) [NONE]
- #### KerberosCredMessage
      public KerberosCredMessage(KerberosPrincipal sender,
                                 KerberosPrincipal recipient,
                                 byte[] message)
Constructs a `KerberosCredMessage` object. The contents of the `message` argument are copied; subsequent modification of the byte array does not affect the newly created object. Parameters: `sender` - the sender of the message `recipient` - the recipient of the message `message` - the DER encoded KRB_CRED message Throws: `NullPointerException` - if any of sender, recipient or message is null

### method:getEncoded() [NONE]
- #### getEncoded
      public byte[] getEncoded()
Returns the DER encoded form of the KRB_CRED message. Returns: a newly allocated byte array that contains the encoded form Throws: `IllegalStateException` - if the object is destroyed

### method:getSender() [NONE]
- #### getSender
      public KerberosPrincipal getSender()
Returns the sender of this message. Returns: the sender Throws: `IllegalStateException` - if the object is destroyed

### method:getRecipient() [NONE]
- #### getRecipient
      public KerberosPrincipal getRecipient()
Returns the recipient of this message. Returns: the recipient Throws: `IllegalStateException` - if the object is destroyed

### method:destroy() [NONE]
- #### destroy
      public void destroy()
Destroys this object by clearing out the message. Specified by: `destroy` in interface `Destroyable`

### method:isDestroyed() [NONE]
- #### isDestroyed
      public boolean isDestroyed()
Description copied from interface: `Destroyable` Determine if this `Object` has been destroyed. The default implementation returns false. Specified by: `isDestroyed` in interface `Destroyable` Returns: true if this `Object` has been destroyed, false otherwise.

### method:toString() [NONE]
- #### toString
      public String toString()
  > Description copied from class: `Object` Returns a string representation of the object. In general, the `toString` method returns a string that "textually represents" this object. The result should be a concise but informative representation that is easy for a person to read. It is recommended that all subclasses override this method. The `toString` method for class `Object` returns a string consisting of the name of the class of which the object is an instance, the at-sign character ``@`', and the unsigned hexadecimal representation of the hash code of the object. In other words, this method returns a string equal to the value of:
  >      getClass().getName() + '@' + Integer.toHexString(hashCode())
Overrides: `toString` in class `Object` Returns: a string representation of the object.

### method:hashCode() [NONE]
- #### hashCode
      public int hashCode()
Description copied from class: `Object` Returns a hash code value for the object. This method is supported for the benefit of hash tables such as those provided by `HashMap`. The general contract of `hashCode` is: Whenever it is invoked on the same object more than once during an execution of a Java application, the `hashCode` method must consistently return the same integer, provided no information used in `equals` comparisons on the object is modified. This integer need not remain consistent from one execution of an application to another execution of the same application. If two objects are equal according to the `equals(Object)` method, then calling the `hashCode` method on each of the two objects must produce the same integer result. It is not required that if two objects are unequal according to the `Object.equals(java.lang.Object)` method, then calling the `hashCode` method on each of the two objects must produce distinct integer results. However, the programmer should be aware that producing distinct integer results for unequal objects may improve the performance of hash tables. As much as is reasonably practical, the hashCode method defined by class `Object` does return distinct integers for distinct objects. (This is typically implemented by converting the internal address of the object into an integer, but this implementation technique is not required by the Java™ programming language.) Overrides: `hashCode` in class `Object` Returns: a hash code value for this object. See Also: `Object.equals(java.lang.Object)`, `System.identityHashCode(java.lang.Object)`

### method:equals(java.lang.Object) [NONE]
- #### equals
      public boolean equals(Object other)
Description copied from class: `Object` Indicates whether some other object is "equal to" this one. The `equals` method implements an equivalence relation on non-null object references: It is reflexive: for any non-null reference value `x`, `x.equals(x)` should return `true`. It is symmetric: for any non-null reference values `x` and `y`, `x.equals(y)` should return `true` if and only if `y.equals(x)` returns `true`. It is transitive: for any non-null reference values `x`, `y`, and `z`, if `x.equals(y)` returns `true` and `y.equals(z)` returns `true`, then `x.equals(z)` should return `true`. It is consistent: for any non-null reference values `x` and `y`, multiple invocations of `x.equals(y)` consistently return `true` or consistently return `false`, provided no information used in `equals` comparisons on the objects is modified. For any non-null reference value `x`, `x.equals(null)` should return `false`. The `equals` method for class `Object` implements the most discriminating possible equivalence relation on objects; that is, for any non-null reference values `x` and `y`, this method returns `true` if and only if `x` and `y` refer to the same object (`x == y` has the value `true`). Note that it is generally necessary to override the `hashCode` method whenever this method is overridden, so as to maintain the general contract for the `hashCode` method, which states that equal objects must have equal hash codes. Overrides: `equals` in class `Object` Parameters: `other` - the reference object with which to compare. Returns: `true` if this object is the same as the obj argument; `false` otherwise. See Also: `Object.hashCode()`, `HashMap`