Data interface for managing Thread Network Credentials.
An example usage of creating Thread Network Credentials with random Active Operational Dataset:
ThreadNetworkCredentials threadCredentials =
     ThreadNetworkCredentials.newRandomizedBuilder().build();
 ThreadNetworkCredentials threadCredentials =
   ThreadNetworkCredentials.newRandomizedBuilder()
     .setNetworkName("MyThreadNet")
     .build();
 ThreadNetworkCredentials threadCredentials =
     ThreadNetworkCredentials.fromActiveOperationalDataset(activeOperationalDataset);
 ActivityResult of the
IntentSender
returned by ThreadNetworkClient
APIs, use 
      fromIntentSenderResultData(Intent):
      ThreadNetworkCredentials threadCredentials =
     ThreadNetworkCredentials.fromIntentSenderResultData(activityResult.getData());
 Nested Class Summary
| class | ThreadNetworkCredentials.Builder | Builder for constructing 
              ThreadNetworkCredentialsinstances. | |
| class | ThreadNetworkCredentials.ChannelMaskEntry | The Channel Mask Entry of Thread Operational Dataset. | |
| class | ThreadNetworkCredentials.SecurityPolicy | The class represents Thread Security Policy. | |
| class | ThreadNetworkCredentials.Timestamp | The timestamp of Thread Operational Dataset. | |
Constant Summary
Inherited Constant Summary
Field Summary
| public static final ThreadNetworkCredentials.ChannelMaskEntry | DEFAULT_CHANNEL_MASK | The default channel mask which enables all 2.4GHz channels. | 
| public static final ThreadNetworkCredentials.SecurityPolicy | DEFAULT_SECURITY_POLICY | The default Thread 1.2 Security Policy. | 
Public Method Summary
| static ThreadNetworkCredentials | 
                  
                  fromActiveOperationalDataset(byte[] activeOperationalDataset)
                   
                    Creates a new  
                    ThreadNetworkCredentialsinstance with given Thread Active
                    Operational Dataset which is encoded as Thread TLV list. | 
| static ThreadNetworkCredentials | 
                  
                  fromIntentSenderResultData(Intent data)
                   
                    Parses out the data from the  ActivityResultreturned by
                    ThreadNetworkClient.getPreferredCredentials()or
                    ThreadNetworkClient.getCredentialsByExtendedPanId(byte[]). | 
| byte[] | 
                  
                  getActiveOperationalDataset()
                   
                    Returns the Thread active operational dataset as encoded Thread TLV list.
                   | 
| ThreadNetworkCredentials.Timestamp | 
                  
                  getActiveTimestamp()
                   
                    Returns the Active Timestamp in the Thread active operational dataset.
                   | 
| int | 
                  
                  getChannel()
                   
                    Returns the Channel in the Thread active operational dataset.
                   | 
| Set<ThreadNetworkCredentials.ChannelMaskEntry> | 
                  
                  getChannelMasks()
                   
                    Returns the Channel Masks in the Thread active operational dataset.
                   | 
| int | 
                  
                  getChannelPage()
                   
                    Returns the Channel Page in the Thread active operational dataset.
                   | 
| long | 
                  
                  getCreatedAtMillis()
                   
                    Returns the Unix epoch in Milliseconds the  
                    ThreadNetworkCredentialsinstance is created at. | 
| byte[] | 
                  
                  getExtendedPanId()
                   
                    Returns the Extended PAN ID in the Thread active operational dataset.
                   | 
| byte[] | 
                  
                  getMeshLocalPrefix()
                   
                    Returns the Mesh-Local Prefix in the Thread active operational dataset.
                   | 
| byte[] | 
                  
                  getNetworkKey()
                   
                    Returns the Network Key in the Thread active operational dataset.
                   | 
| String | 
                  
                  getNetworkName()
                   
                    Returns the network name if it is included in the Thread active operational
                    dataset.
                   | 
| int | 
                  
                  getPanId()
                   
                    Returns the PAN ID in the Thread active operational dataset.
                   | 
