com.impinj.octane

## Class AbstractTagAuthenticateOp

- java.lang.Object
- - com.impinj.octane.TagOp
  - - com.impinj.octane.AbstractTagAuthenticateOp

- Direct Known Subclasses:
    TagImpinjAuthenticateOp

      public abstract class AbstractTagAuthenticateOp
      extends TagOp

- - ### Field Summary

    - ### Fields inherited from class com.impinj.octane.TagOp

      `Id`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `AbstractTagAuthenticateOp()`

  - ### Method Summary

    All Methods Instance Methods Abstract Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `TagData` | `getAccessPassword()` The optional access password if tag needs to be in secure state first to authenticate
    `TagData` | `getChallengeMessage()` The clear text message the tag will be encrypting and responding with
    `byte` | `getCsi()` The ISO (International Standards Organization) cypher suite index number
    `boolean` | `getIncludeReplyLen()` Whether to include reply length in reply
    `boolean` | `getSendReply()` Whether the tag should immediately execute and reply with encrypted message or whether the reader will come back later to gather the encrypted payload from the tag
    `void` | `setAccessPassword(TagData accessPassword)`
    `void` | `setChallengeMessage(TagData challengeMessage)`
    `protected abstract void` | `setCsi(byte csi)`
    `protected abstract void` | `setIncludeReplyLen(boolean includeReplyLen)`
    `protected abstract void` | `setSendReply(boolean sendReply)`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### AbstractTagAuthenticateOp

          public AbstractTagAuthenticateOp()

  - ### Method Detail

    - #### getCsi

          public byte getCsi()

      The ISO (International Standards Organization) cypher suite index number
      Returns:
        byte - the cypher suite index number

    - #### setCsi

          protected abstract void setCsi(byte csi)
                                  throws OctaneSdkException

      Throws:
        `OctaneSdkException`

    - #### getIncludeReplyLen

          public boolean getIncludeReplyLen()

      Whether to include reply length in reply
      Returns:
        boolean - true if should include reply length in reply

    - #### setIncludeReplyLen

          protected abstract void setIncludeReplyLen(boolean includeReplyLen)
                                              throws OctaneSdkException

      Throws:
        `OctaneSdkException`

    - #### getSendReply

          public boolean getSendReply()

      Whether the tag should immediately execute and reply with encrypted message or whether the reader will come back later to gather the encrypted payload from the tag
      Returns:
        boolean - true or false

    - #### setSendReply

          protected abstract void setSendReply(boolean sendReply)
                                        throws OctaneSdkException

      Throws:
        `OctaneSdkException`

    - #### getChallengeMessage

          public TagData getChallengeMessage()

      The clear text message the tag will be encrypting and responding with
      Returns:
        TagData - the challenge message

    - #### setChallengeMessage

          public void setChallengeMessage(TagData challengeMessage)
                                   throws OctaneSdkException

      Throws:
        `OctaneSdkException`

    - #### getAccessPassword

          public TagData getAccessPassword()

      The optional access password if tag needs to be in secure state first to authenticate
      Returns:
        TagData - the access password

    - #### setAccessPassword

          public void setAccessPassword(TagData accessPassword)
                                 throws OctaneSdkException

      Throws:
        `OctaneSdkException`