Repository: jclouds-labs Updated Branches: refs/heads/master a6044372c -> 6d3363fdf
[JCLOUDS-1063] make Role.OSVirtualHardDisk.sourceImageName nullable Project: http://git-wip-us.apache.org/repos/asf/jclouds-labs/repo Commit: http://git-wip-us.apache.org/repos/asf/jclouds-labs/commit/6d3363fd Tree: http://git-wip-us.apache.org/repos/asf/jclouds-labs/tree/6d3363fd Diff: http://git-wip-us.apache.org/repos/asf/jclouds-labs/diff/6d3363fd Branch: refs/heads/master Commit: 6d3363fdf04ea4256b772f17608fcd6a37bd4500 Parents: a604437 Author: Ladislav Thon <[email protected]> Authored: Thu Jan 21 11:34:42 2016 +0100 Committer: Ignasi Barrera <[email protected]> Committed: Thu Jan 21 12:36:07 2016 +0100 ---------------------------------------------------------------------- .../org/jclouds/azurecompute/domain/Role.java | 1 + .../azurecompute/xml/RoleHandlerTest.java | 43 ++++++++++++++++++++ azurecompute/src/test/resources/role2.xml | 34 ++++++++++++++++ 3 files changed, 78 insertions(+) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/6d3363fd/azurecompute/src/main/java/org/jclouds/azurecompute/domain/Role.java ---------------------------------------------------------------------- diff --git a/azurecompute/src/main/java/org/jclouds/azurecompute/domain/Role.java b/azurecompute/src/main/java/org/jclouds/azurecompute/domain/Role.java index fd836d5..5c28c23 100644 --- a/azurecompute/src/main/java/org/jclouds/azurecompute/domain/Role.java +++ b/azurecompute/src/main/java/org/jclouds/azurecompute/domain/Role.java @@ -207,6 +207,7 @@ public abstract class Role { public abstract URI mediaLink(); + @Nullable public abstract String sourceImageName(); public abstract OSImage.Type os(); http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/6d3363fd/azurecompute/src/test/java/org/jclouds/azurecompute/xml/RoleHandlerTest.java ---------------------------------------------------------------------- diff --git a/azurecompute/src/test/java/org/jclouds/azurecompute/xml/RoleHandlerTest.java b/azurecompute/src/test/java/org/jclouds/azurecompute/xml/RoleHandlerTest.java index 513a7b1..7b2c5d6 100644 --- a/azurecompute/src/test/java/org/jclouds/azurecompute/xml/RoleHandlerTest.java +++ b/azurecompute/src/test/java/org/jclouds/azurecompute/xml/RoleHandlerTest.java @@ -77,4 +77,47 @@ public class RoleHandlerTest extends BaseHandlerTest { null ); } + + public void test2() { + InputStream is = getClass().getResourceAsStream("/role2.xml"); + Role result = factory.create(new RoleHandler(new ConfigurationSetHandler(new InputEndpointHandler(), new SubnetNameHandler()), + new OSVirtualHardDiskHandler(), + new DataVirtualHardDiskHandler(), + new ResourceExtensionReferenceHandler(new ResourceExtensionParameterValueHandler()))).parse(is); + + assertEquals(result, expected2()); + } + + public static Role expected2() { + return Role.create( + "test", + "PersistentVMRole", + null, + null, + ImmutableList.of(Role.ConfigurationSet.create( + "NetworkConfiguration", + ImmutableList.of( + Role.ConfigurationSet.InputEndpoint.create("SSH", "tcp", 22, 22, "168.61.166.228", false, null, null, null) + ), + ImmutableList.of(Role.ConfigurationSet.SubnetName.create("Subnet-1")), + null, + ImmutableList.<Role.ConfigurationSet.PublicIP>of(), + null) + ), + ImmutableList.<Role.ResourceExtensionReference>of(), + null, + ImmutableList.<DataVirtualHardDisk>of(), + Role.OSVirtualHardDisk.create( + "ReadWrite", + "test-1452267291453", + null, + null, + URI.create("test"), + null, + OSImage.Type.LINUX), + RoleSize.Type.BASIC_A1, + true, + null + ); + } } http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/6d3363fd/azurecompute/src/test/resources/role2.xml ---------------------------------------------------------------------- diff --git a/azurecompute/src/test/resources/role2.xml b/azurecompute/src/test/resources/role2.xml new file mode 100644 index 0000000..da89dae --- /dev/null +++ b/azurecompute/src/test/resources/role2.xml @@ -0,0 +1,34 @@ +<PersistentVMRole xmlns="http://schemas.microsoft.com/windowsazure"> + <RoleName>test</RoleName> + <OsVersion/> + <RoleType>PersistentVMRole</RoleType> + <ConfigurationSets> + <ConfigurationSet> + <ConfigurationSetType>NetworkConfiguration</ConfigurationSetType> + <InputEndpoints> + <InputEndpoint> + <LocalPort>22</LocalPort> + <Name>SSH</Name> + <Port>22</Port> + <Protocol>tcp</Protocol> + <Vip>168.61.166.228</Vip> + <EnableDirectServerReturn>false</EnableDirectServerReturn> + </InputEndpoint> + </InputEndpoints> + <SubnetNames> + <SubnetName>Subnet-1</SubnetName> + </SubnetNames> + </ConfigurationSet> + </ConfigurationSets> + <DataVirtualHardDisks/> + <OSVirtualHardDisk> + <HostCaching>ReadWrite</HostCaching> + <DiskName>test-1452267291453</DiskName> + <MediaLink>test</MediaLink> + <OS>Linux</OS> + <RemoteSourceImageLink>test</RemoteSourceImageLink> + <IOType>Standard</IOType> + </OSVirtualHardDisk> + <RoleSize>Basic_A1</RoleSize> + <ProvisionGuestAgent>true</ProvisionGuestAgent> +</PersistentVMRole>
