public class IndividualEnrollment extends Serializable
This object is used to send IndividualEnrollment information to the provisioning service, or receive IndividualEnrollment information from the provisioning service.
To create or update an IndividualEnrollment on the provisioning service you should fill this object and call the
public API ProvisioningServiceClient.createOrUpdateIndividualEnrollment(IndividualEnrollment).
The minimum information required by the provisioning service is the registrationId and the
attestation.
A new device can be provisioned by three attestation mechanisms, Trust Platform Module (see TpmAttestation),
X509 (see X509Attestation) or SymmetricKeyAttestation mechanism. The definition of each one you should use depending on the
physical authentication hardware that the device contains.
The content of this class will be serialized in a JSON format and sent as a body of the rest API to the provisioning service.
When serialized, an IndividualEnrollment will look like the following example:
{
"registrationId":"validRegistrationId",
"deviceId":"ContosoDevice-123",
"attestation":{
"type":"tpm",
"tpm":{
"endorsementKey":"validEndorsementKey"
}
},
"iotHubHostName":"ContosoIoTHub.azure-devices.net",
"provisioningStatus":"enabled"
}
The content of this class can be filled by a JSON, received from the provisioning service, as result of a IndividualEnrollment operation like create, update, or query enrollment.
The following JSON is a sample or the IndividualEnrollment response, received from the provisioning service.
{
"registrationId":"validRegistrationId",
"deviceId":"ContosoDevice-123",
"attestation":{
"type":"tpm",
"tpm":{
"endorsementKey":"validEndorsementKey"
}
},
"iotHubHostName":"ContosoIoTHub.azure-devices.net",
"provisioningStatus":"enabled"
"createdDateTimeUtc": "2017-09-28T16:29:42.3447817Z",
"lastUpdatedDateTimeUtc": "2017-09-28T16:29:42.3447817Z",
"etag": "\"00000000-0000-0000-0000-00000000000\""
}
| Constructor and Description |
|---|
IndividualEnrollment(String json)
CONSTRUCTOR
|
IndividualEnrollment(String registrationId,
Attestation attestation)
CONSTRUCTOR
|
| Modifier and Type | Method and Description |
|---|---|
AllocationPolicy |
getAllocationPolicy()
Getter for the allocation policy.
|
Attestation |
getAttestation()
Getter for the attestation mechanism.
|
com.microsoft.azure.sdk.iot.deps.twin.DeviceCapabilities |
getCapabilities() |
Date |
getCreatedDateTimeUtc()
Getter for the createdDateTimeUtcDate.
|
CustomAllocationDefinition |
getCustomAllocationDefinition()
Getter for the custom allocation definition policy.
|
String |
getDeviceId()
Getter for the deviceId.
|
DeviceRegistrationState |
getDeviceRegistrationState()
Getter for the registrationState.
|
String |
getEtag()
Getter for the etag.
|
TwinState |
getInitialTwin()
Getter for the initialTwin.
|
String |
getIotHubHostName()
Getter for the iotHubHostName.
|
Collection<String> |
getIotHubs()
Getter for the list of IoTHub names that the device can be allocated to..
|
Date |
getLastUpdatedDateTimeUtc()
Getter for the lastUpdatedDateTimeUtcDate.
|
ProvisioningStatus |
getProvisioningStatus()
Getter for the provisioningStatus.
|
String |
getRegistrationId()
Getter for the registrationId.
|
ReprovisionPolicy |
getReprovisionPolicy()
Getter for the reprovision policy.
|
void |
setAllocationPolicy(AllocationPolicy allocationPolicy)
Setter for the allocation policy.
|
void |
setAttestation(Attestation attestation)
Setter for the attestation.
|
protected void |
setAttestation(AttestationMechanism attestationMechanism)
Setter for the attestation.
|
void |
setCapabilities(com.microsoft.azure.sdk.iot.deps.twin.DeviceCapabilities capabilities)
Deprecated.
as of provisioning-service-client version 1.3.3, please use
setCapabilitiesFinal(DeviceCapabilities) |
void |
setCapabilitiesFinal(com.microsoft.azure.sdk.iot.deps.twin.DeviceCapabilities capabilities) |
protected void |
setCreatedDateTimeUtc(String createdDateTimeUtc)
Setter for the createdDateTimeUtc.
|
void |
setCustomAllocationDefinition(CustomAllocationDefinition customAllocationDefinition)
Setter for the custom allocation definition policy.
|
void |
setDeviceId(String deviceId)
Deprecated.
as of provisioning-service-client version 1.3.3, please use
setDeviceIdFinal(String) |
void |
setDeviceIdFinal(String deviceId)
Setter for the deviceId.
|
void |
setEtag(String etag)
Deprecated.
as of provisioning-service-client version 1.3.3, please use
setEtagFinal(String) |
void |
setEtagFinal(String etag)
Setter for the etag.
|
void |
setInitialTwin(TwinState initialTwin)
Setter for the initialTwin.
|
void |
setIotHubHostName(String iotHubHostName)
Deprecated.
as of provisioning-service-client version 1.3.3, please use
setIotHubHostNameFinal(String) |
void |
setIotHubHostNameFinal(String iotHubHostName)
Setter for the iotHubHostName.
|
void |
setIotHubs(Collection<String> iotHubs)
Setter for the list of IotHubs available for allocation.
|
protected void |
setLastUpdatedDateTimeUtc(String lastUpdatedDateTimeUtc)
Setter for the lastUpdatedDateTimeUtc.
|
void |
setProvisioningStatus(ProvisioningStatus provisioningStatus)
Deprecated.
as of provisioning-service-client version 1.3.3, please use
setProvisioningStatusFinal(ProvisioningStatus) |
void |
setProvisioningStatusFinal(ProvisioningStatus provisioningStatus)
Setter for the provisioningStatus.
|
protected void |
setRegistrationId(String registrationId)
Setter for the registrationId.
|
protected void |
setRegistrationState(DeviceRegistrationState registrationState)
Setter for the registrationState.
|
void |
setReprovisionPolicy(ReprovisionPolicy reprovisionPolicy)
Setter for the reprovision policy.
|
com.google.gson.JsonElement |
toJsonElement()
Serializer
|
toJson, toStringpublic IndividualEnrollment(String registrationId, Attestation attestation)
This constructor creates an instance of the enrollment with the minimum set of information required by the provisioning service. A valid enrollment must contain the registrationId, which uniquely identify this enrollment, and the attestation mechanism, which can be TPM, X509 or SymmetricKey.
Other parameters can be added by calling the setters on this class.
When serialized, an IndividualEnrollment will look like the following example:
{
"registrationId":"validRegistrationId",
"attestation":{
"type":"tpm",
"tpm":{
"endorsementKey":"validEndorsementKey"
}
}
}
registrationId - the String with an unique id for this enrollment.attestation - the Attestation mechanism that can be TpmAttestation, X509Attestation or SymmetricKeyAttestation.IllegalArgumentException - If one of the provided parameters is not correct.public IndividualEnrollment(String json)
This constructor creates an instance of the enrollment filling the class with the information provided in the JSON. It is used by the SDK to parse enrollment responses from the provisioning service.
The following JSON is a sample of the IndividualEnrollment response, received from the provisioning service.
{
"registrationId":"validRegistrationId",
"deviceId":"ContosoDevice-123",
"attestation":{
"type":"tpm",
"tpm":{
"endorsementKey":"validEndorsementKey"
}
},
"iotHubHostName":"ContosoIoTHub.azure-devices.net",
"provisioningStatus":"enabled"
"createdDateTimeUtc": "2017-09-28T16:29:42.3447817Z",
"lastUpdatedDateTimeUtc": "2017-09-28T16:29:42.3447817Z",
"etag": "\"00000000-0000-0000-0000-00000000000\""
}
json - the String with the JSON received from the provisioning service.IllegalArgumentException - If the provided JSON is null, empty, or invalid.public com.google.gson.JsonElement toJsonElement()
Creates a JsonElement, which the content represents
the information in this class and its subclasses in a JSON format.
This is useful if the caller will integrate this JSON with JSON from other classes to generate a consolidated JSON.
toJsonElement in class SerializableJsonElement with the content of this class.public String getRegistrationId()
String with the registrationID content. It cannot be null or empty.protected final void setRegistrationId(String registrationId)
A valid registration Id shall follow this criteria. A case-sensitive string (up to 128 char long) of ASCII 7-bit alphanumeric chars + {'-', ':', '.', '+', '%', '_', '#', '*', '?', '!', '(', ')', ',', '=', '@', ';', '$', '''}.
registrationId - the String with the new registrationId. It cannot be null, empty, or invalid.IllegalArgumentException - If the provided registrationId is null, empty, or invalid.public String getDeviceId()
String with the deviceID content. It cannot be null or empty.@Deprecated public void setDeviceId(String deviceId)
setDeviceIdFinal(String)deviceId - the String with the new deviceID. It cannot be null, empty, or invalid.IllegalArgumentException - If the provided deviceId is null, empty, or invalid.public final void setDeviceIdFinal(String deviceId)
deviceId - the String with the new deviceID. It cannot be null, empty, or invalid.IllegalArgumentException - If the provided deviceId is null, empty, or invalid.public DeviceRegistrationState getDeviceRegistrationState()
DeviceRegistrationState with the registrationState content. It can be null.protected final void setRegistrationState(DeviceRegistrationState registrationState)
registrationState - the DeviceRegistrationState with the new registrationState. It cannot be null.IllegalArgumentException - If the provided registrationState is null.DeviceRegistrationStatepublic Attestation getAttestation() throws ProvisioningServiceClientException
Attestation with the attestation content. It cannot be null.ProvisioningServiceClientException - If the type of the attestation mechanism is unknown.protected final void setAttestation(AttestationMechanism attestationMechanism)
Attestation mechanism is a mandatory parameter that provides the mechanism type and the necessary keys/certificates
attestationMechanism - the AttestationMechanism with the new attestation mechanism. It can be `tpm`, `x509` or `SymmetricKey`.IllegalArgumentException - If the provided attestation mechanism is null or invalid.AttestationMechanismpublic void setAttestation(Attestation attestation)
Attestation mechanism is a mandatory parameter that provides the mechanism type and the necessary keys/certificates
attestation - the Attestation with the new attestation mechanism. It can be TpmAttestation, X509Attestation or SymmetricKeyAttestation.IllegalArgumentException - If the provided attestation mechanism is null.Attestation,
TpmAttestation,
X509Attestation,
SymmetricKeyAttestationpublic String getIotHubHostName()
String with the iotHubHostName content. It cannot be null or empty.@Deprecated public void setIotHubHostName(String iotHubHostName)
setIotHubHostNameFinal(String)A valid iothub host name shall follow this criteria. A case-sensitive string (up to 128 char long) of ASCII 7-bit alphanumeric chars + {'-', ':', '.', '+', '%', '_', '#', '*', '?', '!', '(', ')', ',', '=', '@', ';', '$', '''}. A valid host name shall have, at least 2 parts separated by '.'.
iotHubHostName - the String with the new iotHubHostName. It cannot be null, empty, or invalid.IllegalArgumentException - If the provided iotHubHostName is null, empty, or invalid.public final void setIotHubHostNameFinal(String iotHubHostName)
A valid iothub host name shall follow this criteria. A case-sensitive string (up to 128 char long) of ASCII 7-bit alphanumeric chars + {'-', ':', '.', '+', '%', '_', '#', '*', '?', '!', '(', ')', ',', '=', '@', ';', '$', '''}. A valid host name shall have, at least 2 parts separated by '.'.
iotHubHostName - the String with the new iotHubHostName. It cannot be null, empty, or invalid.IllegalArgumentException - If the provided iotHubHostName is null, empty, or invalid.public TwinState getInitialTwin()
TwinState with the initialTwin content. Its optional and can be null.public void setInitialTwin(TwinState initialTwin)
It provides a Twin precondition for the provisioned device.
initialTwin - the TwinState with the new initialTwin. It cannot be null.IllegalArgumentException - If the provided initialTwin is null.public ProvisioningStatus getProvisioningStatus()
ProvisioningStatus with the provisioningStatus content. It can be 'enabled' or 'disabled'.@Deprecated public void setProvisioningStatus(ProvisioningStatus provisioningStatus)
setProvisioningStatusFinal(ProvisioningStatus)It provides a Status precondition for the provisioned device.
provisioningStatus - the ProvisioningStatus with the new provisioningStatus. It cannot be null.IllegalArgumentException - If the provided provisioningStatus is null.public final void setProvisioningStatusFinal(ProvisioningStatus provisioningStatus)
It provides a Status precondition for the provisioned device.
provisioningStatus - the ProvisioningStatus with the new provisioningStatus. It cannot be null.IllegalArgumentException - If the provided provisioningStatus is null.public Date getCreatedDateTimeUtc()
Date with the createdDateTimeUtcDate content. It can be null.protected final void setCreatedDateTimeUtc(String createdDateTimeUtc)
This Date and Time is provided by the provisioning service. If the enrollment is not created yet, this string can represent an invalid Date. In this case, it will be ignored.
Example of the expected format:
"2016-06-01T21:22:43.7996883Z"
createdDateTimeUtc - the String with the new createdDateTimeUtc. It can be null, empty or not valid.public Date getLastUpdatedDateTimeUtc()
Date with the lastUpdatedDateTimeUtcDate content. It can be null.protected final void setLastUpdatedDateTimeUtc(String lastUpdatedDateTimeUtc)
This Date and Time is provided by the provisioning service. If the enrollment is not created yet, this string can represent an invalid Date. In this case, it will be ignored.
Example of the expected format:
"2016-06-01T21:22:43.7996883Z"
lastUpdatedDateTimeUtc - the String with the new lastUpdatedDateTimeUtc. It can be null, empty or not valid.public String getEtag()
String with the etag content. It can be null.@Deprecated public void setEtag(String etag)
setEtagFinal(String)etag - the String with the new etag. It cannot be null, empty or invalid.IllegalArgumentException - If the provided etag is null, empty or invalid.public final void setEtagFinal(String etag)
etag - the String with the new etag. It cannot be null, empty or invalid.IllegalArgumentException - If the provided etag is null, empty or invalid.public com.microsoft.azure.sdk.iot.deps.twin.DeviceCapabilities getCapabilities()
@Deprecated public void setCapabilities(com.microsoft.azure.sdk.iot.deps.twin.DeviceCapabilities capabilities)
setCapabilitiesFinal(DeviceCapabilities)capabilities - the device capabilities to setpublic final void setCapabilitiesFinal(com.microsoft.azure.sdk.iot.deps.twin.DeviceCapabilities capabilities)
capabilities - the device capabilities to setpublic ReprovisionPolicy getReprovisionPolicy()
ReprovisionPolicy with the reprovisionPolicy content.public void setReprovisionPolicy(ReprovisionPolicy reprovisionPolicy)
reprovisionPolicy - the ReprovisionPolicy with the behavior when a device is re-provisioned to an IoT hub.public AllocationPolicy getAllocationPolicy()
AllocationPolicy with the allocationPolicy content.public void setAllocationPolicy(AllocationPolicy allocationPolicy)
allocationPolicy - the AllocationPolicy with the allocation policy of this resource. Overrides the tenant level allocation policy.public Collection<String> getIotHubs()
AllocationPolicy with the allocationPolicy content.public void setIotHubs(Collection<String> iotHubs)
iotHubs - the List<String> of names of IoT hubs the device(s) in this resource can be allocated to. Must be a subset of tenant level list of IoT hubspublic CustomAllocationDefinition getCustomAllocationDefinition()
CustomAllocationDefinition policy.public void setCustomAllocationDefinition(CustomAllocationDefinition customAllocationDefinition)
customAllocationDefinition - the CustomAllocationDefinition with the custom allocation policy of this resource.Copyright © 2021. All rights reserved.