You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@jclouds.apache.org by danbroudy <no...@github.com> on 2014/12/04 01:58:43 UTC

[jclouds-labs-google] Updates to Address, Disk, Image, Operations + others (#106)

Filling in missing pieces of coverage for Apis in alphabetical order from Addresses to Images (+ Operations).
  
You can merge this Pull Request by running:

  git pull https://github.com/GoogleCloudPlatform/jclouds-labs-google detailClean

Or you can view, comment on it, or merge it online at:

  https://github.com/jclouds/jclouds-labs-google/pull/106

-- Commit Summary --

  * Updates to Address, Disk, Image, Operations + others

-- File Changes --

    M google-compute-engine/src/main/java/org/jclouds/googlecomputeengine/binders/DiskCreationBinder.java (4)
    M google-compute-engine/src/main/java/org/jclouds/googlecomputeengine/compute/predicates/AtomicOperationDone.java (2)
    M google-compute-engine/src/main/java/org/jclouds/googlecomputeengine/domain/Address.java (18)
    M google-compute-engine/src/main/java/org/jclouds/googlecomputeengine/domain/BackendService.java (7)
    M google-compute-engine/src/main/java/org/jclouds/googlecomputeengine/domain/Disk.java (34)
    M google-compute-engine/src/main/java/org/jclouds/googlecomputeengine/domain/DiskType.java (9)
    M google-compute-engine/src/main/java/org/jclouds/googlecomputeengine/domain/Firewall.java (9)
    M google-compute-engine/src/main/java/org/jclouds/googlecomputeengine/domain/Image.java (37)
    M google-compute-engine/src/main/java/org/jclouds/googlecomputeengine/domain/Operation.java (89)
    M google-compute-engine/src/main/java/org/jclouds/googlecomputeengine/features/AddressApi.java (8)
    M google-compute-engine/src/main/java/org/jclouds/googlecomputeengine/features/DiskApi.java (20)
    M google-compute-engine/src/main/java/org/jclouds/googlecomputeengine/features/ImageApi.java (8)
    A google-compute-engine/src/main/java/org/jclouds/googlecomputeengine/options/AddressCreationOptions.java (60)
    M google-compute-engine/src/main/java/org/jclouds/googlecomputeengine/options/BackendServiceOptions.java (10)
    M google-compute-engine/src/main/java/org/jclouds/googlecomputeengine/options/DiskCreationOptions.java (45)
    M google-compute-engine/src/main/java/org/jclouds/googlecomputeengine/options/FirewallOptions.java (16)
    A google-compute-engine/src/main/java/org/jclouds/googlecomputeengine/options/ImageCreationOptions.java (85)
    M google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/binders/DiskCreationBinderTest.java (11)
    M google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/compute/functions/FirewallToIpPermissionTest.java (2)
    M google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/compute/functions/GoogleComputeEngineImageToImageTest.java (12)
    M google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/AddressApiMockTest.java (13)
    M google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/DiskApiLiveTest.java (13)
    M google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/DiskApiMockTest.java (30)
    M google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/FirewallApiExpectTest.java (1)
    M google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/ImageApiLiveTest.java (4)
    M google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/ImageApiMockTest.java (20)
    M google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/InstanceApiLiveTest.java (7)
    M google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/features/SnapshotApiLiveTest.java (4)
    M google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/internal/BaseGoogleComputeEngineApiLiveTest.java (2)
    M google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseAddressListTest.java (6)
    M google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseAddressTest.java (8)
    M google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseBackendServiceListTest.java (3)
    M google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseBackendServiceTest.java (3)
    M google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseDiskTest.java (11)
    M google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseDiskTypeListTest.java (3)
    M google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseDiskTypeTest.java (3)
    M google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseFirewallListTest.java (1)
    M google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseFirewallTest.java (1)
    M google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseGlobalOperationTest.java (2)
    M google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseImageTest.java (14)
    M google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseOperationTest.java (18)
    M google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseRegionOperationTest.java (2)
    M google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/parse/ParseZoneOperationTest.java (2)
    M google-compute-engine/src/test/java/org/jclouds/googlecomputeengine/predicates/NetworkFirewallPredicatesTest.java (3)
    M google-compute-engine/src/test/resources/address_get.json (21)
    M google-compute-engine/src/test/resources/address_list.json (59)
    M google-compute-engine/src/test/resources/aggregated_global_operation_list.json (1)
    D google-compute-engine/src/test/resources/disk_insert_sourceImage.json (1)
    M google-compute-engine/src/test/resources/global_operation.json (1)
    M google-compute-engine/src/test/resources/global_operation_list.json (1)
    M google-compute-engine/src/test/resources/image_get.json (40)
    M google-compute-engine/src/test/resources/image_list.json (54)
    M google-compute-engine/src/test/resources/image_list_single_page.json (119)
    M google-compute-engine/src/test/resources/operation.json (53)
    M google-compute-engine/src/test/resources/region_operation.json (1)
    M google-compute-engine/src/test/resources/region_operation_list.json (1)
    M google-compute-engine/src/test/resources/zone_operation.json (1)
    M google-compute-engine/src/test/resources/zone_operation_list.json (1)

-- Patch Links --

https://github.com/jclouds/jclouds-labs-google/pull/106.patch
https://github.com/jclouds/jclouds-labs-google/pull/106.diff

---
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-labs-google/pull/106

Re: [jclouds-labs-google] Updates to Address, Disk, Image, Operations + others (#106)

Posted by Ignasi Barrera <no...@github.com>.
There are only a couple minor comments. Thanks for the updates!

---
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-labs-google/pull/106#issuecomment-65720600

Re: [jclouds-labs-google] Updates to Address, Disk, Image, Operations + others (#106)

Posted by Ignasi Barrera <no...@github.com>.
> +         this.rawDisk = rawDisk;
> +         return this;
> +      }
> +
> +      public Builder deprecated(Deprecated deprecated) {
> +         this.deprecated = deprecated;
> +         return this;
> +      }
> +
> +      public Builder sourceDisk(String sourceDisk) {
> +         this.sourceDisk = sourceDisk;
> +         return this;
> +      }
> +
> +      public ImageCreationOptions build() {
> +         return create(name, description, sourceType, rawDisk, deprecated, sourceDisk);

Same comment about the mandatory name?

---
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-labs-google/pull/106/files#r21344118

Re: [jclouds-labs-google] Updates to Address, Disk, Image, Operations + others (#106)

Posted by danbroudy <no...@github.com>.
> +         this.name = name;
> +         return this;
> +      }
> +
> +      public Builder address(String address) {
> +         this.address = address;
> +         return this;
> +      }
> +
> +      public Builder description(String description) {
> +         this.description = description;
> +         return this;
> +      }
> +
> +      public AddressCreationOptions build() {
> +         return create(name, address, description);

Added. Another possible convention would be to move the required fields to a builder constructor.

---
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-labs-google/pull/106/files#r21346053

Re: [jclouds-labs-google] Updates to Address, Disk, Image, Operations + others (#106)

Posted by Ignasi Barrera <no...@github.com>.
Closed #106.

---
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-labs-google/pull/106#event-204513365

Re: [jclouds-labs-google] Updates to Address, Disk, Image, Operations + others (#106)

Posted by Ignasi Barrera <no...@github.com>.
> +
> +   public abstract Long diskSizeGb();
> +
> +   @Nullable public abstract String sourceDisk();
> +
> +   @Nullable public abstract String sourceDiskId();
> +
> +   @Nullable public abstract List<String> licenses();
> +
> +   @SerializedNames({ "id", "selfLink", "creationTimestamp", "name", "description", "sourceType", "rawDisk", "deprecated",
> +      "status", "archiveSizeBytes", "diskSizeGb", "sourceDisk", "sourceDiskId", "licenses"})
> +   public static Image create(String id, URI selfLink, Date creationTimestamp, String name, String description, String sourceType,
> +         RawDisk rawDisk, Deprecated deprecated, Status status, String archiveSizeBytes, String diskSizeGb,
> +         String sourceDisk, String sourceDiskId, List<String> licenses) {
> +      return new AutoValue_Image(id, selfLink, creationTimestamp, name, description, sourceType, rawDisk, deprecated, status,
> +            archiveSizeBytes != null ? Long.parseLong(archiveSizeBytes, 10) : null,

Out of curiosity: are these "Long" fields not properly deserialised if just declared as Long in the method signature?

---
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-labs-google/pull/106/files#r21343859

Re: [jclouds-labs-google] Updates to Address, Disk, Image, Operations + others (#106)

Posted by BuildHive <no...@github.com>.
[jclouds » jclouds-labs-google #1841](https://buildhive.cloudbees.com/job/jclouds/job/jclouds-labs-google/1841/) SUCCESS
This pull request looks good
[(what's this?)](https://www.cloudbees.com/what-is-buildhive)

---
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-labs-google/pull/106#issuecomment-65830974

Re: [jclouds-labs-google] Updates to Address, Disk, Image, Operations + others (#106)

Posted by BuildHive <no...@github.com>.
[jclouds » jclouds-labs-google #1837](https://buildhive.cloudbees.com/job/jclouds/job/jclouds-labs-google/1837/) SUCCESS
This pull request looks good
[(what's this?)](https://www.cloudbees.com/what-is-buildhive)

---
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-labs-google/pull/106#issuecomment-65726481

Re: [jclouds-labs-google] Updates to Address, Disk, Image, Operations + others (#106)

Posted by danbroudy <no...@github.com>.
Squashed and ready!

---
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-labs-google/pull/106#issuecomment-65829928

Re: [jclouds-labs-google] Updates to Address, Disk, Image, Operations + others (#106)

Posted by BuildHive <no...@github.com>.
[jclouds » jclouds-labs-google #1839](https://buildhive.cloudbees.com/job/jclouds/job/jclouds-labs-google/1839/) SUCCESS
This pull request looks good
[(what's this?)](https://www.cloudbees.com/what-is-buildhive)

---
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-labs-google/pull/106#issuecomment-65729480

Re: [jclouds-labs-google] Updates to Address, Disk, Image, Operations + others (#106)

Posted by Ignasi Barrera <no...@github.com>.
> +         this.name = name;
> +         return this;
> +      }
> +
> +      public Builder address(String address) {
> +         this.address = address;
> +         return this;
> +      }
> +
> +      public Builder description(String description) {
> +         this.description = description;
> +         return this;
> +      }
> +
> +      public AddressCreationOptions build() {
> +         return create(name, address, description);

The name field is not annotated as `@Nullable`. Does it make sense to add a `checkNotNull` check for it here?

---
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-labs-google/pull/106/files#r21344044

Re: [jclouds-labs-google] Updates to Address, Disk, Image, Operations + others (#106)

Posted by BuildHive <no...@github.com>.
[jclouds » jclouds-labs-google #1836](https://buildhive.cloudbees.com/job/jclouds/job/jclouds-labs-google/1836/) SUCCESS
This pull request looks good
[(what's this?)](https://www.cloudbees.com/what-is-buildhive)

---
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-labs-google/pull/106#issuecomment-65725492

Re: [jclouds-labs-google] Updates to Address, Disk, Image, Operations + others (#106)

Posted by Ignasi Barrera <no...@github.com>.
Committed to master as [70af047](https://git-wip-us.apache.org/repos/asf?p=jclouds-labs-google.git;a=commit;h=70af04770fce742c05e918a680c29ad192b58442). Thanks @danbroudy!

---
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-labs-google/pull/106#issuecomment-66200900

Re: [jclouds-labs-google] Updates to Address, Disk, Image, Operations + others (#106)

Posted by BuildHive <no...@github.com>.
[jclouds » jclouds-labs-google #1828](https://buildhive.cloudbees.com/job/jclouds/job/jclouds-labs-google/1828/) SUCCESS
This pull request looks good
[(what's this?)](https://www.cloudbees.com/what-is-buildhive)

---
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-labs-google/pull/106#issuecomment-65521437

Re: [jclouds-labs-google] Updates to Address, Disk, Image, Operations + others (#106)

Posted by Ignasi Barrera <no...@github.com>.
> +         this.name = name;
> +         return this;
> +      }
> +
> +      public Builder address(String address) {
> +         this.address = address;
> +         return this;
> +      }
> +
> +      public Builder description(String description) {
> +         this.description = description;
> +         return this;
> +      }
> +
> +      public AddressCreationOptions build() {
> +         return create(name, address, description);

Absolutely. That sounds much better.

---
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-labs-google/pull/106/files#r21347130

Re: [jclouds-labs-google] Updates to Address, Disk, Image, Operations + others (#106)

Posted by danbroudy <no...@github.com>.
> +
> +   public abstract Long diskSizeGb();
> +
> +   @Nullable public abstract String sourceDisk();
> +
> +   @Nullable public abstract String sourceDiskId();
> +
> +   @Nullable public abstract List<String> licenses();
> +
> +   @SerializedNames({ "id", "selfLink", "creationTimestamp", "name", "description", "sourceType", "rawDisk", "deprecated",
> +      "status", "archiveSizeBytes", "diskSizeGb", "sourceDisk", "sourceDiskId", "licenses"})
> +   public static Image create(String id, URI selfLink, Date creationTimestamp, String name, String description, String sourceType,
> +         RawDisk rawDisk, Deprecated deprecated, Status status, String archiveSizeBytes, String diskSizeGb,
> +         String sourceDisk, String sourceDiskId, List<String> licenses) {
> +      return new AutoValue_Image(id, selfLink, creationTimestamp, name, description, sourceType, rawDisk, deprecated, status,
> +            archiveSizeBytes != null ? Long.parseLong(archiveSizeBytes, 10) : null,

I thought I tried that.. but sure enough, tried again and it worked as expected. Updated.

---
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-labs-google/pull/106/files#r21345981