Skip to content

Commit

Permalink
Name :-(
Browse files Browse the repository at this point in the history
  • Loading branch information
sergey-shandar committed Oct 25, 2017
1 parent 9821d44 commit c844f7b
Show file tree
Hide file tree
Showing 10 changed files with 39 additions and 21 deletions.
10 changes: 5 additions & 5 deletions experiments/Azure.Experiments/Azure.Experiments/AzureObject.cs
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ public abstract class AzureObject
public static IEnumerable<AzureObject> NoDependencies { get; }
= Enumerable.Empty<AzureObject>();

public string Name { get; }
public abstract string Name { get; }

public IEnumerable<AzureObject> Dependencies { get; }

Expand Down Expand Up @@ -49,9 +49,9 @@ public async Task<DependencyLocation> GetDependencyLocationAsync()
return DependencyLocation;
}

protected AzureObject(string name, IEnumerable<AzureObject> dependencies)
protected AzureObject(IEnumerable<AzureObject> dependencies)
{
Name = name;
// Name = name;
Dependencies = dependencies;
Priority = dependencies.Any()
? dependencies.Max(d => d.Priority) + 1
Expand Down Expand Up @@ -111,8 +111,8 @@ public async Task<T> GetOrCreateAsync()
return await GetOrCreateAsync(location);
}

protected AzureObject(string name, IEnumerable<AzureObject> dependencies)
: base(name, dependencies)
protected AzureObject(IEnumerable<AzureObject> dependencies)
: base(dependencies)
{
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -15,8 +15,9 @@ public VirtualMachineObject(
NetworkInterfaceObject ni,
string adminUsername,
string adminPassword)
: base(name, rg, new[] { ni })
: base(rg, new[] { ni })
{
Name = name;
Client = new ComputeManagementClient(c.Credentials)
{
SubscriptionId = c.SubscriptionId
Expand Down Expand Up @@ -79,5 +80,7 @@ protected override Task<VirtualMachine> GetOrThrowAsync()
private NetworkInterfaceObject Ni { get; }

private IVirtualMachinesOperations Client { get; }

public override string Name { get; }
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -14,8 +14,9 @@ public NetworkInterfaceObject(
SubnetObject subnet,
PublicIpAddressObject pia,
NetworkSecurityGroupObject nsg)
: base(name, rg, new AzureObject[] { subnet, pia, nsg })
: base(rg, new AzureObject[] { subnet, pia, nsg })
{
Name = name;
Client = client.NetworkInterfaces;
Pia = pia;
Subnet = subnet;
Expand Down Expand Up @@ -51,5 +52,7 @@ protected override Task<NetworkInterface> GetOrThrowAsync()
private SubnetObject Subnet { get; }

private INetworkInterfacesOperations Client { get; }

public override string Name { get; }
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -6,15 +6,14 @@ namespace Azure.Experiments.Network
public abstract class NetworkObject<T> : ResourceObject<T, NetworkPolicy<T>>
where T : Resource
{
protected NetworkObject(string name, ResourceGroupObject rg)
: base(name, rg)
protected NetworkObject(ResourceGroupObject rg)
: base(rg)
{
}

protected NetworkObject(
string name,
ResourceGroupObject rg,
IEnumerable<AzureObject> dependencies) : base(name, rg, dependencies)
IEnumerable<AzureObject> dependencies) : base(rg, dependencies)
{
}
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,8 +11,9 @@ public NetworkSecurityGroupObject(
INetworkManagementClient client,
string name,
ResourceGroupObject rg)
: base(name, rg)
: base(rg)
{
Name = name;
Client = client.NetworkSecurityGroups;
}

Expand All @@ -26,5 +27,7 @@ protected override Task<NetworkSecurityGroup> GetOrThrowAsync()
=> Client.GetAsync(ResourceGroupName, Name);

private INetworkSecurityGroupsOperations Client { get; }

public override string Name { get; }
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -11,20 +11,23 @@ public PublicIpAddressObject(
INetworkManagementClient client,
string name,
ResourceGroupObject rg)
: base(name, rg)
: base(rg)
{
Name = name;
Client = client.PublicIPAddresses;
}

protected override Task<PublicIPAddress> CreateAsync(string location)
=> Client.CreateOrUpdateAsync(
ResourceGroupName,
Name,
new PublicIPAddress { Location = "eastus" });
new PublicIPAddress { Location = location });

protected override Task<PublicIPAddress> GetOrThrowAsync()
=> Client.GetAsync(ResourceGroupName, Name);

private IPublicIPAddressesOperations Client { get; }

public override string Name { get; }
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -11,8 +11,9 @@ public sealed class SubnetObject : AzureObject<Subnet, SubnetPolicy>

public SubnetObject(
string name, VirtualNetworkObject vn, string addressPrefix)
: base(name, new[] { vn })
: base(new[] { vn })
{
Name = name;
Vn = vn;
AddressPrefix = addressPrefix;
}
Expand All @@ -32,6 +33,8 @@ protected override async Task<Subnet> GetOrThrowAsync()

private VirtualNetworkObject Vn { get; }

public override string Name { get; }

private Subnet GetSubnet(VirtualNetwork vn)
=> vn?.Subnets.FirstOrDefault(s => s.Name == Name);
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,8 +12,9 @@ public VirtualNetworkObject(
string name,
ResourceGroupObject rg,
string addressPrefix)
: base(name, rg, NoDependencies)
: base(rg, NoDependencies)
{
Name = name;
Client = client.VirtualNetworks;
AddressPrefix = addressPrefix;
}
Expand All @@ -37,5 +38,7 @@ protected override Task<VirtualNetwork> GetOrThrowAsync()
private string AddressPrefix { get; }

public IVirtualNetworksOperations Client { get; }

public override string Name { get; }
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,9 @@ public sealed class ResourceGroupObject : AzureObject<
ResourceGroup, ResourceGroupPolicy>
{
public ResourceGroupObject(Context client, string name)
: base(name, NoDependencies)
: base(NoDependencies)
{
Name = name;
Client = new ResourceManagementClient(client.Credentials)
{
SubscriptionId = client.SubscriptionId
Expand All @@ -26,5 +27,7 @@ protected override Task<ResourceGroup> GetOrThrowAsync()
=> Client.GetAsync(Name);

private IResourceGroupsOperations Client { get; }

public override string Name { get; }
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -10,18 +10,16 @@ public abstract class ResourceObject<T, P> : AzureObject<T, P>
public string ResourceGroupName { get; }

protected ResourceObject(
string name,
ResourceGroupObject rg,
IEnumerable<AzureObject> dependencies)
: base(name, dependencies.Concat(new[] { rg }))
: base(dependencies.Concat(new[] { rg }))
{
ResourceGroupName = rg.Name;
}

protected ResourceObject(
string name,
ResourceGroupObject rg)
: this(name, rg, NoDependencies)
: this(rg, NoDependencies)
{
}
}
Expand Down

0 comments on commit c844f7b

Please sign in to comment.