in sdk/communication/azure-communication-chat/src/main/java/com/azure/android/communication/chat/implementation/converters/CommunicationIdentifierConverter.java [30:79]
public static CommunicationIdentifier convert(CommunicationIdentifierModel identifier, ClientLogger logger) {
assertSingleType(identifier);
String rawId = identifier.getRawId();
if (identifier.getCommunicationUser() != null) {
final String userId = identifier.getCommunicationUser().getId();
if (userId == null) {
throw logger.logExceptionAsError(
new NullPointerException("CommunicationIdentifierModel.CommunicationUserIdentifierModel.id"));
}
return new CommunicationUserIdentifier(userId);
}
if (identifier.getPhoneNumber() != null) {
PhoneNumberIdentifierModel phoneNumberModel = identifier.getPhoneNumber();
if (phoneNumberModel.getValue() == null) {
throw logger.logExceptionAsError(
new NullPointerException("CommunicationIdentifierModel.PhoneNumberIdentifierModel.value"));
}
return new PhoneNumberIdentifier(phoneNumberModel.getValue()).setRawId(rawId);
}
if (identifier.getMicrosoftTeamsUser() != null) {
MicrosoftTeamsUserIdentifierModel teamsUserIdentifierModel = identifier.getMicrosoftTeamsUser();
final String userId = teamsUserIdentifierModel.getUserId();
if (userId == null) {
throw logger.logExceptionAsError(
new NullPointerException("CommunicationIdentifierModel.MicrosoftTeamsUserIdentifierModel.userId"));
}
final CommunicationCloudEnvironmentModel cloud = teamsUserIdentifierModel.getCloud();
if (cloud == null) {
throw logger.logExceptionAsError(
new NullPointerException("CommunicationIdentifierModel.MicrosoftTeamsUserIdentifierModel.cloud"));
}
if (rawId == null) {
throw logger.logExceptionAsError(
new NullPointerException("CommunicationIdentifierModel.rawId"));
}
return new MicrosoftTeamsUserIdentifier(userId,
teamsUserIdentifierModel.isAnonymous())
.setRawId(rawId)
.setCloudEnvironment(CommunicationCloudEnvironment.fromString(cloud.toString()));
}
if (rawId == null) {
throw logger.logExceptionAsError(
new NullPointerException("CommunicationIdentifierModel.rawId"));
}
return new UnknownIdentifier(rawId);
}