Azure / Azure/azure-libraries-for-java

Please consistently support .WithExistingXXX(*string resourceId*)

Offen
#5 6 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen
Investigate Mgmt
Vorherrschende Sprache
Java
Sterne
97
Forks
102
PR-Merge-Kennzahlen
Keine gemergten PRs in 30 T.

Beschreibung

_From @TimLovellSmith on August 7, 2017 19:51_

Some Fluent APIs only give you a single overload of WithExistingXXX, such as the WithExistingSubnet(INetwork network, string subnetName) for defining ILoadBalancer private frontend which requires you to pass an INetwork object. Could these 'WithExisting' please be consistently implemented with an overload that works with just the resource ID?

```
loadBalancerDefWithFrontEnd = loadBalancerDefBlank
.DefinePrivateFrontend("frontend")
.WithExistingSubnet(vnet, subnetName)
.WithPrivateIPAddressStatic(StaticIP)
.Attach();
```

Not only is it sometimes simpler to implement with a resourceId string, requiring INetwork causes worse reliability as it requires extra GET calls to ARM to get resource state as the easiest way in order to satisfy these API signatures.

And finally, in some advanced RBAC scenarios, the authentication model required to do GET IFoo and then WithExisting(IFoo) is actually an added difficulty, because 'foo' another subscription. In the worst case you might even *fail* authentication on the GET even though the PUT request could in theory succeed (due to specific RBAC permissions granted you)!

(BTW this feedback is based on "Microsoft.Azure.Management.Network.Fluent" version="1.1.2")

_Copied from original issue: Azure/azure-sdk-for-net#3552_

Beitragsleitfaden

Beitragsleitfaden öffnen

Rechercherichtung

Beginne damit, die Definitionen der Java Fluent API für WithExistingXXX zu finden, insbesondere WithExistingSubnet, das von DefinePrivateFrontend verwendet wird. Prüfe, welche Methoden derzeit Ressourcenobjekte erfordern, und identifiziere die zugehörigen Overloads, die Ressourcen-IDs akzeptieren; fertig ist es, wenn die betreffenden APIs die Ressourcen-ID-Form konsistent unterstützen, ohne einen zusätzlichen GET zu erfordern.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
azure, java
Bereich
api, cloud
Issue-Typ
Feature
Schwierigkeit
4/5
Geschätzter Aufwand
3-5 Tage
Aktivitätsstatus
Veraltet
Klarheit
Größtenteils klar
Anfängerfreundlichkeit
35/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.