| byte[] | 
                  
                  getPskc()
                   
                    Returns the PSKc in the Thread active operational dataset.
                   | 
| ThreadNetworkCredentials.SecurityPolicy | 
                  
                  getSecurityPolicy()
                   
                    Returns the Security Policy in the Thread active operational dataset.
                   | 
| long | 
                  
                  getUpdatedAtMillis()
                   
                    Returns the Unix epoch in Milliseconds the  
                    ThreadNetworkCredentialsinstance is updated at. | 
| static ThreadNetworkCredentials.Builder | 
                  
                  newRandomizedBuilder()
                   
                    Creates a new  
                    ThreadNetworkCredentials.Builderinstance for creating
                    ThreadNetworkCredentialsinstances with randomly generated
                    credentials. | 
| static List<ThreadNetworkCredentials> | 
                  
                  parseListFromIntentSenderResultData(Intent data)
                   
                    Parses out a list of  
                    ThreadNetworkCredentialsfrom theActivityResultreturned by
                    ThreadNetworkClient.getAllActiveCredentials(GetAllActiveCredentialsRequest). | 
| String | 
                  
                  toString()
                 | 
| void | 
                  
                  writeToParcel(Parcel dest, int
                  flags)
                 | 
Inherited Method Summary
Constants
public static final int CHANNEL_MAX_2P4GHZ
The maximum 2.4GHz channel.
public static final int CHANNEL_MIN_2P4GHZ
The minimum 2.4GHz channel.
public static final int CHANNEL_PAGE_2P4GHZ
The 2.4 GHz channel page.
public static final int LENGTH_EXTENDED_PANID
The length of Extended PAN ID that can be set by 
            ThreadNetworkCredentials.Builder.setExtendedPanId(byte[]).
public static final int LENGTH_MAX_NETWORK_NAME
The maximum length of NetworkName that can be set by 
            ThreadNetworkCredentials.Builder.setNetworkName(String).
public static final int LENGTH_MAX_OPERATIONAL_DATASET
The maximum length of Operational Dataset that can be set by 
            fromActiveOperationalDataset(byte[]).
public static final int LENGTH_MAX_SECURITY_POLICY_FLAGS
The maximum length of Security Policy Flags that can be set by 
            ThreadNetworkCredentials.SecurityPolicy.SecurityPolicy(int, byte[]).
public static final int LENGTH_MESH_LOCAL_PREFIX
The length of Mesh-Local Prefix that can be set by 
            ThreadNetworkCredentials.Builder.setMeshLocalPrefix(byte[]).
public static final int LENGTH_MIN_NETWORK_NAME
The minimum length of Network Name that can be set by 
            ThreadNetworkCredentials.Builder.setNetworkName(String).
public static final int LENGTH_MIN_SECURITY_POLICY_FLAGS
The minimum length of Security Policy Flags that can be set by 
            ThreadNetworkCredentials.SecurityPolicy.SecurityPolicy(int, byte[]).
public static final int LENGTH_NETWORK_KEY
The length of Network Key that can be set by 
            ThreadNetworkCredentials.Builder.setNetworkKey(byte[]).
public static final int LENGTH_PSKC
The length of PSKc that can be set by 
            ThreadNetworkCredentials.Builder.setPskc(byte[]).
public static final byte MESH_LOCAL_PREFIX_FIRST_BYTE
The fisrt byte of Mesh-Local Prefix that can be set by 
            ThreadNetworkCredentials.Builder.setMeshLocalPrefix(byte[]).
Fields
public static final ThreadNetworkCredentials.ChannelMaskEntry DEFAULT_CHANNEL_MASK
The default channel mask which enables all 2.4GHz channels.
public static final ThreadNetworkCredentials.SecurityPolicy DEFAULT_SECURITY_POLICY
The default Thread 1.2 Security Policy.
Public Methods
public static ThreadNetworkCredentials fromActiveOperationalDataset (byte[] activeOperationalDataset)
Creates a new 
            ThreadNetworkCredentials instance with given Thread Active Operational
            Dataset which is encoded as Thread TLV list.
