Skip to content

Commit a2c5465

Browse files
mgmt, fix app getByName (Azure#18726)
1 parent c6334ce commit a2c5465

File tree

1 file changed

+11
-1
lines changed

1 file changed

+11
-1
lines changed

sdk/resourcemanager/azure-resourcemanager-authorization/src/main/java/com/azure/resourcemanager/authorization/implementation/ActiveDirectoryApplicationsImpl.java

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,8 @@
1414
import com.azure.resourcemanager.resources.fluentcore.arm.models.HasManager;
1515
import reactor.core.publisher.Mono;
1616

17+
import java.util.UUID;
18+
1719
/** The implementation of Applications and its parent interfaces. */
1820
public class ActiveDirectoryApplicationsImpl
1921
extends CreatableResourcesImpl<
@@ -67,7 +69,15 @@ public Mono<ActiveDirectoryApplication> getByNameAsync(String name) {
6769
final String trimmed = name.replaceFirst("^'+", "").replaceAll("'+$", "");
6870
return listByFilterAsync(String.format("displayName eq '%s'", trimmed))
6971
.singleOrEmpty()
70-
.switchIfEmpty(listByFilterAsync(String.format("appId eq '%s'", trimmed)).singleOrEmpty());
72+
.switchIfEmpty(Mono.defer(() -> {
73+
try {
74+
UUID.fromString(trimmed);
75+
} catch (IllegalArgumentException e) {
76+
// abort if name does not look like an application ID
77+
return Mono.empty();
78+
}
79+
return listByFilterAsync(String.format("appId eq '%s'", trimmed)).singleOrEmpty();
80+
}));
7181
}
7282

7383
@Override

0 commit comments

Comments
 (0)