Interface PasswordContainer

All Known Implementing Classes:
OneWireContainer37, OneWireContainer41

public interface PasswordContainer
Public interface for all devices which implement some form of password protection. The operation protected could be reading from the device, writing to the device, or both. These interface methods will allow you to set the passwords on the device, enable/disable the passwords on the device, and set the passwords for the API to use when interacting with the device.
  • Method Details

    • getReadOnlyPasswordLength

      int getReadOnlyPasswordLength() throws OneWireException
      Returns the length in bytes of the Read-Only password.
      Returns:
      the length in bytes of the Read-Only password.
      Throws:
      OneWireException
    • getReadWritePasswordLength

      int getReadWritePasswordLength() throws OneWireException
      Returns the length in bytes of the Read/Write password.
      Returns:
      the length in bytes of the Read/Write password.
      Throws:
      OneWireException
    • getWriteOnlyPasswordLength

      int getWriteOnlyPasswordLength() throws OneWireException
      Returns the length in bytes of the Write-Only password.
      Returns:
      the length in bytes of the Write-Only password.
      Throws:
      OneWireException
    • getReadOnlyPasswordAddress

      int getReadOnlyPasswordAddress() throws OneWireException
      Returns the absolute address of the memory location where the Read-Only password is written.
      Returns:
      the absolute address of the memory location where the Read-Only password is written.
      Throws:
      OneWireException
    • getReadWritePasswordAddress

      int getReadWritePasswordAddress() throws OneWireException
      Returns the absolute address of the memory location where the Read/Write password is written.
      Returns:
      the absolute address of the memory location where the Read/Write password is written.
      Throws:
      OneWireException
    • getWriteOnlyPasswordAddress

      int getWriteOnlyPasswordAddress() throws OneWireException
      Returns the absolute address of the memory location where the Write-Only password is written.
      Returns:
      the absolute address of the memory location where the Write-Only password is written.
      Throws:
      OneWireException
    • hasReadOnlyPassword

      boolean hasReadOnlyPassword()
      Returns true if this device has a Read-Only password. If false, all other functions dealing with the Read-Only password will throw an exception if called.
      Returns:
      true if this device has a Read-Only password.
    • hasReadWritePassword

      boolean hasReadWritePassword()
      Returns true if this device has a Read/Write password. If false, all other functions dealing with the Read/Write password will throw an exception if called.
      Returns:
      true if this device has a Read/Write password.
    • hasWriteOnlyPassword

      boolean hasWriteOnlyPassword()
      Returns true if this device has a Write-Only password. If false, all other functions dealing with the Write-Only password will throw an exception if called.
      Returns:
      true if this device has a Write-Only password.
    • getDeviceReadOnlyPasswordEnable

      boolean getDeviceReadOnlyPasswordEnable() throws OneWireException
      Returns true if the device's Read-Only password has been enabled.
      Returns:
      true if the device's Read-Only password has been enabled.
      Throws:
      OneWireException
    • getDeviceReadWritePasswordEnable

      boolean getDeviceReadWritePasswordEnable() throws OneWireException
      Returns true if the device's Read/Write password has been enabled.
      Returns:
      true if the device's Read/Write password has been enabled.
      Throws:
      OneWireException
    • getDeviceWriteOnlyPasswordEnable

      boolean getDeviceWriteOnlyPasswordEnable() throws OneWireException
      Returns true if the device's Write-Only password has been enabled.
      Returns:
      true if the device's Write-Only password has been enabled.
      Throws:
      OneWireException
    • hasSinglePasswordEnable

      boolean hasSinglePasswordEnable()
      Returns true if this device has the capability to enable one type of password while leaving another type disabled. i.e. if the device has Read-Only password protection and Write-Only password protection, this method indicates whether or not you can enable Read-Only protection while leaving the Write-Only protection disabled.
      Returns:
      true if the device has the capability to enable one type of password while leaving another type disabled.
    • setDevicePasswordEnable

      void setDevicePasswordEnable(boolean enableReadOnly, boolean enableReadWrite, boolean enableWriteOnly) throws OneWireException, OneWireIOException

      Enables/Disables passwords for this Device. This method allows you to individually enable the different types of passwords for a particular device. If hasSinglePasswordEnable() returns true, you can selectively enable particular types of passwords. Otherwise, this method will throw an exception if all supported types are not enabled.

      For this to be successful, either write-protect passwords must be disabled, or the write-protect password(s) for this container must be set and must match the value of the write-protect password(s) in the device's register.

      Parameters:
      enableReadOnly - if true Read-Only passwords will be enabled.
      enableReadWrite - if true Read/Write passwords will be enabled.
      enableWriteOnly - if true Write-Only passwords will be enabled.
      Throws:
      OneWireException
      OneWireIOException
    • setDevicePasswordEnableAll

      void setDevicePasswordEnableAll(boolean enableAll) throws OneWireException, OneWireIOException

      Enables/Disables passwords for this device. If the part has more than one type of password (Read-Only, Write-Only, or Read/Write), all passwords will be enabled. This function is equivalent to the following: owc41.setDevicePasswordEnable( owc41.hasReadOnlyPassword(), owc41.hasReadWritePassword(), owc41.hasWriteOnlyPassword() );

      For this to be successful, either write-protect passwords must be disabled, or the write-protect password(s) for this container must be set and must match the value of the write-protect password(s) in the device's register.

      Parameters:
      enableAll - if true, all passwords are enabled. Otherwise, all passwords are disabled.
      Throws:
      OneWireException
      OneWireIOException
    • setDeviceReadOnlyPassword

      void setDeviceReadOnlyPassword(byte[] password, int offset) throws OneWireException, OneWireIOException

      Writes the given password to the device's Read-Only password register. Note that this function does not enable the password, just writes the value to the appropriate memory location.

      For this to be successful, either write-protect passwords must be disabled, or the write-protect password(s) for this container must be set and must match the value of the write-protect password(s) in the device's register.

      Parameters:
      password - the new password to be written to the device's Read-Only password register. Length must be (offset + getReadOnlyPasswordLength)
      offset - the starting point for copying from the given password array
      Throws:
      OneWireException
      OneWireIOException
    • setDeviceReadWritePassword

      void setDeviceReadWritePassword(byte[] password, int offset) throws OneWireException, OneWireIOException

      Writes the given password to the device's Read/Write password register. Note that this function does not enable the password, just writes the value to the appropriate memory location.

      For this to be successful, either write-protect passwords must be disabled, or the write-protect password(s) for this container must be set and must match the value of the write-protect password(s) in the device's register.

      Parameters:
      password - the new password to be written to the device's Read-Write password register. Length must be (offset + getReadWritePasswordLength)
      offset - the starting point for copying from the given password array
      Throws:
      OneWireException
      OneWireIOException
    • setDeviceWriteOnlyPassword

      void setDeviceWriteOnlyPassword(byte[] password, int offset) throws OneWireException, OneWireIOException

      Writes the given password to the device's Write-Only password register. Note that this function does not enable the password, just writes the value to the appropriate memory location.

      For this to be successful, either write-protect passwords must be disabled, or the write-protect password(s) for this container must be set and must match the value of the write-protect password(s) in the device's register.

      Parameters:
      password - the new password to be written to the device's Write-Only password register. Length must be (offset + getWriteOnlyPasswordLength)
      offset - the starting point for copying from the given password array
      Throws:
      OneWireException
      OneWireIOException
    • setContainerReadOnlyPassword

      void setContainerReadOnlyPassword(byte[] password, int offset) throws OneWireException
      Sets the Read-Only password used by the API when reading from the device's memory. This password is not written to the device's Read-Only password register. It is the password used by the software for interacting with the device only.
      Parameters:
      password - the new password to be used by the API when reading from the device's memory. Length must be (offset + getReadOnlyPasswordLength)
      offset - the starting point for copying from the given password array
      Throws:
      OneWireException
    • setContainerReadWritePassword

      void setContainerReadWritePassword(byte[] password, int offset) throws OneWireException
      Sets the Read/Write password used by the API when reading from or writing to the device's memory. This password is not written to the device's Read/Write password register. It is the password used by the software for interacting with the device only.
      Parameters:
      password - the new password to be used by the API when reading from or writing to the device's memory. Length must be (offset + getReadWritePasswordLength)
      offset - the starting point for copying from the given password array
      Throws:
      OneWireException
    • setContainerWriteOnlyPassword

      void setContainerWriteOnlyPassword(byte[] password, int offset) throws OneWireException
      Sets the Write-Only password used by the API when writing to the device's memory. This password is not written to the device's Write-Only password register. It is the password used by the software for interacting with the device only.
      Parameters:
      password - the new password to be used by the API when writing to the device's memory. Length must be (offset + getWriteOnlyPasswordLength)
      offset - the starting point for copying from the given password array
      Throws:
      OneWireException
    • isContainerReadOnlyPasswordSet

      boolean isContainerReadOnlyPasswordSet() throws OneWireException
      Returns true if the password used by the API for reading from the device's memory has been set. The return value is not affected by whether or not the read password of the container actually matches the value in the device's password register.
      Returns:
      true if the password used by the API for reading from the device's memory has been set.
      Throws:
      OneWireException
    • isContainerReadWritePasswordSet

      boolean isContainerReadWritePasswordSet() throws OneWireException
      Returns true if the password used by the API for reading from or writing to the device's memory has been set. The return value is not affected by whether or not the read/write password of the container actually matches the value in the device's password register.
      Returns:
      true if the password used by the API for reading from or writing to the device's memory has been set.
      Throws:
      OneWireException
    • isContainerWriteOnlyPasswordSet

      boolean isContainerWriteOnlyPasswordSet() throws OneWireException
      Returns true if the password used by the API for writing to the device's memory has been set. The return value is not affected by whether or not the write password of the container actually matches the value in the device's password register.
      Returns:
      true if the password used by the API for writing to the device's memory has been set.
      Throws:
      OneWireException
    • getContainerReadOnlyPassword

      void getContainerReadOnlyPassword(byte[] password, int offset) throws OneWireException
      Gets the Read-Only password used by the API when reading from the device's memory. This password is not read from the device's Read-Only password register. It is the password used by the software for interacting with the device only and must have been set using the setContainerReadOnlyPassword method.
      Parameters:
      password - array for holding the password that is used by the API when reading from the device's memory. Length must be (offset + getWriteOnlyPasswordLength)
      offset - the starting point for copying into the given password array
      Throws:
      OneWireException
    • getContainerReadWritePassword

      void getContainerReadWritePassword(byte[] password, int offset) throws OneWireException
      Gets the Read/Write password used by the API when reading from or writing to the device's memory. This password is not read from the device's Read/Write password register. It is the password used by the software for interacting with the device only and must have been set using the setContainerReadWritePassword method.
      Parameters:
      password - array for holding the password that is used by the API when reading from or writing to the device's memory. Length must be (offset + getReadWritePasswordLength)
      offset - the starting point for copying into the given password array
      Throws:
      OneWireException
    • getContainerWriteOnlyPassword

      void getContainerWriteOnlyPassword(byte[] password, int offset) throws OneWireException
      Gets the Write-Only password used by the API when writing to the device's memory. This password is not read from the device's Write-Only password register. It is the password used by the software for interacting with the device only and must have been set using the setContainerWriteOnlyPassword method.
      Parameters:
      password - array for holding the password that is used by the API when writing to the device's memory. Length must be (offset + getWriteOnlyPasswordLength)
      offset - the starting point for copying into the given password array
      Throws:
      OneWireException