Throws
| IllegalArgumentException | if length of activeOperationalDatasetis larger than
                LENGTH_MAX_OPERATIONAL_DATASET,activeOperationalDatasetis
                malformed or there are missing Thread TLVs. | 
|---|
public static ThreadNetworkCredentials fromIntentSenderResultData (Intent data)
Parses out the data from the ActivityResult
            returned by 
            ThreadNetworkClient.getPreferredCredentials() or 
            ThreadNetworkClient.getCredentialsByExtendedPanId(byte[]). This method
            should only be called for a success case to interpret the result data.
Throws
| IllegalArgumentException | if no valid Thread credentials included in data. | 
|---|
public byte[] getActiveOperationalDataset ()
Returns the Thread active operational dataset as encoded Thread TLV list.
public ThreadNetworkCredentials.Timestamp getActiveTimestamp ()
Returns the Active Timestamp in the Thread active operational dataset.
public int getChannel ()
Returns the Channel in the Thread active operational dataset.
public Set<ThreadNetworkCredentials.ChannelMaskEntry> getChannelMasks ()
Returns the Channel Masks in the Thread active operational dataset.
public int getChannelPage ()
Returns the Channel Page in the Thread active operational dataset.
public long getCreatedAtMillis ()
Returns the Unix epoch in Milliseconds the 
            ThreadNetworkCredentials instance is created at. Note that this is the time
            when the Thread network credentials is first added to the Thread Network service via
            
            ThreadNetworkClient.addCredentials(ThreadBorderAgent,
            ThreadNetworkCredentials). Zero will be returned if this instance is not
            returned by ThreadNetworkClient
            methods (e.g. created with 
            fromActiveOperationalDataset(byte[])).
public byte[] getExtendedPanId ()
Returns the Extended PAN ID in the Thread active operational dataset.
public byte[] getMeshLocalPrefix ()
Returns the Mesh-Local Prefix in the Thread active operational dataset.
public byte[] getNetworkKey ()
Returns the Network Key in the Thread active operational dataset.
public String getNetworkName ()
Returns the network name if it is included in the Thread active operational dataset.
public int getPanId ()
Returns the PAN ID in the Thread active operational dataset.
public byte[] getPskc ()
Returns the PSKc in the Thread active operational dataset.
public ThreadNetworkCredentials.SecurityPolicy getSecurityPolicy ()
Returns the Security Policy in the Thread active operational dataset.
public long getUpdatedAtMillis ()
Returns the Unix epoch in Milliseconds the 
            ThreadNetworkCredentials instance is updated at. Note that this is the time
            when the Thread network credentials was last added/updated to the Thread Network
            service via 
            ThreadNetworkClient.addCredentials(ThreadBorderAgent,
            ThreadNetworkCredentials). Zero will be returned if this instance is not
            returned by ThreadNetworkClient
            methods (e.g. created with 
            fromActiveOperationalDataset(byte[])).
public static ThreadNetworkCredentials.Builder newRandomizedBuilder ()
Creates a new 
            ThreadNetworkCredentials.Builder instance for creating 
            ThreadNetworkCredentials instances with randomly generated credentials.
If there are requirements on specific parameters, set it explicitly with their
            setters in 
            ThreadNetworkCredentials.Builder. For example, it's likely that a readable
            Thread Network Name should be set with 
            ThreadNetworkCredentials.Builder.setNetworkName(String).
public static List<ThreadNetworkCredentials> parseListFromIntentSenderResultData (Intent data)
Parses out a list of 
            ThreadNetworkCredentials from the ActivityResult
            returned by 
            ThreadNetworkClient.getAllActiveCredentials(GetAllActiveCredentialsRequest).
            This method should only be called for a success case to interpret the result data.
Throws
| IllegalArgumentException | if no valid Thread credentials included in data. | 
|---|