From 019d7240c0877dd3597fd2fc7f0e1cb773ff3063 Mon Sep 17 00:00:00 2001 From: Frederic Dang Tran Date: Thu, 11 Jul 2013 17:20:42 +0200 Subject: [PATCH 001/144] Fix VolumeAttachment serialization The anonymous class based on VolumeAttachment ignores Jackson annotation --- .../woorea/openstack/nova/api/ServersResource.java | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/nova-client/src/main/java/com/woorea/openstack/nova/api/ServersResource.java b/nova-client/src/main/java/com/woorea/openstack/nova/api/ServersResource.java index 1a0ad8097..11219bea5 100644 --- a/nova-client/src/main/java/com/woorea/openstack/nova/api/ServersResource.java +++ b/nova-client/src/main/java/com/woorea/openstack/nova/api/ServersResource.java @@ -421,11 +421,8 @@ public DisassociateFloatingIp disassociateFloatingIp(String serverId, String flo public class AttachVolume extends OpenStackRequest { - public AttachVolume(String serverId, final String volumeId, final String device) { - super(CLIENT, HttpMethod.POST, new StringBuilder("/servers/").append(serverId).append("/os-volume_attachments"), Entity.json(new VolumeAttachment() {{ - setVolumeId(volumeId); - setDevice(device); - }}), Void.class); + public AttachVolume(String serverId, final VolumeAttachment volumeAttachment) { + super(CLIENT, HttpMethod.POST, new StringBuilder("/servers/").append(serverId).append("/os-volume_attachments"), Entity.json(volumeAttachment), Void.class); } } @@ -442,8 +439,11 @@ public DetachVolume(String serverId, String volumeId) { } - public AttachVolume attachVolume(String serverId, String volumeId, String device) { - return new AttachVolume(serverId, volumeId, device); + public AttachVolume attachVolume(String serverId, String volumeId, String device) { + VolumeAttachment volumeAttachment = new VolumeAttachment(); + volumeAttachment.setVolumeId(volumeId); + volumeAttachment.setDevice(device); + return new AttachVolume(serverId, volumeAttachment); } public DetachVolume detachVolume(String serverId, String volumeId) { From a8bc492a8e7a13c2790de0f29deb1233f63499a6 Mon Sep 17 00:00:00 2001 From: Frederic Dang Tran Date: Thu, 11 Jul 2013 17:23:45 +0200 Subject: [PATCH 002/144] Fix volume creation operation Replaces read-only Volume argument with VolumeForCreate argument --- .../nova/api/extensions/VolumesExtension.java | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) diff --git a/nova-client/src/main/java/com/woorea/openstack/nova/api/extensions/VolumesExtension.java b/nova-client/src/main/java/com/woorea/openstack/nova/api/extensions/VolumesExtension.java index c0d30634f..74a7345b7 100644 --- a/nova-client/src/main/java/com/woorea/openstack/nova/api/extensions/VolumesExtension.java +++ b/nova-client/src/main/java/com/woorea/openstack/nova/api/extensions/VolumesExtension.java @@ -7,6 +7,7 @@ import com.woorea.openstack.base.client.OpenStackRequest; import com.woorea.openstack.nova.model.Metadata; import com.woorea.openstack.nova.model.Volume; +import com.woorea.openstack.nova.model.VolumeForCreate; import com.woorea.openstack.nova.model.Volumes; public class VolumesExtension { @@ -21,8 +22,8 @@ public List list(boolean detail) { return new List(detail); } - public Create create(Volume volume) { - return new Create(volume); + public Create create(VolumeForCreate volumeForCreate) { + return new Create(volumeForCreate); } public Show show(String id) { @@ -48,11 +49,8 @@ public List(boolean detail) { public class Create extends OpenStackRequest { - private Volume volume; - - public Create(Volume volume) { - super(CLIENT, HttpMethod.POST, "/os-volumes", Entity.json(volume), Volume.class); - this.volume = volume; + public Create(VolumeForCreate volumeForCreate) { + super(CLIENT, HttpMethod.POST, "/os-volumes", Entity.json(volumeForCreate), Volume.class); } } From e56dc405f67233326cdc390478339af893bc8e68 Mon Sep 17 00:00:00 2001 From: Frederic Dang Tran Date: Thu, 18 Jul 2013 15:57:32 +0200 Subject: [PATCH 003/144] Add volume attachement list and show commands, fix detach command --- .../openstack/nova/api/ServersResource.java | 29 +++++++++++++--- .../nova/model/VolumeAttachments.java | 34 +++++++++++++++++++ 2 files changed, 59 insertions(+), 4 deletions(-) create mode 100644 nova-model/src/main/java/com/woorea/openstack/nova/model/VolumeAttachments.java diff --git a/nova-client/src/main/java/com/woorea/openstack/nova/api/ServersResource.java b/nova-client/src/main/java/com/woorea/openstack/nova/api/ServersResource.java index 11219bea5..8740afde7 100644 --- a/nova-client/src/main/java/com/woorea/openstack/nova/api/ServersResource.java +++ b/nova-client/src/main/java/com/woorea/openstack/nova/api/ServersResource.java @@ -33,6 +33,7 @@ import com.woorea.openstack.nova.model.ServerForCreate; import com.woorea.openstack.nova.model.Servers; import com.woorea.openstack.nova.model.VolumeAttachment; +import com.woorea.openstack.nova.model.VolumeAttachments; public class ServersResource { @@ -429,12 +430,24 @@ public AttachVolume(String serverId, final VolumeAttachment volumeAttachment) { public class DetachVolume extends OpenStackRequest { - private String serverId; + public DetachVolume(String serverId, String volumeId) { + super(CLIENT, HttpMethod.DELETE, new StringBuilder("/servers/").append(serverId).append("/os-volume_attachments/").append(volumeId), null, Void.class); + } + + } + + public class ListVolumeAttachments extends OpenStackRequest { - private String volumeId; + public ListVolumeAttachments(String serverId) { + super(CLIENT, HttpMethod.GET, new StringBuilder("/servers/").append(serverId).append("/os-volume_attachments"), null, VolumeAttachments.class); + } + + } + + public class ShowVolumeAttachment extends OpenStackRequest { - public DetachVolume(String serverId, String volumeId) { - super(CLIENT, HttpMethod.DELETE, new StringBuilder("/servers/").append(serverId).append("/os-volume_attachments").append(volumeId), null, Void.class); + public ShowVolumeAttachment(String serverId, String volumeAttachmentId) { + super(CLIENT, HttpMethod.GET, new StringBuilder("/servers/").append(serverId).append("/os-volume_attachments/").append(volumeAttachmentId), null, VolumeAttachment.class); } } @@ -450,5 +463,13 @@ public DetachVolume detachVolume(String serverId, String volumeId) { return new DetachVolume(serverId, volumeId); } + public ListVolumeAttachments listVolumeAttachments(String serverId) { + return new ListVolumeAttachments(serverId); + } + + public ShowVolumeAttachment showVolumeAttachment(String serverId, String volumeAttachmentId) { + return new ShowVolumeAttachment(serverId, volumeAttachmentId); + } + } diff --git a/nova-model/src/main/java/com/woorea/openstack/nova/model/VolumeAttachments.java b/nova-model/src/main/java/com/woorea/openstack/nova/model/VolumeAttachments.java new file mode 100644 index 000000000..be5ea8e33 --- /dev/null +++ b/nova-model/src/main/java/com/woorea/openstack/nova/model/VolumeAttachments.java @@ -0,0 +1,34 @@ +package com.woorea.openstack.nova.model; + +import java.io.Serializable; +import java.util.Iterator; +import java.util.List; + +import org.codehaus.jackson.annotate.JsonProperty; + +public class VolumeAttachments implements Iterable, Serializable { + + @JsonProperty("volumeAttachments") + private List list; + + /** + * @return the list + */ + public List getList() { + return list; + } + + @Override + public Iterator iterator() { + return list.iterator(); + } + + /* (non-Javadoc) + * @see java.lang.Object#toString() + */ + @Override + public String toString() { + return "VolumeAttachments [list=" + list + "]"; + } + +} From 79183be151ee39167ca5bb6106550c834517d4c1 Mon Sep 17 00:00:00 2001 From: Luis Gervaso Date: Sun, 21 Jul 2013 11:47:37 +0200 Subject: [PATCH 004/144] [maven-release-plugin] prepare release openstack-java-sdk-3.1.0 --- ceilometer-client/pom.xml | 6 +++--- ceilometer-model/pom.xml | 2 +- glance-client/pom.xml | 6 +++--- glance-model/pom.xml | 2 +- keystone-client/pom.xml | 6 +++--- keystone-model/pom.xml | 2 +- nova-client/pom.xml | 6 +++--- nova-model/pom.xml | 2 +- .../jersey-connector/pom.xml | 2 +- .../jersey2-connector/pom.xml | 4 ++-- openstack-client-connectors/pom.xml | 4 ++-- .../resteasy-connector/pom.xml | 2 +- openstack-client/pom.xml | 2 +- openstack-console/pom.xml | 6 +++--- openstack-examples/pom.xml | 14 +++++++------- pom.xml | 2 +- quantum-client/pom.xml | 6 +++--- quantum-model/pom.xml | 2 +- swift-client/pom.xml | 6 +++--- swift-model/pom.xml | 2 +- 20 files changed, 42 insertions(+), 42 deletions(-) diff --git a/ceilometer-client/pom.xml b/ceilometer-client/pom.xml index b6889ddae..b757eca45 100644 --- a/ceilometer-client/pom.xml +++ b/ceilometer-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.1.0-SNAPSHOT + 3.1.0 ceilometer-client OpenStack Ceilometer Client @@ -12,12 +12,12 @@ com.woorea openstack-client - 3.1.0-SNAPSHOT + 3.1.0 com.woorea ceilometer-model - 3.1.0-SNAPSHOT + 3.1.0 diff --git a/ceilometer-model/pom.xml b/ceilometer-model/pom.xml index 0ebd3d973..fea897cb2 100644 --- a/ceilometer-model/pom.xml +++ b/ceilometer-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.1.0-SNAPSHOT + 3.1.0 ceilometer-model OpenStack Ceilometer Model diff --git a/glance-client/pom.xml b/glance-client/pom.xml index d1d30403b..4933acf95 100644 --- a/glance-client/pom.xml +++ b/glance-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.1.0-SNAPSHOT + 3.1.0 glance-client OpenStack Glance Client @@ -12,13 +12,13 @@ com.woorea openstack-client - 3.1.0-SNAPSHOT + 3.1.0 com.woorea glance-model - 3.1.0-SNAPSHOT + 3.1.0 \ No newline at end of file diff --git a/glance-model/pom.xml b/glance-model/pom.xml index 2577a68f7..021e7ec64 100644 --- a/glance-model/pom.xml +++ b/glance-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.1.0-SNAPSHOT + 3.1.0 glance-model OpenStack Glance Model diff --git a/keystone-client/pom.xml b/keystone-client/pom.xml index 537154bf2..e2378f2b1 100644 --- a/keystone-client/pom.xml +++ b/keystone-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.1.0-SNAPSHOT + 3.1.0 keystone-client OpenStack Keystone Client @@ -12,12 +12,12 @@ com.woorea openstack-client - 3.1.0-SNAPSHOT + 3.1.0 com.woorea keystone-model - 3.1.0-SNAPSHOT + 3.1.0 \ No newline at end of file diff --git a/keystone-model/pom.xml b/keystone-model/pom.xml index c2cd24197..f823f2df1 100644 --- a/keystone-model/pom.xml +++ b/keystone-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.1.0-SNAPSHOT + 3.1.0 keystone-model OpenStack Keystone Model diff --git a/nova-client/pom.xml b/nova-client/pom.xml index 1b3ca447b..d0b07e38a 100644 --- a/nova-client/pom.xml +++ b/nova-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.1.0-SNAPSHOT + 3.1.0 nova-client OpenStack Nova Client @@ -12,12 +12,12 @@ com.woorea openstack-client - 3.1.0-SNAPSHOT + 3.1.0 com.woorea nova-model - 3.1.0-SNAPSHOT + 3.1.0 \ No newline at end of file diff --git a/nova-model/pom.xml b/nova-model/pom.xml index bfc08faa2..11539a59e 100644 --- a/nova-model/pom.xml +++ b/nova-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.1.0-SNAPSHOT + 3.1.0 nova-model OpenStack Nova Model diff --git a/openstack-client-connectors/jersey-connector/pom.xml b/openstack-client-connectors/jersey-connector/pom.xml index aec6a52da..9a28ad61d 100644 --- a/openstack-client-connectors/jersey-connector/pom.xml +++ b/openstack-client-connectors/jersey-connector/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-client-connectors - 3.1.0-SNAPSHOT + 3.1.0 jersey-connector OpenStack Jersey Connector diff --git a/openstack-client-connectors/jersey2-connector/pom.xml b/openstack-client-connectors/jersey2-connector/pom.xml index 5d89acc0a..7566c0bd8 100644 --- a/openstack-client-connectors/jersey2-connector/pom.xml +++ b/openstack-client-connectors/jersey2-connector/pom.xml @@ -4,7 +4,7 @@ com.woorea openstack-client-connectors - 3.1.0-SNAPSHOT + 3.1.0 jersey2-connector OpenStack Jersey2 Connector @@ -27,7 +27,7 @@ com.woorea openstack-client - 3.1.0-SNAPSHOT + 3.1.0 diff --git a/openstack-client-connectors/pom.xml b/openstack-client-connectors/pom.xml index de4bb170f..098b7d100 100644 --- a/openstack-client-connectors/pom.xml +++ b/openstack-client-connectors/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.1.0-SNAPSHOT + 3.1.0 openstack-client-connectors OpenStack Client Connectors @@ -42,7 +42,7 @@ com.woorea openstack-client - 3.1.0-SNAPSHOT + 3.1.0 \ No newline at end of file diff --git a/openstack-client-connectors/resteasy-connector/pom.xml b/openstack-client-connectors/resteasy-connector/pom.xml index 52f2b3bff..9c2d84ef0 100644 --- a/openstack-client-connectors/resteasy-connector/pom.xml +++ b/openstack-client-connectors/resteasy-connector/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-client-connectors - 3.1.0-SNAPSHOT + 3.1.0 resteasy-connector OpenStack RESTEasy Connector diff --git a/openstack-client/pom.xml b/openstack-client/pom.xml index 3ae61cd28..ffa171a85 100644 --- a/openstack-client/pom.xml +++ b/openstack-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.1.0-SNAPSHOT + 3.1.0 openstack-client OpenStack Client diff --git a/openstack-console/pom.xml b/openstack-console/pom.xml index c6b9ea5bb..dd628bf04 100644 --- a/openstack-console/pom.xml +++ b/openstack-console/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.1.0-SNAPSHOT + 3.1.0 openstack-console OpenStack Console @@ -22,12 +22,12 @@ com.woorea keystone-client - 3.1.0-SNAPSHOT + 3.1.0 com.woorea nova-client - 3.1.0-SNAPSHOT + 3.1.0 diff --git a/openstack-examples/pom.xml b/openstack-examples/pom.xml index 238649063..c61099b06 100644 --- a/openstack-examples/pom.xml +++ b/openstack-examples/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.1.0-SNAPSHOT + 3.1.0 openstack-examples OpenStack Examples @@ -12,32 +12,32 @@ com.woorea keystone-client - 3.1.0-SNAPSHOT + 3.1.0 com.woorea nova-client - 3.1.0-SNAPSHOT + 3.1.0 com.woorea swift-client - 3.1.0-SNAPSHOT + 3.1.0 com.woorea quantum-client - 3.1.0-SNAPSHOT + 3.1.0 com.woorea ceilometer-client - 3.1.0-SNAPSHOT + 3.1.0 com.woorea glance-client - 3.1.0-SNAPSHOT + 3.1.0 diff --git a/pom.xml b/pom.xml index 352528050..9d0999046 100644 --- a/pom.xml +++ b/pom.xml @@ -2,7 +2,7 @@ 4.0.0 com.woorea openstack-java-sdk - 3.1.0-SNAPSHOT + 3.1.0 pom OpenStack Java SDK OpenStack Java SDK diff --git a/quantum-client/pom.xml b/quantum-client/pom.xml index e0c60ba55..ea0a7ed8c 100644 --- a/quantum-client/pom.xml +++ b/quantum-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.1.0-SNAPSHOT + 3.1.0 quantum-client OpenStack Quantum Client @@ -12,12 +12,12 @@ com.woorea openstack-client - 3.1.0-SNAPSHOT + 3.1.0 com.woorea quantum-model - 3.1.0-SNAPSHOT + 3.1.0 diff --git a/quantum-model/pom.xml b/quantum-model/pom.xml index d8bb39337..a97b068d1 100644 --- a/quantum-model/pom.xml +++ b/quantum-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.1.0-SNAPSHOT + 3.1.0 quantum-model OpenStack Quantum Model diff --git a/swift-client/pom.xml b/swift-client/pom.xml index 89440bd33..ce7e6c6f9 100644 --- a/swift-client/pom.xml +++ b/swift-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.1.0-SNAPSHOT + 3.1.0 swift-client OpenStack Swift Client @@ -12,12 +12,12 @@ com.woorea openstack-client - 3.1.0-SNAPSHOT + 3.1.0 com.woorea swift-model - 3.1.0-SNAPSHOT + 3.1.0 \ No newline at end of file diff --git a/swift-model/pom.xml b/swift-model/pom.xml index 796bed074..658fbbdd0 100644 --- a/swift-model/pom.xml +++ b/swift-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.1.0-SNAPSHOT + 3.1.0 swift-model OpenStack Swift Model From 513345117c0c9e87a6d2312cc2d7ff3d13abd4e0 Mon Sep 17 00:00:00 2001 From: Luis Gervaso Date: Sun, 21 Jul 2013 11:52:10 +0200 Subject: [PATCH 005/144] [maven-release-plugin] prepare for next development iteration --- ceilometer-client/pom.xml | 6 +++--- ceilometer-model/pom.xml | 2 +- glance-client/pom.xml | 6 +++--- glance-model/pom.xml | 2 +- keystone-client/pom.xml | 6 +++--- keystone-model/pom.xml | 2 +- nova-client/pom.xml | 6 +++--- nova-model/pom.xml | 2 +- .../jersey-connector/pom.xml | 2 +- .../jersey2-connector/pom.xml | 4 ++-- openstack-client-connectors/pom.xml | 4 ++-- .../resteasy-connector/pom.xml | 2 +- openstack-client/pom.xml | 2 +- openstack-console/pom.xml | 6 +++--- openstack-examples/pom.xml | 14 +++++++------- pom.xml | 2 +- quantum-client/pom.xml | 6 +++--- quantum-model/pom.xml | 2 +- swift-client/pom.xml | 6 +++--- swift-model/pom.xml | 2 +- 20 files changed, 42 insertions(+), 42 deletions(-) diff --git a/ceilometer-client/pom.xml b/ceilometer-client/pom.xml index b757eca45..4523842d5 100644 --- a/ceilometer-client/pom.xml +++ b/ceilometer-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.1.0 + 3.2.0-SNAPSHOT ceilometer-client OpenStack Ceilometer Client @@ -12,12 +12,12 @@ com.woorea openstack-client - 3.1.0 + 3.2.0-SNAPSHOT com.woorea ceilometer-model - 3.1.0 + 3.2.0-SNAPSHOT diff --git a/ceilometer-model/pom.xml b/ceilometer-model/pom.xml index fea897cb2..243d6a088 100644 --- a/ceilometer-model/pom.xml +++ b/ceilometer-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.1.0 + 3.2.0-SNAPSHOT ceilometer-model OpenStack Ceilometer Model diff --git a/glance-client/pom.xml b/glance-client/pom.xml index 4933acf95..eb1936283 100644 --- a/glance-client/pom.xml +++ b/glance-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.1.0 + 3.2.0-SNAPSHOT glance-client OpenStack Glance Client @@ -12,13 +12,13 @@ com.woorea openstack-client - 3.1.0 + 3.2.0-SNAPSHOT com.woorea glance-model - 3.1.0 + 3.2.0-SNAPSHOT \ No newline at end of file diff --git a/glance-model/pom.xml b/glance-model/pom.xml index 021e7ec64..574fc1bdf 100644 --- a/glance-model/pom.xml +++ b/glance-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.1.0 + 3.2.0-SNAPSHOT glance-model OpenStack Glance Model diff --git a/keystone-client/pom.xml b/keystone-client/pom.xml index e2378f2b1..427fd3145 100644 --- a/keystone-client/pom.xml +++ b/keystone-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.1.0 + 3.2.0-SNAPSHOT keystone-client OpenStack Keystone Client @@ -12,12 +12,12 @@ com.woorea openstack-client - 3.1.0 + 3.2.0-SNAPSHOT com.woorea keystone-model - 3.1.0 + 3.2.0-SNAPSHOT \ No newline at end of file diff --git a/keystone-model/pom.xml b/keystone-model/pom.xml index f823f2df1..50c842d81 100644 --- a/keystone-model/pom.xml +++ b/keystone-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.1.0 + 3.2.0-SNAPSHOT keystone-model OpenStack Keystone Model diff --git a/nova-client/pom.xml b/nova-client/pom.xml index d0b07e38a..3c5adf63a 100644 --- a/nova-client/pom.xml +++ b/nova-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.1.0 + 3.2.0-SNAPSHOT nova-client OpenStack Nova Client @@ -12,12 +12,12 @@ com.woorea openstack-client - 3.1.0 + 3.2.0-SNAPSHOT com.woorea nova-model - 3.1.0 + 3.2.0-SNAPSHOT \ No newline at end of file diff --git a/nova-model/pom.xml b/nova-model/pom.xml index 11539a59e..d5cdfae4d 100644 --- a/nova-model/pom.xml +++ b/nova-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.1.0 + 3.2.0-SNAPSHOT nova-model OpenStack Nova Model diff --git a/openstack-client-connectors/jersey-connector/pom.xml b/openstack-client-connectors/jersey-connector/pom.xml index 9a28ad61d..209687995 100644 --- a/openstack-client-connectors/jersey-connector/pom.xml +++ b/openstack-client-connectors/jersey-connector/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-client-connectors - 3.1.0 + 3.2.0-SNAPSHOT jersey-connector OpenStack Jersey Connector diff --git a/openstack-client-connectors/jersey2-connector/pom.xml b/openstack-client-connectors/jersey2-connector/pom.xml index 7566c0bd8..12056477a 100644 --- a/openstack-client-connectors/jersey2-connector/pom.xml +++ b/openstack-client-connectors/jersey2-connector/pom.xml @@ -4,7 +4,7 @@ com.woorea openstack-client-connectors - 3.1.0 + 3.2.0-SNAPSHOT jersey2-connector OpenStack Jersey2 Connector @@ -27,7 +27,7 @@ com.woorea openstack-client - 3.1.0 + 3.2.0-SNAPSHOT diff --git a/openstack-client-connectors/pom.xml b/openstack-client-connectors/pom.xml index 098b7d100..dc5e4be63 100644 --- a/openstack-client-connectors/pom.xml +++ b/openstack-client-connectors/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.1.0 + 3.2.0-SNAPSHOT openstack-client-connectors OpenStack Client Connectors @@ -42,7 +42,7 @@ com.woorea openstack-client - 3.1.0 + 3.2.0-SNAPSHOT \ No newline at end of file diff --git a/openstack-client-connectors/resteasy-connector/pom.xml b/openstack-client-connectors/resteasy-connector/pom.xml index 9c2d84ef0..80d17a37f 100644 --- a/openstack-client-connectors/resteasy-connector/pom.xml +++ b/openstack-client-connectors/resteasy-connector/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-client-connectors - 3.1.0 + 3.2.0-SNAPSHOT resteasy-connector OpenStack RESTEasy Connector diff --git a/openstack-client/pom.xml b/openstack-client/pom.xml index ffa171a85..ea9aa1048 100644 --- a/openstack-client/pom.xml +++ b/openstack-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.1.0 + 3.2.0-SNAPSHOT openstack-client OpenStack Client diff --git a/openstack-console/pom.xml b/openstack-console/pom.xml index dd628bf04..0a7711812 100644 --- a/openstack-console/pom.xml +++ b/openstack-console/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.1.0 + 3.2.0-SNAPSHOT openstack-console OpenStack Console @@ -22,12 +22,12 @@ com.woorea keystone-client - 3.1.0 + 3.2.0-SNAPSHOT com.woorea nova-client - 3.1.0 + 3.2.0-SNAPSHOT diff --git a/openstack-examples/pom.xml b/openstack-examples/pom.xml index c61099b06..3225bc5d7 100644 --- a/openstack-examples/pom.xml +++ b/openstack-examples/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.1.0 + 3.2.0-SNAPSHOT openstack-examples OpenStack Examples @@ -12,32 +12,32 @@ com.woorea keystone-client - 3.1.0 + 3.2.0-SNAPSHOT com.woorea nova-client - 3.1.0 + 3.2.0-SNAPSHOT com.woorea swift-client - 3.1.0 + 3.2.0-SNAPSHOT com.woorea quantum-client - 3.1.0 + 3.2.0-SNAPSHOT com.woorea ceilometer-client - 3.1.0 + 3.2.0-SNAPSHOT com.woorea glance-client - 3.1.0 + 3.2.0-SNAPSHOT diff --git a/pom.xml b/pom.xml index 9d0999046..29c2f6884 100644 --- a/pom.xml +++ b/pom.xml @@ -2,7 +2,7 @@ 4.0.0 com.woorea openstack-java-sdk - 3.1.0 + 3.2.0-SNAPSHOT pom OpenStack Java SDK OpenStack Java SDK diff --git a/quantum-client/pom.xml b/quantum-client/pom.xml index ea0a7ed8c..79c697ab8 100644 --- a/quantum-client/pom.xml +++ b/quantum-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.1.0 + 3.2.0-SNAPSHOT quantum-client OpenStack Quantum Client @@ -12,12 +12,12 @@ com.woorea openstack-client - 3.1.0 + 3.2.0-SNAPSHOT com.woorea quantum-model - 3.1.0 + 3.2.0-SNAPSHOT diff --git a/quantum-model/pom.xml b/quantum-model/pom.xml index a97b068d1..1255f1e5e 100644 --- a/quantum-model/pom.xml +++ b/quantum-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.1.0 + 3.2.0-SNAPSHOT quantum-model OpenStack Quantum Model diff --git a/swift-client/pom.xml b/swift-client/pom.xml index ce7e6c6f9..e5236b213 100644 --- a/swift-client/pom.xml +++ b/swift-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.1.0 + 3.2.0-SNAPSHOT swift-client OpenStack Swift Client @@ -12,12 +12,12 @@ com.woorea openstack-client - 3.1.0 + 3.2.0-SNAPSHOT com.woorea swift-model - 3.1.0 + 3.2.0-SNAPSHOT \ No newline at end of file diff --git a/swift-model/pom.xml b/swift-model/pom.xml index 658fbbdd0..0220d7b0a 100644 --- a/swift-model/pom.xml +++ b/swift-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.1.0 + 3.2.0-SNAPSHOT swift-model OpenStack Swift Model From df6faf007e4e45b9a9cc2511e4e2cbc3f93da371 Mon Sep 17 00:00:00 2001 From: jxiaobin Date: Wed, 24 Jul 2013 10:39:01 +0800 Subject: [PATCH 006/144] hide password in payload log --- .../openstack/connector/JerseyConnector.java | 6 +- .../connector/JerseyLoggingFilter.java | 279 ++++++++++++++++ .../openstack/connector/JaxRs20Connector.java | 7 +- .../connector/Jersey2LoggingFilter.java | 301 ++++++++++++++++++ pom.xml | 16 +- 5 files changed, 601 insertions(+), 8 deletions(-) create mode 100644 openstack-client-connectors/jersey-connector/src/main/java/com/woorea/openstack/connector/JerseyLoggingFilter.java create mode 100644 openstack-client-connectors/jersey2-connector/src/main/java/com/woorea/openstack/connector/Jersey2LoggingFilter.java diff --git a/openstack-client-connectors/jersey-connector/src/main/java/com/woorea/openstack/connector/JerseyConnector.java b/openstack-client-connectors/jersey-connector/src/main/java/com/woorea/openstack/connector/JerseyConnector.java index c3615942b..4ac83333a 100644 --- a/openstack-client-connectors/jersey-connector/src/main/java/com/woorea/openstack/connector/JerseyConnector.java +++ b/openstack-client-connectors/jersey-connector/src/main/java/com/woorea/openstack/connector/JerseyConnector.java @@ -2,6 +2,7 @@ import java.util.List; import java.util.Map; +import java.util.logging.Logger; import javax.ws.rs.core.MultivaluedMap; import javax.ws.rs.ext.ContextResolver; @@ -20,7 +21,6 @@ import com.sun.jersey.api.client.WebResource; import com.sun.jersey.api.client.config.ClientConfig; import com.sun.jersey.api.client.config.DefaultClientConfig; -import com.sun.jersey.api.client.filter.LoggingFilter; import com.sun.jersey.client.impl.ClientRequestImpl; import com.sun.jersey.core.header.OutBoundHeaders; import com.woorea.openstack.base.client.OpenStackClientConnector; @@ -31,6 +31,8 @@ public class JerseyConnector implements OpenStackClientConnector { protected Client client = null; + protected boolean logPassword; + private JerseyLoggingFilter logger = new JerseyLoggingFilter(Logger.getLogger("os")); public JerseyConnector() { ClientConfig clientConfig = new DefaultClientConfig(); @@ -47,7 +49,7 @@ public OpenStackResponse request(OpenStackRequest request) { target = target.queryParam(entry.getKey(), String.valueOf(o)); } } - target.addFilter(new LoggingFilter()); + target.addFilter(logger); MultivaluedMap headers = new OutBoundHeaders(); for(Map.Entry> h : request.headers().entrySet()) { for(Object v : h.getValue()) { diff --git a/openstack-client-connectors/jersey-connector/src/main/java/com/woorea/openstack/connector/JerseyLoggingFilter.java b/openstack-client-connectors/jersey-connector/src/main/java/com/woorea/openstack/connector/JerseyLoggingFilter.java new file mode 100644 index 000000000..c1877c3df --- /dev/null +++ b/openstack-client-connectors/jersey-connector/src/main/java/com/woorea/openstack/connector/JerseyLoggingFilter.java @@ -0,0 +1,279 @@ +/* + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER. + * + * Copyright (c) 2010-2011 Oracle and/or its affiliates. All rights reserved. + * + * The contents of this file are subject to the terms of either the GNU + * General Public License Version 2 only ("GPL") or the Common Development + * and Distribution License("CDDL") (collectively, the "License"). You + * may not use this file except in compliance with the License. You can + * obtain a copy of the License at + * http://glassfish.java.net/public/CDDL+GPL_1_1.html + * or packager/legal/LICENSE.txt. See the License for the specific + * language governing permissions and limitations under the License. + * + * When distributing the software, include this License Header Notice in each + * file and include the License file at packager/legal/LICENSE.txt. + * + * GPL Classpath Exception: + * Oracle designates this particular file as subject to the "Classpath" + * exception as provided by Oracle in the GPL Version 2 section of the License + * file that accompanied this code. + * + * Modifications: + * If applicable, add the following below the License Header, with the fields + * enclosed by brackets [] replaced by your own identifying information: + * "Portions Copyright [year] [name of copyright owner]" + * + * Contributor(s): + * If you wish your version of this file to be governed by only the CDDL or + * only the GPL Version 2, indicate your decision by adding "[Contributor] + * elects to include this software in this distribution under the [CDDL or GPL + * Version 2] license." If you don't indicate a single choice of license, a + * recipient has the option to distribute your version of this file under + * either the CDDL, the GPL Version 2 or to extend the choice of license to + * its licensees as provided above. However, if you add GPL Version 2 code + * and therefore, elected the GPL Version 2 license, then the option applies + * only if the new code is made subject to such option by the copyright + * holder. + */ +package com.woorea.openstack.connector; + +import java.io.ByteArrayInputStream; +import java.io.ByteArrayOutputStream; +import java.io.IOException; +import java.io.InputStream; +import java.io.OutputStream; +import java.io.PrintStream; +import java.util.List; +import java.util.Map; +import java.util.logging.Logger; + +import javax.ws.rs.core.MultivaluedMap; + +import com.sun.jersey.api.client.AbstractClientRequestAdapter; +import com.sun.jersey.api.client.ClientHandlerException; +import com.sun.jersey.api.client.ClientRequest; +import com.sun.jersey.api.client.ClientRequestAdapter; +import com.sun.jersey.api.client.ClientResponse; +import com.sun.jersey.api.client.filter.ClientFilter; +import com.sun.jersey.api.client.filter.LoggingFilter; +import com.sun.jersey.core.util.ReaderWriter; + +/** + * A logging filter. + * + */ +public class JerseyLoggingFilter extends ClientFilter { + + private static final Logger LOGGER = Logger.getLogger(LoggingFilter.class.getName()); + + private static final String NOTIFICATION_PREFIX = "* "; + + private static final String REQUEST_PREFIX = "> "; + + private static final String RESPONSE_PREFIX = "< "; + + private static final String PASSWORD_PATTERN = "\"password\".*:.*\"(.*)\""; + + private final class Adapter extends AbstractClientRequestAdapter { + private final StringBuilder b; + + Adapter(ClientRequestAdapter cra, StringBuilder b) { + super(cra); + this.b = b; + } + + public OutputStream adapt(ClientRequest request, OutputStream out) throws IOException { + return new LoggingOutputStream(getAdapter().adapt(request, out), b); + } + + } + + private final class LoggingOutputStream extends OutputStream { + private final OutputStream out; + + private final ByteArrayOutputStream baos = new ByteArrayOutputStream(); + + private final StringBuilder b; + + LoggingOutputStream(OutputStream out, StringBuilder b) { + this.out = out; + this.b = b; + } + + @Override + public void write(byte[] b) throws IOException { + baos.write(b); + out.write(b); + } + + @Override + public void write(byte[] b, int off, int len) throws IOException { + baos.write(b, off, len); + out.write(b, off, len); + } + + @Override + public void write(int b) throws IOException { + baos.write(b); + out.write(b); + } + + @Override + public void close() throws IOException { + printEntity(b, baos.toByteArray()); + log(b); + out.close(); + } + } + + private final PrintStream loggingStream; + + private final Logger logger; + + private long _id = 0; + + /** + * Create a logging filter logging the request and response to + * a default JDK logger, named as the fully qualified class name of this + * class. + */ + public JerseyLoggingFilter() { + this(LOGGER); + } + + /** + * Create a logging filter logging the request and response to + * a JDK logger. + * + * @param logger the logger to log requests and responses. + */ + public JerseyLoggingFilter(Logger logger) { + this.loggingStream = null; + this.logger = logger; + } + + /** + * Create a logging filter logging the request and response to + * print stream. + * + * @param loggingStream the print stream to log requests and responses. + */ + public JerseyLoggingFilter(PrintStream loggingStream) { + this.loggingStream = loggingStream; + this.logger = null; + } + + private void log(StringBuilder b) { + if (logger != null) { + logger.info(b.toString()); + } else { + loggingStream.print(b); + } + } + + private StringBuilder prefixId(StringBuilder b, long id) { + b.append(Long.toString(id)).append(" "); + return b; + } + + @Override + public ClientResponse handle(ClientRequest request) throws ClientHandlerException { + long id = ++this._id; + + logRequest(id, request); + + ClientResponse response = getNext().handle(request); + + logResponse(id, response); + + return response; + } + + private void logRequest(long id, ClientRequest request) { + StringBuilder b = new StringBuilder(); + + printRequestLine(b, id, request); + printRequestHeaders(b, id, request.getHeaders()); + + if (request.getEntity() != null) { + request.setAdapter(new Adapter(request.getAdapter(), b)); + } else { + log(b); + } + } + + private void printRequestLine(StringBuilder b, long id, ClientRequest request) { + prefixId(b, id).append(NOTIFICATION_PREFIX).append("Client out-bound request").append("\n"); + prefixId(b, id).append(REQUEST_PREFIX).append(request.getMethod()).append(" "). + append(request.getURI().toASCIIString()).append("\n"); + } + + private void printRequestHeaders(StringBuilder b, long id, MultivaluedMap headers) { + for (Map.Entry> e : headers.entrySet()) { + List val = e.getValue(); + String header = e.getKey(); + + if(val.size() == 1) { + prefixId(b, id).append(REQUEST_PREFIX).append(header).append(": ").append(ClientRequest.getHeaderValue(val.get(0))).append("\n"); + } else { + StringBuilder sb = new StringBuilder(); + boolean add = false; + for(Object o : val) { + if(add) sb.append(','); + add = true; + sb.append(ClientRequest.getHeaderValue(o)); + } + prefixId(b, id).append(REQUEST_PREFIX).append(header).append(": ").append(sb.toString()).append("\n"); + } + } + } + + private void logResponse(long id, ClientResponse response) { + StringBuilder b = new StringBuilder(); + + printResponseLine(b, id, response); + printResponseHeaders(b, id, response.getHeaders()); + + ByteArrayOutputStream out = new ByteArrayOutputStream(); + InputStream in = response.getEntityInputStream(); + try { + ReaderWriter.writeTo(in, out); + + byte[] requestEntity = out.toByteArray(); + printEntity(b, requestEntity); + response.setEntityInputStream(new ByteArrayInputStream(requestEntity)); + } catch (IOException ex) { + throw new ClientHandlerException(ex); + } + log(b); + } + + private void printResponseLine(StringBuilder b, long id, ClientResponse response) { + prefixId(b, id).append(NOTIFICATION_PREFIX). + append("Client in-bound response").append("\n"); + prefixId(b, id).append(RESPONSE_PREFIX). + append(Integer.toString(response.getStatus())). + append("\n"); + } + + private void printResponseHeaders(StringBuilder b, long id, MultivaluedMap headers) { + for (Map.Entry> e : headers.entrySet()) { + String header = e.getKey(); + for (String value : e.getValue()) { + prefixId(b, id).append(RESPONSE_PREFIX).append(header).append(": "). + append(value).append("\n"); + } + } + prefixId(b, id).append(RESPONSE_PREFIX).append("\n"); + } + + private void printEntity(StringBuilder b, byte[] entity) throws IOException { + if (entity.length == 0) + return; + String entityString = new String(entity); + entityString = entityString.replaceAll(PASSWORD_PATTERN, "\"password\" : \"******\""); + b.append(entityString).append("\n"); + } +} \ No newline at end of file diff --git a/openstack-client-connectors/jersey2-connector/src/main/java/com/woorea/openstack/connector/JaxRs20Connector.java b/openstack-client-connectors/jersey2-connector/src/main/java/com/woorea/openstack/connector/JaxRs20Connector.java index 82b9d5b95..e555046b8 100644 --- a/openstack-client-connectors/jersey2-connector/src/main/java/com/woorea/openstack/connector/JaxRs20Connector.java +++ b/openstack-client-connectors/jersey2-connector/src/main/java/com/woorea/openstack/connector/JaxRs20Connector.java @@ -11,8 +11,6 @@ import javax.ws.rs.client.WebTarget; import javax.ws.rs.core.MediaType; -import org.glassfish.jersey.filter.LoggingFilter; - import com.woorea.openstack.base.client.HttpMethod; import com.woorea.openstack.base.client.OpenStackClientConnector; import com.woorea.openstack.base.client.OpenStackRequest; @@ -22,6 +20,7 @@ public class JaxRs20Connector implements OpenStackClientConnector { protected Client client = OpenStack.CLIENT; + private Jersey2LoggingFilter logger = new Jersey2LoggingFilter(Logger.getLogger("os"), 10000); @Override public OpenStackResponse request(OpenStackRequest request) { @@ -32,8 +31,7 @@ public OpenStackResponse request(OpenStackRequest request) { target = target.queryParam(entry.getKey(), o); } } - - target.register(new LoggingFilter(Logger.getLogger("os"), 10000)); + target.register(logger); Invocation.Builder invocation = target.request(); for(Map.Entry> h : request.headers().entrySet()) { @@ -62,5 +60,4 @@ public OpenStackResponse request(OpenStackRequest request) { .getStatusInfo().toString(), e.getResponse().getStatus()); } } - } diff --git a/openstack-client-connectors/jersey2-connector/src/main/java/com/woorea/openstack/connector/Jersey2LoggingFilter.java b/openstack-client-connectors/jersey2-connector/src/main/java/com/woorea/openstack/connector/Jersey2LoggingFilter.java new file mode 100644 index 000000000..a96213829 --- /dev/null +++ b/openstack-client-connectors/jersey2-connector/src/main/java/com/woorea/openstack/connector/Jersey2LoggingFilter.java @@ -0,0 +1,301 @@ +/* + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER. + * + * Copyright (c) 2011-2013 Oracle and/or its affiliates. All rights reserved. + * + * The contents of this file are subject to the terms of either the GNU + * General Public License Version 2 only ("GPL") or the Common Development + * and Distribution License("CDDL") (collectively, the "License"). You + * may not use this file except in compliance with the License. You can + * obtain a copy of the License at + * http://glassfish.java.net/public/CDDL+GPL_1_1.html + * or packager/legal/LICENSE.txt. See the License for the specific + * language governing permissions and limitations under the License. + * + * When distributing the software, include this License Header Notice in each + * file and include the License file at packager/legal/LICENSE.txt. + * + * GPL Classpath Exception: + * Oracle designates this particular file as subject to the "Classpath" + * exception as provided by Oracle in the GPL Version 2 section of the License + * file that accompanied this code. + * + * Modifications: + * If applicable, add the following below the License Header, with the fields + * enclosed by brackets [] replaced by your own identifying information: + * "Portions Copyright [year] [name of copyright owner]" + * + * Contributor(s): + * If you wish your version of this file to be governed by only the CDDL or + * only the GPL Version 2, indicate your decision by adding "[Contributor] + * elects to include this software in this distribution under the [CDDL or GPL + * Version 2] license." If you don't indicate a single choice of license, a + * recipient has the option to distribute your version of this file under + * either the CDDL, the GPL Version 2 or to extend the choice of license to + * its licensees as provided above. However, if you add GPL Version 2 code + * and therefore, elected the GPL Version 2 license, then the option applies + * only if the new code is made subject to such option by the copyright + * holder. + */ +package com.woorea.openstack.connector; + +import java.io.BufferedInputStream; +import java.io.ByteArrayOutputStream; +import java.io.IOException; +import java.io.InputStream; +import java.io.OutputStream; +import java.net.URI; +import java.util.List; +import java.util.Map; +import java.util.concurrent.atomic.AtomicLong; +import java.util.logging.Logger; + +import javax.annotation.Priority; +import javax.ws.rs.WebApplicationException; +import javax.ws.rs.client.ClientRequestContext; +import javax.ws.rs.client.ClientRequestFilter; +import javax.ws.rs.client.ClientResponseContext; +import javax.ws.rs.client.ClientResponseFilter; +import javax.ws.rs.container.ContainerRequestContext; +import javax.ws.rs.container.ContainerRequestFilter; +import javax.ws.rs.container.ContainerResponseContext; +import javax.ws.rs.container.ContainerResponseFilter; +import javax.ws.rs.container.PreMatching; +import javax.ws.rs.core.MultivaluedMap; +import javax.ws.rs.ext.WriterInterceptor; +import javax.ws.rs.ext.WriterInterceptorContext; + +import org.glassfish.jersey.message.internal.HeadersFactory; + +/** + * Universal logging filter. + * + * Can be used on client or server side. Has the highest priority. + * + * @author Pavel Bucek (pavel.bucek at oracle.com) + * @author Martin Matula (martin.matula at oracle.com) + */ +@PreMatching +@Priority(Integer.MIN_VALUE) +@SuppressWarnings("ClassWithMultipleLoggers") +public class Jersey2LoggingFilter implements ContainerRequestFilter, ClientRequestFilter, ContainerResponseFilter, + ClientResponseFilter, WriterInterceptor { + + private static final Logger LOGGER = Logger.getLogger(Jersey2LoggingFilter.class.getName()); + private static final String NOTIFICATION_PREFIX = "* "; + private static final String REQUEST_PREFIX = "> "; + private static final String RESPONSE_PREFIX = "< "; + private static final String ENTITY_LOGGER_PROPERTY = Jersey2LoggingFilter.class.getName() + ".entityLogger"; + // + @SuppressWarnings("NonConstantLogger") + private final Logger logger; + private final AtomicLong _id = new AtomicLong(0); + private final boolean printEntity; + private final int maxEntitySize; + + /** + * Create a logging filter logging the request and response to a default JDK + * logger, named as the fully qualified class name of this class. Entity + * logging is turned off by default. + */ + public Jersey2LoggingFilter() { + this(LOGGER, false); + } + + /** + * Create a logging filter with custom logger and custom settings of entity + * logging. + * + * @param logger the logger to log requests and responses. + * @param printEntity if true, entity will be logged as well up to the default maxEntitySize, which is 10KB + */ + public Jersey2LoggingFilter(Logger logger, boolean printEntity) { + this.logger = logger; + this.printEntity = printEntity; + this.maxEntitySize = 10 * 1024; + } + + /** + * Creates a logging filter with custom logger and entity logging turned on, but potentially limiting the size + * of entity to be buffered and logged. + * + * @param logger the logger to log requests and responses. + * @param maxEntitySize maximum number of entity bytes to be logged (and buffered) - if the entity is larger, + * logging filter will print (and buffer in memory) only the specified number of bytes + * and print "...more..." string at the end. + */ + public Jersey2LoggingFilter(Logger logger, int maxEntitySize) { + this.logger = logger; + this.printEntity = true; + this.maxEntitySize = maxEntitySize; + } + + private void log(StringBuilder b) { + if (logger != null) { + logger.info(b.toString()); + } + } + + private StringBuilder prefixId(StringBuilder b, long id) { + b.append(Long.toString(id)).append(" "); + return b; + } + + private void printRequestLine(StringBuilder b, long id, String method, URI uri) { + prefixId(b, id).append(NOTIFICATION_PREFIX).append("LoggingFilter - Request received on thread ").append(Thread.currentThread().getName()).append("\n"); + prefixId(b, id).append(REQUEST_PREFIX).append(method).append(" "). + append(uri.toASCIIString()).append("\n"); + } + + private void printResponseLine(StringBuilder b, long id, int status) { + prefixId(b, id).append(NOTIFICATION_PREFIX). + append("LoggingFilter - Response received on thread ").append(Thread.currentThread().getName()).append("\n"); + prefixId(b, id).append(RESPONSE_PREFIX). + append(Integer.toString(status)). + append("\n"); + } + + private void printPrefixedHeaders(StringBuilder b, long id, final String prefix, MultivaluedMap headers) { + for (Map.Entry> e : headers.entrySet()) { + List val = e.getValue(); + String header = e.getKey(); + + if (val.size() == 1) { + prefixId(b, id).append(prefix).append(header).append(": ").append(val.get(0)).append("\n"); + } else { + StringBuilder sb = new StringBuilder(); + boolean add = false; + for (Object s : val) { + if (add) { + sb.append(','); + } + add = true; + sb.append(s); + } + prefixId(b, id).append(prefix).append(header).append(": ").append(sb.toString()).append("\n"); + } + } + } + + private InputStream logInboundEntity(StringBuilder b, InputStream stream) throws IOException { + if (!stream.markSupported()) { + stream = new BufferedInputStream(stream); + } + stream.mark(maxEntitySize + 1); + byte[] entity = new byte[maxEntitySize + 1]; + int entitySize = stream.read(entity); + b.append(new String(entity, 0, Math.min(entitySize, maxEntitySize))); + if (entitySize > maxEntitySize) { + b.append("...more..."); + } + b.append('\n'); + stream.reset(); + return stream; + } + + @Override + public void filter(ClientRequestContext context) throws IOException { + long id = this._id.incrementAndGet(); + StringBuilder b = new StringBuilder(); + + printRequestLine(b, id, context.getMethod(), context.getUri()); + // TODO: change to context.getStringHeaders() once the method is added to the API + printPrefixedHeaders(b, id, REQUEST_PREFIX, HeadersFactory.asStringHeaders(context.getHeaders())); + + if (printEntity && context.hasEntity()) { + OutputStream stream = new LoggingStream(b, context.getEntityStream()); + context.setEntityStream(stream); + context.setProperty(ENTITY_LOGGER_PROPERTY, stream); + // not calling log(b) here - it will be called by the interceptor + } else { + log(b); + } + } + + @Override + public void filter(ClientRequestContext requestContext, ClientResponseContext responseContext) throws IOException { + long id = this._id.incrementAndGet(); + StringBuilder b = new StringBuilder(); + + printResponseLine(b, id, responseContext.getStatus()); + printPrefixedHeaders(b, id, RESPONSE_PREFIX, responseContext.getHeaders()); + + if (printEntity && responseContext.hasEntity()) { + responseContext.setEntityStream(logInboundEntity(b, responseContext.getEntityStream())); + } + + log(b); + } + + @Override + public void filter(ContainerRequestContext context) throws IOException { + long id = this._id.incrementAndGet(); + StringBuilder b = new StringBuilder(); + + printRequestLine(b, id, context.getMethod(), context.getUriInfo().getRequestUri()); + printPrefixedHeaders(b, id, REQUEST_PREFIX, context.getHeaders()); + + if (printEntity && context.hasEntity()) { + context.setEntityStream(logInboundEntity(b, context.getEntityStream())); + } + + log(b); + } + + @Override + public void filter(ContainerRequestContext requestContext, ContainerResponseContext responseContext) throws IOException { + long id = this._id.incrementAndGet(); + StringBuilder b = new StringBuilder(); + + printResponseLine(b, id, responseContext.getStatus()); + // TODO: change to context.getStringHeaders() once the method is added to the API + printPrefixedHeaders(b, id, RESPONSE_PREFIX, HeadersFactory.asStringHeaders(responseContext.getHeaders())); + + if (printEntity && responseContext.hasEntity()) { + OutputStream stream = new LoggingStream(b, responseContext.getEntityStream()); + responseContext.setEntityStream(stream); + requestContext.setProperty(ENTITY_LOGGER_PROPERTY, stream); + // not calling log(b) here - it will be called by the interceptor + } else { + log(b); + } + } + + @Override + public void aroundWriteTo(WriterInterceptorContext writerInterceptorContext) throws IOException, WebApplicationException { + LoggingStream stream = (LoggingStream) writerInterceptorContext.getProperty(ENTITY_LOGGER_PROPERTY); + writerInterceptorContext.proceed(); + if (stream != null) { + log(stream.getStringBuilder()); + } + } + + private class LoggingStream extends OutputStream { + private static final String PASSWORD_PATTERN = "\"password\".*:.*\"(.*)\""; + private final StringBuilder b; + private final OutputStream inner; + private final ByteArrayOutputStream baos = new ByteArrayOutputStream(); + + LoggingStream(StringBuilder b, OutputStream inner) { + this.b = b; + this.inner = inner; + } + + StringBuilder getStringBuilder() { + // write entity to the builder + byte[] entity = baos.toByteArray(); + String entityString = new String(entity); + entityString = entityString.replaceAll(PASSWORD_PATTERN, "\"password\" : \"******\""); + b.append(entityString).append('\n'); + return b; + } + + @Override + public void write(int i) throws IOException { + if (baos.size() <= maxEntitySize) { + baos.write(i); + } + inner.write(i); + } + } +} diff --git a/pom.xml b/pom.xml index 29c2f6884..953723355 100644 --- a/pom.xml +++ b/pom.xml @@ -127,6 +127,20 @@ maven-resources-plugin 2.6 + + org.apache.maven.plugins + maven-source-plugin + 2.2.1 + + + attach-sources + verify + + jar-no-fork + + + + - + \ No newline at end of file From 04f43e3067a8e7ca5eefaf7f26919708d48acd1a Mon Sep 17 00:00:00 2001 From: jxiaobin Date: Wed, 24 Jul 2013 15:05:23 +0800 Subject: [PATCH 007/144] support quota/limits/usage operations --- .../java/com/woorea/openstack/nova/Nova.java | 11 +++ .../openstack/nova/api/QuotaSetsResource.java | 61 +++++++++++++ .../woorea/openstack/nova/model/Limits.java | 88 +++++++++++++++++- .../woorea/openstack/nova/model/QuotaSet.java | 25 +++++- .../nova/model/SimpleTenantUsage.java | 90 +++++++++++++++++++ .../openstack/connector/JerseyResponse.java | 5 ++ .../openstack/connector/JaxRs20Response.java | 5 ++ 7 files changed, 282 insertions(+), 3 deletions(-) create mode 100644 nova-client/src/main/java/com/woorea/openstack/nova/api/QuotaSetsResource.java diff --git a/nova-client/src/main/java/com/woorea/openstack/nova/Nova.java b/nova-client/src/main/java/com/woorea/openstack/nova/Nova.java index d8710d050..2dde13008 100644 --- a/nova-client/src/main/java/com/woorea/openstack/nova/Nova.java +++ b/nova-client/src/main/java/com/woorea/openstack/nova/Nova.java @@ -6,6 +6,7 @@ import com.woorea.openstack.nova.api.ExtensionsResource; import com.woorea.openstack.nova.api.FlavorsResource; import com.woorea.openstack.nova.api.ImagesResource; +import com.woorea.openstack.nova.api.QuotaSetsResource; import com.woorea.openstack.nova.api.ServersResource; import com.woorea.openstack.nova.api.extensions.AggregatesExtension; import com.woorea.openstack.nova.api.extensions.FloatingIpsExtension; @@ -35,6 +36,8 @@ public class Nova extends OpenStackClient { private final VolumesExtension VOLUMES; private final AggregatesExtension AGGREGATES; + + private final QuotaSetsResource QUOTA_SETS; public Nova(String endpoint, OpenStackClientConnector connector) { super(endpoint, connector); @@ -48,6 +51,7 @@ public Nova(String endpoint, OpenStackClientConnector connector) { SNAPSHOTS = new SnapshotsExtension(this); VOLUMES = new VolumesExtension(this); AGGREGATES = new AggregatesExtension(this); + QUOTA_SETS = new QuotaSetsResource(this); } public Nova(String endpoint) { @@ -90,4 +94,11 @@ public VolumesExtension volumes() { return VOLUMES; } + public AggregatesExtension aggregates() { + return AGGREGATES; + } + + public QuotaSetsResource quotaSets() { + return QUOTA_SETS; + } } diff --git a/nova-client/src/main/java/com/woorea/openstack/nova/api/QuotaSetsResource.java b/nova-client/src/main/java/com/woorea/openstack/nova/api/QuotaSetsResource.java new file mode 100644 index 000000000..166fb42e3 --- /dev/null +++ b/nova-client/src/main/java/com/woorea/openstack/nova/api/QuotaSetsResource.java @@ -0,0 +1,61 @@ +package com.woorea.openstack.nova.api; + + +import com.woorea.openstack.base.client.Entity; +import com.woorea.openstack.base.client.HttpMethod; +import com.woorea.openstack.base.client.OpenStackClient; +import com.woorea.openstack.base.client.OpenStackRequest; +import com.woorea.openstack.nova.model.Limits; +import com.woorea.openstack.nova.model.QuotaSet; +import com.woorea.openstack.nova.model.SimpleTenantUsage; + +public class QuotaSetsResource { + + private final OpenStackClient CLIENT; + + public QuotaSetsResource(OpenStackClient client) { + CLIENT = client; + } + + public ShowQuota showQuota(String tenantId) { + return new ShowQuota(tenantId); + } + + public UpdateQuota updateQuota(String tenantId, QuotaSet quotaSet) { + return new UpdateQuota(tenantId, quotaSet); + } + + public ShowUsage showUsage(String tenantId) { + return new ShowUsage(tenantId); + } + + public ShowUsedLimits showUsedLimits() { + return new ShowUsedLimits(); + } + + public class ShowQuota extends OpenStackRequest { + public ShowQuota(String tenantId) { + super(CLIENT, HttpMethod.GET, new StringBuilder("/os-quota-sets/").append(tenantId), null, QuotaSet.class); + } + + } + + public class UpdateQuota extends OpenStackRequest { + public UpdateQuota(String tenantId, QuotaSet quotaSet) { + super(CLIENT, HttpMethod.PUT, new StringBuilder("/os-quota-sets/").append(tenantId), Entity.json(quotaSet), QuotaSet.class); + } + } + + public class ShowUsage extends OpenStackRequest { + public ShowUsage(String tenantId) { + super(CLIENT, HttpMethod.GET, new StringBuilder("/os-simple-tenant-usage/").append(tenantId), null, SimpleTenantUsage.class); + } + } + + public class ShowUsedLimits extends OpenStackRequest { + public ShowUsedLimits() { + super(CLIENT, HttpMethod.GET, new StringBuilder("/limits"), null, Limits.class); + } + } +} + diff --git a/nova-model/src/main/java/com/woorea/openstack/nova/model/Limits.java b/nova-model/src/main/java/com/woorea/openstack/nova/model/Limits.java index 881115354..45c6a119d 100644 --- a/nova-model/src/main/java/com/woorea/openstack/nova/model/Limits.java +++ b/nova-model/src/main/java/com/woorea/openstack/nova/model/Limits.java @@ -25,6 +25,8 @@ public static final class LimitEntry implements Serializable { private Integer available; + private Integer value; + /** * @return the nextAvailable */ @@ -60,6 +62,12 @@ public Integer getAvailable() { return available; } + /** + * @return the value + */ + public Integer getValue() { + return value; + } /* (non-Javadoc) * @see java.lang.Object#toString() */ @@ -67,7 +75,7 @@ public Integer getAvailable() { public String toString() { return "LimitEntry [nextAvailable=" + nextAvailable + ", unit=" + unit + ", verb=" + verb + ", remaining=" + remaining - + ", available=" + available + "]"; + + ", available=" + available + ", value=" + value + "]"; } @@ -128,6 +136,32 @@ private static final class AbsoluteLimit { private Integer maxTotalRAMSize; + private Integer totalVolumesUsed; + + private Integer maxSecurityGroupRules; + + private Integer maxTotalKeypairs; + + private Integer totalCoresUsed; + + private Integer maxTotalVolumes; + + private Integer totalRAMUsed; + + private Integer totalInstancesUsed; + + private Integer maxSecurityGroups; + + private Integer totalVolumeGigabytesUsed; + + private Integer totalSecurityGroupsUsed; + + private Integer maxTotalFloatingIps; + + private Integer totalKeyPairsUsed; + + private Integer maxTotalVolumeGigabytes; + /** * @return the maxServerMeta */ @@ -177,6 +211,58 @@ public Integer getMaxTotalRAMSize() { return maxTotalRAMSize; } + public Integer getTotalVolumesUsed() { + return totalVolumesUsed; + } + + public Integer getMaxSecurityGroupRules() { + return maxSecurityGroupRules; + } + + public Integer getMaxTotalKeypairs() { + return maxTotalKeypairs; + } + + public Integer getTotalCoresUsed() { + return totalCoresUsed; + } + + public Integer getMaxTotalVolumes() { + return maxTotalVolumes; + } + + public Integer getTotalRAMUsed() { + return totalRAMUsed; + } + + public Integer getTotalInstancesUsed() { + return totalInstancesUsed; + } + + public Integer getMaxSecurityGroups() { + return maxSecurityGroups; + } + + public Integer getTotalVolumeGigabytesUsed() { + return totalVolumeGigabytesUsed; + } + + public Integer getTotalSecurityGroupsUsed() { + return totalSecurityGroupsUsed; + } + + public Integer getMaxTotalFloatingIps() { + return maxTotalFloatingIps; + } + + public Integer getTotalKeyPairsUsed() { + return totalKeyPairsUsed; + } + + public Integer getMaxTotalVolumeGigabytes() { + return maxTotalVolumeGigabytes; + } + /* (non-Javadoc) * @see java.lang.Object#toString() */ diff --git a/nova-model/src/main/java/com/woorea/openstack/nova/model/QuotaSet.java b/nova-model/src/main/java/com/woorea/openstack/nova/model/QuotaSet.java index d9fe704f4..0a2f55dd7 100644 --- a/nova-model/src/main/java/com/woorea/openstack/nova/model/QuotaSet.java +++ b/nova-model/src/main/java/com/woorea/openstack/nova/model/QuotaSet.java @@ -36,6 +36,12 @@ public class QuotaSet { @JsonProperty("security_group_rules") private Integer securityGroupRules; + @JsonProperty("injected_file_path_bytes") + private Integer injectedFilePathBytes; + + @JsonProperty("key_pairs") + private Integer keyPairs; + public String getId() { return id; } @@ -131,5 +137,20 @@ public Integer getSecurityGroupRules() { public void setSecurityGroupRules(Integer securityGroupRules) { this.securityGroupRules = securityGroupRules; } - -} + + public Integer getKeyPairs() { + return keyPairs; + } + + public void setKeyPairs(Integer keyPairs) { + this.keyPairs = keyPairs; + } + + public Integer getInjectedFilePathBytes() { + return injectedFilePathBytes; + } + + public void setInjectedFilePathBytes(Integer injectedFilePathBytes) { + this.injectedFilePathBytes = injectedFilePathBytes; + } +} \ No newline at end of file diff --git a/nova-model/src/main/java/com/woorea/openstack/nova/model/SimpleTenantUsage.java b/nova-model/src/main/java/com/woorea/openstack/nova/model/SimpleTenantUsage.java index 1c4423170..f75414d99 100644 --- a/nova-model/src/main/java/com/woorea/openstack/nova/model/SimpleTenantUsage.java +++ b/nova-model/src/main/java/com/woorea/openstack/nova/model/SimpleTenantUsage.java @@ -2,6 +2,7 @@ import java.io.Serializable; import java.math.BigDecimal; +import java.util.List; import org.codehaus.jackson.annotate.JsonProperty; import org.codehaus.jackson.map.annotate.JsonRootName; @@ -28,6 +29,9 @@ public class SimpleTenantUsage implements Serializable { @JsonProperty("total_hours") private String totalHours; + @JsonProperty("server_usages") + private List serverUsages; + /** * @return the totalMemoryMbUsage */ @@ -126,6 +130,14 @@ public void setTotalHours(String totalHours) { this.totalHours = totalHours; } + public List getServerUsages() { + return serverUsages; + } + + public void setServerUsages(List serverUsages) { + this.serverUsages = serverUsages; + } + /* (non-Javadoc) * @see java.lang.Object#toString() */ @@ -138,5 +150,83 @@ public String toString() { + ", totalHours=" + totalHours + "]"; } + public static final class ServerUsage implements Serializable { + @JsonProperty("instance_id") + private String instanceId; + + private Integer uptime; + + @JsonProperty("started_at") + private String startedAt; + @JsonProperty("ended_at") + private String endedAt; + + @JsonProperty("memory_mb") + private Integer memoryMb; + + @JsonProperty("tenant_id") + private String tenantId; + + private String state; + + private Double hours; + + private Integer vcpus; + + private String flavor; + + @JsonProperty("local_gb") + private Integer localDiskSize; + + private String name; + + public String getInstanceId() { + return instanceId; + } + + public Integer getUptime() { + return uptime; + } + + public String getStartedAt() { + return startedAt; + } + + public String getEndedAt() { + return endedAt; + } + + public Integer getMemoryMb() { + return memoryMb; + } + + public String getTenantId() { + return tenantId; + } + + public String getState() { + return state; + } + + public Double getHours() { + return hours; + } + + public Integer getVcpus() { + return vcpus; + } + + public String getFlavor() { + return flavor; + } + + public Integer getLocalDiskSize() { + return localDiskSize; + } + + public String getName() { + return name; + } + } } diff --git a/openstack-client-connectors/jersey-connector/src/main/java/com/woorea/openstack/connector/JerseyResponse.java b/openstack-client-connectors/jersey-connector/src/main/java/com/woorea/openstack/connector/JerseyResponse.java index 547c14f72..1260bb686 100755 --- a/openstack-client-connectors/jersey-connector/src/main/java/com/woorea/openstack/connector/JerseyResponse.java +++ b/openstack-client-connectors/jersey-connector/src/main/java/com/woorea/openstack/connector/JerseyResponse.java @@ -6,6 +6,7 @@ import com.sun.jersey.api.client.ClientResponse; import com.woorea.openstack.base.client.OpenStackResponse; +import com.woorea.openstack.base.client.OpenStackResponseException; public class JerseyResponse implements OpenStackResponse { @@ -17,6 +18,10 @@ public JerseyResponse(ClientResponse response) { @Override public T getEntity(Class returnType) { + if(response.getStatus() >= 400) { + throw new OpenStackResponseException(response.getClientResponseStatus().getReasonPhrase(), + response.getStatus()); + } if(response.hasEntity() && returnType != null && Void.class != returnType) { return response.getEntity(returnType); } else { diff --git a/openstack-client-connectors/jersey2-connector/src/main/java/com/woorea/openstack/connector/JaxRs20Response.java b/openstack-client-connectors/jersey2-connector/src/main/java/com/woorea/openstack/connector/JaxRs20Response.java index 12169042f..ebddd0771 100644 --- a/openstack-client-connectors/jersey2-connector/src/main/java/com/woorea/openstack/connector/JaxRs20Response.java +++ b/openstack-client-connectors/jersey2-connector/src/main/java/com/woorea/openstack/connector/JaxRs20Response.java @@ -7,6 +7,7 @@ import javax.ws.rs.core.Response; import com.woorea.openstack.base.client.OpenStackResponse; +import com.woorea.openstack.base.client.OpenStackResponseException; public class JaxRs20Response implements OpenStackResponse { @@ -18,6 +19,10 @@ public JaxRs20Response(Response response) { @Override public T getEntity(Class returnType) { + if(response.getStatus() >= 400) { + throw new OpenStackResponseException(response.getStatusInfo().getReasonPhrase(), + response.getStatusInfo().getStatusCode()); + } return response.readEntity(returnType); } From 8892092d0c76d51c71fb9a23eb0ee6e2e2fb382b Mon Sep 17 00:00:00 2001 From: woorea Date: Fri, 26 Jul 2013 11:48:06 +0200 Subject: [PATCH 008/144] [maven-release-plugin] prepare release v3.2.0 --- ceilometer-client/pom.xml | 6 +++--- ceilometer-model/pom.xml | 2 +- glance-client/pom.xml | 6 +++--- glance-model/pom.xml | 2 +- keystone-client/pom.xml | 6 +++--- keystone-model/pom.xml | 2 +- nova-client/pom.xml | 6 +++--- nova-model/pom.xml | 2 +- .../jersey-connector/pom.xml | 2 +- .../jersey2-connector/pom.xml | 4 ++-- openstack-client-connectors/pom.xml | 4 ++-- .../resteasy-connector/pom.xml | 2 +- openstack-client/pom.xml | 2 +- openstack-console/pom.xml | 6 +++--- openstack-examples/pom.xml | 14 +++++++------- pom.xml | 2 +- quantum-client/pom.xml | 6 +++--- quantum-model/pom.xml | 2 +- swift-client/pom.xml | 6 +++--- swift-model/pom.xml | 2 +- 20 files changed, 42 insertions(+), 42 deletions(-) diff --git a/ceilometer-client/pom.xml b/ceilometer-client/pom.xml index 4523842d5..b5019d9ae 100644 --- a/ceilometer-client/pom.xml +++ b/ceilometer-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.0-SNAPSHOT + 3.2.0 ceilometer-client OpenStack Ceilometer Client @@ -12,12 +12,12 @@ com.woorea openstack-client - 3.2.0-SNAPSHOT + 3.2.0 com.woorea ceilometer-model - 3.2.0-SNAPSHOT + 3.2.0 diff --git a/ceilometer-model/pom.xml b/ceilometer-model/pom.xml index 243d6a088..0fbf86c97 100644 --- a/ceilometer-model/pom.xml +++ b/ceilometer-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.0-SNAPSHOT + 3.2.0 ceilometer-model OpenStack Ceilometer Model diff --git a/glance-client/pom.xml b/glance-client/pom.xml index eb1936283..fada0763d 100644 --- a/glance-client/pom.xml +++ b/glance-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.0-SNAPSHOT + 3.2.0 glance-client OpenStack Glance Client @@ -12,13 +12,13 @@ com.woorea openstack-client - 3.2.0-SNAPSHOT + 3.2.0 com.woorea glance-model - 3.2.0-SNAPSHOT + 3.2.0 \ No newline at end of file diff --git a/glance-model/pom.xml b/glance-model/pom.xml index 574fc1bdf..167d11dd0 100644 --- a/glance-model/pom.xml +++ b/glance-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.0-SNAPSHOT + 3.2.0 glance-model OpenStack Glance Model diff --git a/keystone-client/pom.xml b/keystone-client/pom.xml index 427fd3145..258dd3810 100644 --- a/keystone-client/pom.xml +++ b/keystone-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.0-SNAPSHOT + 3.2.0 keystone-client OpenStack Keystone Client @@ -12,12 +12,12 @@ com.woorea openstack-client - 3.2.0-SNAPSHOT + 3.2.0 com.woorea keystone-model - 3.2.0-SNAPSHOT + 3.2.0 \ No newline at end of file diff --git a/keystone-model/pom.xml b/keystone-model/pom.xml index 50c842d81..2f53c89bf 100644 --- a/keystone-model/pom.xml +++ b/keystone-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.0-SNAPSHOT + 3.2.0 keystone-model OpenStack Keystone Model diff --git a/nova-client/pom.xml b/nova-client/pom.xml index 3c5adf63a..f6455652a 100644 --- a/nova-client/pom.xml +++ b/nova-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.0-SNAPSHOT + 3.2.0 nova-client OpenStack Nova Client @@ -12,12 +12,12 @@ com.woorea openstack-client - 3.2.0-SNAPSHOT + 3.2.0 com.woorea nova-model - 3.2.0-SNAPSHOT + 3.2.0 \ No newline at end of file diff --git a/nova-model/pom.xml b/nova-model/pom.xml index d5cdfae4d..cd03fa210 100644 --- a/nova-model/pom.xml +++ b/nova-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.0-SNAPSHOT + 3.2.0 nova-model OpenStack Nova Model diff --git a/openstack-client-connectors/jersey-connector/pom.xml b/openstack-client-connectors/jersey-connector/pom.xml index 209687995..4b1a5c03e 100644 --- a/openstack-client-connectors/jersey-connector/pom.xml +++ b/openstack-client-connectors/jersey-connector/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-client-connectors - 3.2.0-SNAPSHOT + 3.2.0 jersey-connector OpenStack Jersey Connector diff --git a/openstack-client-connectors/jersey2-connector/pom.xml b/openstack-client-connectors/jersey2-connector/pom.xml index 12056477a..32abec8c7 100644 --- a/openstack-client-connectors/jersey2-connector/pom.xml +++ b/openstack-client-connectors/jersey2-connector/pom.xml @@ -4,7 +4,7 @@ com.woorea openstack-client-connectors - 3.2.0-SNAPSHOT + 3.2.0 jersey2-connector OpenStack Jersey2 Connector @@ -27,7 +27,7 @@ com.woorea openstack-client - 3.2.0-SNAPSHOT + 3.2.0 diff --git a/openstack-client-connectors/pom.xml b/openstack-client-connectors/pom.xml index dc5e4be63..b633f7436 100644 --- a/openstack-client-connectors/pom.xml +++ b/openstack-client-connectors/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.0-SNAPSHOT + 3.2.0 openstack-client-connectors OpenStack Client Connectors @@ -42,7 +42,7 @@ com.woorea openstack-client - 3.2.0-SNAPSHOT + 3.2.0 \ No newline at end of file diff --git a/openstack-client-connectors/resteasy-connector/pom.xml b/openstack-client-connectors/resteasy-connector/pom.xml index 80d17a37f..817f06662 100644 --- a/openstack-client-connectors/resteasy-connector/pom.xml +++ b/openstack-client-connectors/resteasy-connector/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-client-connectors - 3.2.0-SNAPSHOT + 3.2.0 resteasy-connector OpenStack RESTEasy Connector diff --git a/openstack-client/pom.xml b/openstack-client/pom.xml index ea9aa1048..4829111b1 100644 --- a/openstack-client/pom.xml +++ b/openstack-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.0-SNAPSHOT + 3.2.0 openstack-client OpenStack Client diff --git a/openstack-console/pom.xml b/openstack-console/pom.xml index 0a7711812..01ad6db0f 100644 --- a/openstack-console/pom.xml +++ b/openstack-console/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.0-SNAPSHOT + 3.2.0 openstack-console OpenStack Console @@ -22,12 +22,12 @@ com.woorea keystone-client - 3.2.0-SNAPSHOT + 3.2.0 com.woorea nova-client - 3.2.0-SNAPSHOT + 3.2.0 diff --git a/openstack-examples/pom.xml b/openstack-examples/pom.xml index 3225bc5d7..2d4d34da6 100644 --- a/openstack-examples/pom.xml +++ b/openstack-examples/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.0-SNAPSHOT + 3.2.0 openstack-examples OpenStack Examples @@ -12,32 +12,32 @@ com.woorea keystone-client - 3.2.0-SNAPSHOT + 3.2.0 com.woorea nova-client - 3.2.0-SNAPSHOT + 3.2.0 com.woorea swift-client - 3.2.0-SNAPSHOT + 3.2.0 com.woorea quantum-client - 3.2.0-SNAPSHOT + 3.2.0 com.woorea ceilometer-client - 3.2.0-SNAPSHOT + 3.2.0 com.woorea glance-client - 3.2.0-SNAPSHOT + 3.2.0 diff --git a/pom.xml b/pom.xml index 953723355..3fc5102c9 100644 --- a/pom.xml +++ b/pom.xml @@ -2,7 +2,7 @@ 4.0.0 com.woorea openstack-java-sdk - 3.2.0-SNAPSHOT + 3.2.0 pom OpenStack Java SDK OpenStack Java SDK diff --git a/quantum-client/pom.xml b/quantum-client/pom.xml index 79c697ab8..19c9973b8 100644 --- a/quantum-client/pom.xml +++ b/quantum-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.0-SNAPSHOT + 3.2.0 quantum-client OpenStack Quantum Client @@ -12,12 +12,12 @@ com.woorea openstack-client - 3.2.0-SNAPSHOT + 3.2.0 com.woorea quantum-model - 3.2.0-SNAPSHOT + 3.2.0 diff --git a/quantum-model/pom.xml b/quantum-model/pom.xml index 1255f1e5e..21cbbda98 100644 --- a/quantum-model/pom.xml +++ b/quantum-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.0-SNAPSHOT + 3.2.0 quantum-model OpenStack Quantum Model diff --git a/swift-client/pom.xml b/swift-client/pom.xml index e5236b213..0dd30fa4c 100644 --- a/swift-client/pom.xml +++ b/swift-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.0-SNAPSHOT + 3.2.0 swift-client OpenStack Swift Client @@ -12,12 +12,12 @@ com.woorea openstack-client - 3.2.0-SNAPSHOT + 3.2.0 com.woorea swift-model - 3.2.0-SNAPSHOT + 3.2.0 \ No newline at end of file diff --git a/swift-model/pom.xml b/swift-model/pom.xml index 0220d7b0a..01c96bee7 100644 --- a/swift-model/pom.xml +++ b/swift-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.0-SNAPSHOT + 3.2.0 swift-model OpenStack Swift Model From 7d02d588b64a11d3e859916153d8c1206a1d85c1 Mon Sep 17 00:00:00 2001 From: woorea Date: Fri, 26 Jul 2013 11:48:19 +0200 Subject: [PATCH 009/144] [maven-release-plugin] prepare for next development iteration --- ceilometer-client/pom.xml | 6 +++--- ceilometer-model/pom.xml | 2 +- glance-client/pom.xml | 6 +++--- glance-model/pom.xml | 2 +- keystone-client/pom.xml | 6 +++--- keystone-model/pom.xml | 2 +- nova-client/pom.xml | 6 +++--- nova-model/pom.xml | 2 +- .../jersey-connector/pom.xml | 2 +- .../jersey2-connector/pom.xml | 4 ++-- openstack-client-connectors/pom.xml | 4 ++-- .../resteasy-connector/pom.xml | 2 +- openstack-client/pom.xml | 2 +- openstack-console/pom.xml | 6 +++--- openstack-examples/pom.xml | 14 +++++++------- pom.xml | 2 +- quantum-client/pom.xml | 6 +++--- quantum-model/pom.xml | 2 +- swift-client/pom.xml | 6 +++--- swift-model/pom.xml | 2 +- 20 files changed, 42 insertions(+), 42 deletions(-) diff --git a/ceilometer-client/pom.xml b/ceilometer-client/pom.xml index b5019d9ae..ce123f37a 100644 --- a/ceilometer-client/pom.xml +++ b/ceilometer-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.0 + 3.2.1-SNAPSHOT ceilometer-client OpenStack Ceilometer Client @@ -12,12 +12,12 @@ com.woorea openstack-client - 3.2.0 + 3.2.1-SNAPSHOT com.woorea ceilometer-model - 3.2.0 + 3.2.1-SNAPSHOT diff --git a/ceilometer-model/pom.xml b/ceilometer-model/pom.xml index 0fbf86c97..4f3c70a74 100644 --- a/ceilometer-model/pom.xml +++ b/ceilometer-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.0 + 3.2.1-SNAPSHOT ceilometer-model OpenStack Ceilometer Model diff --git a/glance-client/pom.xml b/glance-client/pom.xml index fada0763d..d8ac1e4ed 100644 --- a/glance-client/pom.xml +++ b/glance-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.0 + 3.2.1-SNAPSHOT glance-client OpenStack Glance Client @@ -12,13 +12,13 @@ com.woorea openstack-client - 3.2.0 + 3.2.1-SNAPSHOT com.woorea glance-model - 3.2.0 + 3.2.1-SNAPSHOT \ No newline at end of file diff --git a/glance-model/pom.xml b/glance-model/pom.xml index 167d11dd0..b25e5113a 100644 --- a/glance-model/pom.xml +++ b/glance-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.0 + 3.2.1-SNAPSHOT glance-model OpenStack Glance Model diff --git a/keystone-client/pom.xml b/keystone-client/pom.xml index 258dd3810..02e456762 100644 --- a/keystone-client/pom.xml +++ b/keystone-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.0 + 3.2.1-SNAPSHOT keystone-client OpenStack Keystone Client @@ -12,12 +12,12 @@ com.woorea openstack-client - 3.2.0 + 3.2.1-SNAPSHOT com.woorea keystone-model - 3.2.0 + 3.2.1-SNAPSHOT \ No newline at end of file diff --git a/keystone-model/pom.xml b/keystone-model/pom.xml index 2f53c89bf..67b692acb 100644 --- a/keystone-model/pom.xml +++ b/keystone-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.0 + 3.2.1-SNAPSHOT keystone-model OpenStack Keystone Model diff --git a/nova-client/pom.xml b/nova-client/pom.xml index f6455652a..3ae662361 100644 --- a/nova-client/pom.xml +++ b/nova-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.0 + 3.2.1-SNAPSHOT nova-client OpenStack Nova Client @@ -12,12 +12,12 @@ com.woorea openstack-client - 3.2.0 + 3.2.1-SNAPSHOT com.woorea nova-model - 3.2.0 + 3.2.1-SNAPSHOT \ No newline at end of file diff --git a/nova-model/pom.xml b/nova-model/pom.xml index cd03fa210..26127af88 100644 --- a/nova-model/pom.xml +++ b/nova-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.0 + 3.2.1-SNAPSHOT nova-model OpenStack Nova Model diff --git a/openstack-client-connectors/jersey-connector/pom.xml b/openstack-client-connectors/jersey-connector/pom.xml index 4b1a5c03e..9db9af008 100644 --- a/openstack-client-connectors/jersey-connector/pom.xml +++ b/openstack-client-connectors/jersey-connector/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-client-connectors - 3.2.0 + 3.2.1-SNAPSHOT jersey-connector OpenStack Jersey Connector diff --git a/openstack-client-connectors/jersey2-connector/pom.xml b/openstack-client-connectors/jersey2-connector/pom.xml index 32abec8c7..17ceff87d 100644 --- a/openstack-client-connectors/jersey2-connector/pom.xml +++ b/openstack-client-connectors/jersey2-connector/pom.xml @@ -4,7 +4,7 @@ com.woorea openstack-client-connectors - 3.2.0 + 3.2.1-SNAPSHOT jersey2-connector OpenStack Jersey2 Connector @@ -27,7 +27,7 @@ com.woorea openstack-client - 3.2.0 + 3.2.1-SNAPSHOT diff --git a/openstack-client-connectors/pom.xml b/openstack-client-connectors/pom.xml index b633f7436..aa5dc0018 100644 --- a/openstack-client-connectors/pom.xml +++ b/openstack-client-connectors/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.0 + 3.2.1-SNAPSHOT openstack-client-connectors OpenStack Client Connectors @@ -42,7 +42,7 @@ com.woorea openstack-client - 3.2.0 + 3.2.1-SNAPSHOT \ No newline at end of file diff --git a/openstack-client-connectors/resteasy-connector/pom.xml b/openstack-client-connectors/resteasy-connector/pom.xml index 817f06662..eb01e6736 100644 --- a/openstack-client-connectors/resteasy-connector/pom.xml +++ b/openstack-client-connectors/resteasy-connector/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-client-connectors - 3.2.0 + 3.2.1-SNAPSHOT resteasy-connector OpenStack RESTEasy Connector diff --git a/openstack-client/pom.xml b/openstack-client/pom.xml index 4829111b1..a08009807 100644 --- a/openstack-client/pom.xml +++ b/openstack-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.0 + 3.2.1-SNAPSHOT openstack-client OpenStack Client diff --git a/openstack-console/pom.xml b/openstack-console/pom.xml index 01ad6db0f..5067fa7d2 100644 --- a/openstack-console/pom.xml +++ b/openstack-console/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.0 + 3.2.1-SNAPSHOT openstack-console OpenStack Console @@ -22,12 +22,12 @@ com.woorea keystone-client - 3.2.0 + 3.2.1-SNAPSHOT com.woorea nova-client - 3.2.0 + 3.2.1-SNAPSHOT diff --git a/openstack-examples/pom.xml b/openstack-examples/pom.xml index 2d4d34da6..268532c36 100644 --- a/openstack-examples/pom.xml +++ b/openstack-examples/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.0 + 3.2.1-SNAPSHOT openstack-examples OpenStack Examples @@ -12,32 +12,32 @@ com.woorea keystone-client - 3.2.0 + 3.2.1-SNAPSHOT com.woorea nova-client - 3.2.0 + 3.2.1-SNAPSHOT com.woorea swift-client - 3.2.0 + 3.2.1-SNAPSHOT com.woorea quantum-client - 3.2.0 + 3.2.1-SNAPSHOT com.woorea ceilometer-client - 3.2.0 + 3.2.1-SNAPSHOT com.woorea glance-client - 3.2.0 + 3.2.1-SNAPSHOT diff --git a/pom.xml b/pom.xml index 3fc5102c9..b7926933c 100644 --- a/pom.xml +++ b/pom.xml @@ -2,7 +2,7 @@ 4.0.0 com.woorea openstack-java-sdk - 3.2.0 + 3.2.1-SNAPSHOT pom OpenStack Java SDK OpenStack Java SDK diff --git a/quantum-client/pom.xml b/quantum-client/pom.xml index 19c9973b8..e8e4e4efa 100644 --- a/quantum-client/pom.xml +++ b/quantum-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.0 + 3.2.1-SNAPSHOT quantum-client OpenStack Quantum Client @@ -12,12 +12,12 @@ com.woorea openstack-client - 3.2.0 + 3.2.1-SNAPSHOT com.woorea quantum-model - 3.2.0 + 3.2.1-SNAPSHOT diff --git a/quantum-model/pom.xml b/quantum-model/pom.xml index 21cbbda98..1b5318271 100644 --- a/quantum-model/pom.xml +++ b/quantum-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.0 + 3.2.1-SNAPSHOT quantum-model OpenStack Quantum Model diff --git a/swift-client/pom.xml b/swift-client/pom.xml index 0dd30fa4c..3990fa9c9 100644 --- a/swift-client/pom.xml +++ b/swift-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.0 + 3.2.1-SNAPSHOT swift-client OpenStack Swift Client @@ -12,12 +12,12 @@ com.woorea openstack-client - 3.2.0 + 3.2.1-SNAPSHOT com.woorea swift-model - 3.2.0 + 3.2.1-SNAPSHOT \ No newline at end of file diff --git a/swift-model/pom.xml b/swift-model/pom.xml index 01c96bee7..2296228db 100644 --- a/swift-model/pom.xml +++ b/swift-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.0 + 3.2.1-SNAPSHOT swift-model OpenStack Swift Model From 042ef3893bc6cae9e6ce32e5f74c886066d1af30 Mon Sep 17 00:00:00 2001 From: woorea Date: Fri, 26 Jul 2013 13:56:52 +0200 Subject: [PATCH 010/144] [maven-release-plugin] prepare release openstack-java-sdk-3.2.1 --- ceilometer-client/pom.xml | 6 +++--- ceilometer-model/pom.xml | 2 +- glance-client/pom.xml | 6 +++--- glance-model/pom.xml | 2 +- keystone-client/pom.xml | 6 +++--- keystone-model/pom.xml | 2 +- nova-client/pom.xml | 6 +++--- nova-model/pom.xml | 2 +- .../jersey-connector/pom.xml | 2 +- .../jersey2-connector/pom.xml | 4 ++-- openstack-client-connectors/pom.xml | 4 ++-- .../resteasy-connector/pom.xml | 2 +- openstack-client/pom.xml | 2 +- openstack-console/pom.xml | 6 +++--- openstack-examples/pom.xml | 14 +++++++------- pom.xml | 2 +- quantum-client/pom.xml | 6 +++--- quantum-model/pom.xml | 2 +- swift-client/pom.xml | 6 +++--- swift-model/pom.xml | 2 +- 20 files changed, 42 insertions(+), 42 deletions(-) diff --git a/ceilometer-client/pom.xml b/ceilometer-client/pom.xml index ce123f37a..c25c1ff97 100644 --- a/ceilometer-client/pom.xml +++ b/ceilometer-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.1-SNAPSHOT + 3.2.1 ceilometer-client OpenStack Ceilometer Client @@ -12,12 +12,12 @@ com.woorea openstack-client - 3.2.1-SNAPSHOT + 3.2.1 com.woorea ceilometer-model - 3.2.1-SNAPSHOT + 3.2.1 diff --git a/ceilometer-model/pom.xml b/ceilometer-model/pom.xml index 4f3c70a74..eb8c1e352 100644 --- a/ceilometer-model/pom.xml +++ b/ceilometer-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.1-SNAPSHOT + 3.2.1 ceilometer-model OpenStack Ceilometer Model diff --git a/glance-client/pom.xml b/glance-client/pom.xml index d8ac1e4ed..083f4ab29 100644 --- a/glance-client/pom.xml +++ b/glance-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.1-SNAPSHOT + 3.2.1 glance-client OpenStack Glance Client @@ -12,13 +12,13 @@ com.woorea openstack-client - 3.2.1-SNAPSHOT + 3.2.1 com.woorea glance-model - 3.2.1-SNAPSHOT + 3.2.1 \ No newline at end of file diff --git a/glance-model/pom.xml b/glance-model/pom.xml index b25e5113a..91a14c53d 100644 --- a/glance-model/pom.xml +++ b/glance-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.1-SNAPSHOT + 3.2.1 glance-model OpenStack Glance Model diff --git a/keystone-client/pom.xml b/keystone-client/pom.xml index 02e456762..f85dc0f93 100644 --- a/keystone-client/pom.xml +++ b/keystone-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.1-SNAPSHOT + 3.2.1 keystone-client OpenStack Keystone Client @@ -12,12 +12,12 @@ com.woorea openstack-client - 3.2.1-SNAPSHOT + 3.2.1 com.woorea keystone-model - 3.2.1-SNAPSHOT + 3.2.1 \ No newline at end of file diff --git a/keystone-model/pom.xml b/keystone-model/pom.xml index 67b692acb..d82b9d2e9 100644 --- a/keystone-model/pom.xml +++ b/keystone-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.1-SNAPSHOT + 3.2.1 keystone-model OpenStack Keystone Model diff --git a/nova-client/pom.xml b/nova-client/pom.xml index 3ae662361..13d37316d 100644 --- a/nova-client/pom.xml +++ b/nova-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.1-SNAPSHOT + 3.2.1 nova-client OpenStack Nova Client @@ -12,12 +12,12 @@ com.woorea openstack-client - 3.2.1-SNAPSHOT + 3.2.1 com.woorea nova-model - 3.2.1-SNAPSHOT + 3.2.1 \ No newline at end of file diff --git a/nova-model/pom.xml b/nova-model/pom.xml index 26127af88..7e05d71cb 100644 --- a/nova-model/pom.xml +++ b/nova-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.1-SNAPSHOT + 3.2.1 nova-model OpenStack Nova Model diff --git a/openstack-client-connectors/jersey-connector/pom.xml b/openstack-client-connectors/jersey-connector/pom.xml index 9db9af008..2c3c50178 100644 --- a/openstack-client-connectors/jersey-connector/pom.xml +++ b/openstack-client-connectors/jersey-connector/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-client-connectors - 3.2.1-SNAPSHOT + 3.2.1 jersey-connector OpenStack Jersey Connector diff --git a/openstack-client-connectors/jersey2-connector/pom.xml b/openstack-client-connectors/jersey2-connector/pom.xml index 17ceff87d..bcd50e6a9 100644 --- a/openstack-client-connectors/jersey2-connector/pom.xml +++ b/openstack-client-connectors/jersey2-connector/pom.xml @@ -4,7 +4,7 @@ com.woorea openstack-client-connectors - 3.2.1-SNAPSHOT + 3.2.1 jersey2-connector OpenStack Jersey2 Connector @@ -27,7 +27,7 @@ com.woorea openstack-client - 3.2.1-SNAPSHOT + 3.2.1 diff --git a/openstack-client-connectors/pom.xml b/openstack-client-connectors/pom.xml index aa5dc0018..648d50039 100644 --- a/openstack-client-connectors/pom.xml +++ b/openstack-client-connectors/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.1-SNAPSHOT + 3.2.1 openstack-client-connectors OpenStack Client Connectors @@ -42,7 +42,7 @@ com.woorea openstack-client - 3.2.1-SNAPSHOT + 3.2.1 \ No newline at end of file diff --git a/openstack-client-connectors/resteasy-connector/pom.xml b/openstack-client-connectors/resteasy-connector/pom.xml index eb01e6736..33b2c6e46 100644 --- a/openstack-client-connectors/resteasy-connector/pom.xml +++ b/openstack-client-connectors/resteasy-connector/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-client-connectors - 3.2.1-SNAPSHOT + 3.2.1 resteasy-connector OpenStack RESTEasy Connector diff --git a/openstack-client/pom.xml b/openstack-client/pom.xml index a08009807..c5a4a6905 100644 --- a/openstack-client/pom.xml +++ b/openstack-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.1-SNAPSHOT + 3.2.1 openstack-client OpenStack Client diff --git a/openstack-console/pom.xml b/openstack-console/pom.xml index 5067fa7d2..5d6f84b74 100644 --- a/openstack-console/pom.xml +++ b/openstack-console/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.1-SNAPSHOT + 3.2.1 openstack-console OpenStack Console @@ -22,12 +22,12 @@ com.woorea keystone-client - 3.2.1-SNAPSHOT + 3.2.1 com.woorea nova-client - 3.2.1-SNAPSHOT + 3.2.1 diff --git a/openstack-examples/pom.xml b/openstack-examples/pom.xml index 268532c36..d2b7a4ef0 100644 --- a/openstack-examples/pom.xml +++ b/openstack-examples/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.1-SNAPSHOT + 3.2.1 openstack-examples OpenStack Examples @@ -12,32 +12,32 @@ com.woorea keystone-client - 3.2.1-SNAPSHOT + 3.2.1 com.woorea nova-client - 3.2.1-SNAPSHOT + 3.2.1 com.woorea swift-client - 3.2.1-SNAPSHOT + 3.2.1 com.woorea quantum-client - 3.2.1-SNAPSHOT + 3.2.1 com.woorea ceilometer-client - 3.2.1-SNAPSHOT + 3.2.1 com.woorea glance-client - 3.2.1-SNAPSHOT + 3.2.1 diff --git a/pom.xml b/pom.xml index b7926933c..7d48fb0c1 100644 --- a/pom.xml +++ b/pom.xml @@ -2,7 +2,7 @@ 4.0.0 com.woorea openstack-java-sdk - 3.2.1-SNAPSHOT + 3.2.1 pom OpenStack Java SDK OpenStack Java SDK diff --git a/quantum-client/pom.xml b/quantum-client/pom.xml index e8e4e4efa..fc0fedd2c 100644 --- a/quantum-client/pom.xml +++ b/quantum-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.1-SNAPSHOT + 3.2.1 quantum-client OpenStack Quantum Client @@ -12,12 +12,12 @@ com.woorea openstack-client - 3.2.1-SNAPSHOT + 3.2.1 com.woorea quantum-model - 3.2.1-SNAPSHOT + 3.2.1 diff --git a/quantum-model/pom.xml b/quantum-model/pom.xml index 1b5318271..1c61e7027 100644 --- a/quantum-model/pom.xml +++ b/quantum-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.1-SNAPSHOT + 3.2.1 quantum-model OpenStack Quantum Model diff --git a/swift-client/pom.xml b/swift-client/pom.xml index 3990fa9c9..3df5f926b 100644 --- a/swift-client/pom.xml +++ b/swift-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.1-SNAPSHOT + 3.2.1 swift-client OpenStack Swift Client @@ -12,12 +12,12 @@ com.woorea openstack-client - 3.2.1-SNAPSHOT + 3.2.1 com.woorea swift-model - 3.2.1-SNAPSHOT + 3.2.1 \ No newline at end of file diff --git a/swift-model/pom.xml b/swift-model/pom.xml index 2296228db..c2c2f74dc 100644 --- a/swift-model/pom.xml +++ b/swift-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.1-SNAPSHOT + 3.2.1 swift-model OpenStack Swift Model From 6c309baca9968f1c2b8227b10603d5887eda1675 Mon Sep 17 00:00:00 2001 From: woorea Date: Fri, 26 Jul 2013 13:57:04 +0200 Subject: [PATCH 011/144] [maven-release-plugin] prepare for next development iteration --- ceilometer-client/pom.xml | 6 +++--- ceilometer-model/pom.xml | 2 +- glance-client/pom.xml | 6 +++--- glance-model/pom.xml | 2 +- keystone-client/pom.xml | 6 +++--- keystone-model/pom.xml | 2 +- nova-client/pom.xml | 6 +++--- nova-model/pom.xml | 2 +- .../jersey-connector/pom.xml | 2 +- .../jersey2-connector/pom.xml | 4 ++-- openstack-client-connectors/pom.xml | 4 ++-- .../resteasy-connector/pom.xml | 2 +- openstack-client/pom.xml | 2 +- openstack-console/pom.xml | 6 +++--- openstack-examples/pom.xml | 14 +++++++------- pom.xml | 2 +- quantum-client/pom.xml | 6 +++--- quantum-model/pom.xml | 2 +- swift-client/pom.xml | 6 +++--- swift-model/pom.xml | 2 +- 20 files changed, 42 insertions(+), 42 deletions(-) diff --git a/ceilometer-client/pom.xml b/ceilometer-client/pom.xml index c25c1ff97..f8a9a3fe1 100644 --- a/ceilometer-client/pom.xml +++ b/ceilometer-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.1 + 3.2.2-SNAPSHOT ceilometer-client OpenStack Ceilometer Client @@ -12,12 +12,12 @@ com.woorea openstack-client - 3.2.1 + 3.2.2-SNAPSHOT com.woorea ceilometer-model - 3.2.1 + 3.2.2-SNAPSHOT diff --git a/ceilometer-model/pom.xml b/ceilometer-model/pom.xml index eb8c1e352..2718bdbe8 100644 --- a/ceilometer-model/pom.xml +++ b/ceilometer-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.1 + 3.2.2-SNAPSHOT ceilometer-model OpenStack Ceilometer Model diff --git a/glance-client/pom.xml b/glance-client/pom.xml index 083f4ab29..6eb537e1c 100644 --- a/glance-client/pom.xml +++ b/glance-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.1 + 3.2.2-SNAPSHOT glance-client OpenStack Glance Client @@ -12,13 +12,13 @@ com.woorea openstack-client - 3.2.1 + 3.2.2-SNAPSHOT com.woorea glance-model - 3.2.1 + 3.2.2-SNAPSHOT \ No newline at end of file diff --git a/glance-model/pom.xml b/glance-model/pom.xml index 91a14c53d..2efc98be8 100644 --- a/glance-model/pom.xml +++ b/glance-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.1 + 3.2.2-SNAPSHOT glance-model OpenStack Glance Model diff --git a/keystone-client/pom.xml b/keystone-client/pom.xml index f85dc0f93..69a46ed43 100644 --- a/keystone-client/pom.xml +++ b/keystone-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.1 + 3.2.2-SNAPSHOT keystone-client OpenStack Keystone Client @@ -12,12 +12,12 @@ com.woorea openstack-client - 3.2.1 + 3.2.2-SNAPSHOT com.woorea keystone-model - 3.2.1 + 3.2.2-SNAPSHOT \ No newline at end of file diff --git a/keystone-model/pom.xml b/keystone-model/pom.xml index d82b9d2e9..0c8794192 100644 --- a/keystone-model/pom.xml +++ b/keystone-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.1 + 3.2.2-SNAPSHOT keystone-model OpenStack Keystone Model diff --git a/nova-client/pom.xml b/nova-client/pom.xml index 13d37316d..f967af043 100644 --- a/nova-client/pom.xml +++ b/nova-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.1 + 3.2.2-SNAPSHOT nova-client OpenStack Nova Client @@ -12,12 +12,12 @@ com.woorea openstack-client - 3.2.1 + 3.2.2-SNAPSHOT com.woorea nova-model - 3.2.1 + 3.2.2-SNAPSHOT \ No newline at end of file diff --git a/nova-model/pom.xml b/nova-model/pom.xml index 7e05d71cb..e7cfec5c3 100644 --- a/nova-model/pom.xml +++ b/nova-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.1 + 3.2.2-SNAPSHOT nova-model OpenStack Nova Model diff --git a/openstack-client-connectors/jersey-connector/pom.xml b/openstack-client-connectors/jersey-connector/pom.xml index 2c3c50178..b9b95c496 100644 --- a/openstack-client-connectors/jersey-connector/pom.xml +++ b/openstack-client-connectors/jersey-connector/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-client-connectors - 3.2.1 + 3.2.2-SNAPSHOT jersey-connector OpenStack Jersey Connector diff --git a/openstack-client-connectors/jersey2-connector/pom.xml b/openstack-client-connectors/jersey2-connector/pom.xml index bcd50e6a9..518ceb510 100644 --- a/openstack-client-connectors/jersey2-connector/pom.xml +++ b/openstack-client-connectors/jersey2-connector/pom.xml @@ -4,7 +4,7 @@ com.woorea openstack-client-connectors - 3.2.1 + 3.2.2-SNAPSHOT jersey2-connector OpenStack Jersey2 Connector @@ -27,7 +27,7 @@ com.woorea openstack-client - 3.2.1 + 3.2.2-SNAPSHOT diff --git a/openstack-client-connectors/pom.xml b/openstack-client-connectors/pom.xml index 648d50039..b5f29f241 100644 --- a/openstack-client-connectors/pom.xml +++ b/openstack-client-connectors/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.1 + 3.2.2-SNAPSHOT openstack-client-connectors OpenStack Client Connectors @@ -42,7 +42,7 @@ com.woorea openstack-client - 3.2.1 + 3.2.2-SNAPSHOT \ No newline at end of file diff --git a/openstack-client-connectors/resteasy-connector/pom.xml b/openstack-client-connectors/resteasy-connector/pom.xml index 33b2c6e46..3aec37166 100644 --- a/openstack-client-connectors/resteasy-connector/pom.xml +++ b/openstack-client-connectors/resteasy-connector/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-client-connectors - 3.2.1 + 3.2.2-SNAPSHOT resteasy-connector OpenStack RESTEasy Connector diff --git a/openstack-client/pom.xml b/openstack-client/pom.xml index c5a4a6905..c3fcf3510 100644 --- a/openstack-client/pom.xml +++ b/openstack-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.1 + 3.2.2-SNAPSHOT openstack-client OpenStack Client diff --git a/openstack-console/pom.xml b/openstack-console/pom.xml index 5d6f84b74..2f462ec81 100644 --- a/openstack-console/pom.xml +++ b/openstack-console/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.1 + 3.2.2-SNAPSHOT openstack-console OpenStack Console @@ -22,12 +22,12 @@ com.woorea keystone-client - 3.2.1 + 3.2.2-SNAPSHOT com.woorea nova-client - 3.2.1 + 3.2.2-SNAPSHOT diff --git a/openstack-examples/pom.xml b/openstack-examples/pom.xml index d2b7a4ef0..812c59a89 100644 --- a/openstack-examples/pom.xml +++ b/openstack-examples/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.1 + 3.2.2-SNAPSHOT openstack-examples OpenStack Examples @@ -12,32 +12,32 @@ com.woorea keystone-client - 3.2.1 + 3.2.2-SNAPSHOT com.woorea nova-client - 3.2.1 + 3.2.2-SNAPSHOT com.woorea swift-client - 3.2.1 + 3.2.2-SNAPSHOT com.woorea quantum-client - 3.2.1 + 3.2.2-SNAPSHOT com.woorea ceilometer-client - 3.2.1 + 3.2.2-SNAPSHOT com.woorea glance-client - 3.2.1 + 3.2.2-SNAPSHOT diff --git a/pom.xml b/pom.xml index 7d48fb0c1..7be14483a 100644 --- a/pom.xml +++ b/pom.xml @@ -2,7 +2,7 @@ 4.0.0 com.woorea openstack-java-sdk - 3.2.1 + 3.2.2-SNAPSHOT pom OpenStack Java SDK OpenStack Java SDK diff --git a/quantum-client/pom.xml b/quantum-client/pom.xml index fc0fedd2c..0f3426f02 100644 --- a/quantum-client/pom.xml +++ b/quantum-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.1 + 3.2.2-SNAPSHOT quantum-client OpenStack Quantum Client @@ -12,12 +12,12 @@ com.woorea openstack-client - 3.2.1 + 3.2.2-SNAPSHOT com.woorea quantum-model - 3.2.1 + 3.2.2-SNAPSHOT diff --git a/quantum-model/pom.xml b/quantum-model/pom.xml index 1c61e7027..bdffd793b 100644 --- a/quantum-model/pom.xml +++ b/quantum-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.1 + 3.2.2-SNAPSHOT quantum-model OpenStack Quantum Model diff --git a/swift-client/pom.xml b/swift-client/pom.xml index 3df5f926b..c0aafe7c1 100644 --- a/swift-client/pom.xml +++ b/swift-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.1 + 3.2.2-SNAPSHOT swift-client OpenStack Swift Client @@ -12,12 +12,12 @@ com.woorea openstack-client - 3.2.1 + 3.2.2-SNAPSHOT com.woorea swift-model - 3.2.1 + 3.2.2-SNAPSHOT \ No newline at end of file diff --git a/swift-model/pom.xml b/swift-model/pom.xml index c2c2f74dc..ebf618b56 100644 --- a/swift-model/pom.xml +++ b/swift-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.1 + 3.2.2-SNAPSHOT swift-model OpenStack Swift Model From 09366f9fb6f5ed6bf64882a6c7365bc322fb1231 Mon Sep 17 00:00:00 2001 From: azrielh Date: Mon, 29 Jul 2013 15:11:49 +1200 Subject: [PATCH 012/144] Disabled the FAIL_ON_UNKNOWN_PROPERTIES feature on the OpenStackObjectMappers to prevent deserialization from failing for unknown fields. --- .../java/com/woorea/openstack/connector/JerseyConnector.java | 2 ++ 1 file changed, 2 insertions(+) diff --git a/openstack-client-connectors/jersey-connector/src/main/java/com/woorea/openstack/connector/JerseyConnector.java b/openstack-client-connectors/jersey-connector/src/main/java/com/woorea/openstack/connector/JerseyConnector.java index 4ac83333a..416f5dda3 100644 --- a/openstack-client-connectors/jersey-connector/src/main/java/com/woorea/openstack/connector/JerseyConnector.java +++ b/openstack-client-connectors/jersey-connector/src/main/java/com/woorea/openstack/connector/JerseyConnector.java @@ -83,12 +83,14 @@ public static class OpenStackObjectMapper implements ContextResolver Date: Thu, 1 Aug 2013 12:45:27 +0200 Subject: [PATCH 013/144] Fix floating ip allocation POST message body was missing --- .../api/extensions/FloatingIpsExtension.java | 21 ++++++++++--------- 1 file changed, 11 insertions(+), 10 deletions(-) diff --git a/nova-client/src/main/java/com/woorea/openstack/nova/api/extensions/FloatingIpsExtension.java b/nova-client/src/main/java/com/woorea/openstack/nova/api/extensions/FloatingIpsExtension.java index 0a1e293dd..0923b7e81 100644 --- a/nova-client/src/main/java/com/woorea/openstack/nova/api/extensions/FloatingIpsExtension.java +++ b/nova-client/src/main/java/com/woorea/openstack/nova/api/extensions/FloatingIpsExtension.java @@ -4,6 +4,7 @@ import java.util.Map; +import com.woorea.openstack.base.client.Entity; import com.woorea.openstack.base.client.HttpMethod; import com.woorea.openstack.base.client.OpenStackClient; import com.woorea.openstack.base.client.OpenStackRequest; @@ -28,15 +29,8 @@ public List() { public class Allocate extends OpenStackRequest { - private Map body; - - public Allocate(String pool) { - super(CLIENT, HttpMethod.POST, "/os-floating-ips", null, FloatingIp.class); - body = new HashMap(); - if(pool != null) { - body.put("pool", pool); - } - entity(body, "application/json"); + public Allocate(Entity entity) { + super(CLIENT, HttpMethod.POST, "/os-floating-ips", entity, FloatingIp.class); } } @@ -54,7 +48,13 @@ public List list() { } public Allocate allocate(String pool) { - return new Allocate(pool); + Entity entity=null; + if(pool!=null) { + Map body = new HashMap(); + body.put("pool", pool); + entity=Entity.json(body); + } + return new Allocate(entity); } public Deallocate deallocate(String id) { @@ -64,3 +64,4 @@ public Deallocate deallocate(String id) { } + From 5519b7567df2426ba11343818aed2a05a130d8ed Mon Sep 17 00:00:00 2001 From: Frederic Dang Tran Date: Thu, 1 Aug 2013 18:31:30 +0200 Subject: [PATCH 014/144] Add "networks" attribute to ServerForCreate class --- .../openstack/nova/model/ServerForCreate.java | 74 +++++++++++++++++++ 1 file changed, 74 insertions(+) diff --git a/nova-model/src/main/java/com/woorea/openstack/nova/model/ServerForCreate.java b/nova-model/src/main/java/com/woorea/openstack/nova/model/ServerForCreate.java index accba8e9d..e2f69aab5 100644 --- a/nova-model/src/main/java/com/woorea/openstack/nova/model/ServerForCreate.java +++ b/nova-model/src/main/java/com/woorea/openstack/nova/model/ServerForCreate.java @@ -39,6 +39,67 @@ public void setName(String name) { } + public static final class Network implements Serializable { + + private String uuid; + + private String fixed_ip; + + private String port; + + public Network() { + } + + public Network(String uuid, String fixed_ip, String port) { + this.uuid = uuid; + this.fixed_ip = fixed_ip; + this.port = port; + } + + /** + * @return the network uuid + */ + public String getUuid() { + return uuid; + } + + /** + * @param uuid the network uuid to set + */ + public void setUuid(String uuid) { + this.uuid = uuid; + } + + /** + * @return the IP address to assign to the interface + */ + public String getFixed_ip() { + return fixed_ip; + } + + /** + * @param name the IP address to set + */ + public void setFixed_ip(String fixed_ip) { + this.fixed_ip = fixed_ip; + } + + /** + * @return the port uuid + */ + public String getPort() { + return port; + } + + /** + * @param port the port uuid to set + */ + public void setPort(String port) { + this.port = port; + } + + } + private String name; private String adminPass; @@ -67,6 +128,9 @@ public void setName(String name) { @JsonProperty("security_groups") private List securityGroups; + @JsonProperty("networks") + private List networks; + @JsonProperty("user_data") private String userData; @@ -253,6 +317,16 @@ public List getSecurityGroups() { } return securityGroups; } + + /** + * @return the networks + */ + public List getNetworks() { + if(networks == null) { + networks = new ArrayList(); + } + return networks; + } /** * @return the userData From d56d57551b56064daefd32b470cf5db289b450a1 Mon Sep 17 00:00:00 2001 From: rabierre Date: Fri, 2 Aug 2013 18:13:00 +0900 Subject: [PATCH 015/144] Modified ServersResource's StopServer Constructor Previous constructor occurs "NullPointerException" because it didn't handle endpoint and clinent initialize. So I altered it with super(...) and nova-client's stop() api works just fine. I belieave StartServer's constructor have same issue(Not changed yet). --- .../woorea/openstack/nova/api/ServersResource.java | 14 ++++---------- 1 file changed, 4 insertions(+), 10 deletions(-) diff --git a/nova-client/src/main/java/com/woorea/openstack/nova/api/ServersResource.java b/nova-client/src/main/java/com/woorea/openstack/nova/api/ServersResource.java index 8740afde7..88c90ac6d 100644 --- a/nova-client/src/main/java/com/woorea/openstack/nova/api/ServersResource.java +++ b/nova-client/src/main/java/com/woorea/openstack/nova/api/ServersResource.java @@ -225,16 +225,10 @@ public class StopServer extends OpenStackRequest { private Stop action; private String id; - - public StopServer(String id) { - this.id = id; - this.action = new Stop(); - - method(HttpMethod.POST); - path("/servers/").path(id).path("/action"); - header("Accept", "application/json"); - json(action); - } + + public StopServer(String id) { + super(CLIENT, HttpMethod.POST, new StringBuilder("/servers/").append(id).append("/action"), Entity.json(new Stop()), Void.class); + } } From 00df425a7a8ec295b3b24b47a61e99652576f3fa Mon Sep 17 00:00:00 2001 From: rabierre Date: Mon, 5 Aug 2013 13:19:48 +0900 Subject: [PATCH 016/144] ServersResource.StartServer constructor changed. modifired startserver's constructor and farmated indentation. --- .../openstack/nova/api/ServersResource.java | 828 +++++++++--------- 1 file changed, 410 insertions(+), 418 deletions(-) diff --git a/nova-client/src/main/java/com/woorea/openstack/nova/api/ServersResource.java b/nova-client/src/main/java/com/woorea/openstack/nova/api/ServersResource.java index 88c90ac6d..74abd1ce4 100644 --- a/nova-client/src/main/java/com/woorea/openstack/nova/api/ServersResource.java +++ b/nova-client/src/main/java/com/woorea/openstack/nova/api/ServersResource.java @@ -36,434 +36,426 @@ import com.woorea.openstack.nova.model.VolumeAttachments; public class ServersResource { - - private final OpenStackClient CLIENT; - - public ServersResource(OpenStackClient client) { - CLIENT = client; - } - - public List list(boolean detail) { - return new List(detail); - } - - public Boot boot(ServerForCreate server) { - return new Boot(server); - } - - public Show show(String id) { - return new Show(id); - } - - public ShowMetadata showMetadata(String id) { - return new ShowMetadata(id); - } - - - public Delete delete(String id) { - return new Delete(id); - } - - public class List extends OpenStackRequest { - - public List(boolean detail) { - super(CLIENT, HttpMethod.GET, detail ? "/servers/detail" : "/servers", null, Servers.class); - } - - } - - public class Boot extends OpenStackRequest { - - private ServerForCreate server; - - public Boot(ServerForCreate server) { - super(CLIENT, HttpMethod.POST, "/servers", Entity.json(server), Server.class); - this.server = server; - } - - } - - public class Show extends OpenStackRequest { - - public Show(String id) { - super(CLIENT, HttpMethod.GET, new StringBuilder("/servers/").append(id), null, Server.class); - } - - } - - public class ShowMetadata extends OpenStackRequest { - - public ShowMetadata(String id) { - super(CLIENT, HttpMethod.GET, new StringBuilder("/servers/").append(id).append("/metadata"), null, Metadata.class); - } - - } - - public class Delete extends OpenStackRequest { - - public Delete(String id) { - super(CLIENT, HttpMethod.DELETE, new StringBuilder("/servers/").append(id), null, Void.class); - } - - } - - public class ShowServerAddresses extends OpenStackRequest { - - public ShowServerAddresses(String id) { - super(CLIENT, HttpMethod.GET, new StringBuilder("/servers/").append(id).append("/ips"), null, Addresses.class); - } - - } - - public class UpdateServer extends OpenStackRequest { - - private Server server; - - public UpdateServer(String id, Server server) { - super(CLIENT, HttpMethod.PUT, new StringBuilder("/servers/").append(id), Entity.json(server), Server.class); - this.server = server; - } - - } - - public abstract class Action extends OpenStackRequest { - - public Action(String id, Entity entity, Class returnType) { - super(CLIENT, HttpMethod.POST, new StringBuilder("/servers/").append(id).append("/action"), entity, returnType); - } - - } - - public class ChangePasswordAction extends Action { - - private ChangePassword action; - - public ChangePasswordAction(String id, ChangePassword action) { - super(id, Entity.json(action), Server.class); - } - - } - - public class RebootAction extends Action { - - private Reboot action; - - public RebootAction(String id, Reboot action) { - super(id, Entity.json(action), Void.class); - } - - } - - public class RebuildAction extends Action { - - private Rebuild action; - - public RebuildAction(String id, Rebuild action) { - super(id, Entity.json(action), Server.class); - } - - } - - public class ResizeAction extends Action { - - private Resize action; - - public ResizeAction(String id, Resize action) { - super(id, Entity.json(action), Server.class); - } - - } - - public class ConfirmResizeAction extends Action { - - public ConfirmResizeAction(String id) { - super(id, Entity.json(new ConfirmResize()), Server.class); - } - - } - - public class ReverResizeAction extends Action { - - public ReverResizeAction(String id) { - super(id, Entity.json(new RevertResize()), Server.class); - } - } - - public class CreateImageAction extends Action { + private final OpenStackClient CLIENT; - private CreateImage action; - - public CreateImageAction(String id) { - super(id, Entity.json(new CreateImage()), Server.class); - } + public ServersResource(OpenStackClient client) { + CLIENT = client; + } - } - - // - - public class StartServer extends OpenStackRequest { - - private Start action; + public List list(boolean detail) { + return new List(detail); + } - private String id; - - public StartServer(String id) { - this.id = id; - this.action = new Start(); - - method(HttpMethod.POST); - path("/servers/").path(id).path("/action"); - header("Accept", "application/json"); - json(action); - } + public Boot boot(ServerForCreate server) { + return new Boot(server); + } - } - - public class StopServer extends OpenStackRequest { - - private Stop action; + public Show show(String id) { + return new Show(id); + } - private String id; + public ShowMetadata showMetadata(String id) { + return new ShowMetadata(id); + } + + + public Delete delete(String id) { + return new Delete(id); + } + + public class List extends OpenStackRequest { + + public List(boolean detail) { + super(CLIENT, HttpMethod.GET, detail ? "/servers/detail" : "/servers", null, Servers.class); + } + + } + + public class Boot extends OpenStackRequest { + + private ServerForCreate server; + + public Boot(ServerForCreate server) { + super(CLIENT, HttpMethod.POST, "/servers", Entity.json(server), Server.class); + this.server = server; + } + + } + + public class Show extends OpenStackRequest { + + public Show(String id) { + super(CLIENT, HttpMethod.GET, new StringBuilder("/servers/").append(id), null, Server.class); + } + + } + + public class ShowMetadata extends OpenStackRequest { + + public ShowMetadata(String id) { + super(CLIENT, HttpMethod.GET, new StringBuilder("/servers/").append(id).append("/metadata"), null, Metadata.class); + } + + } + + public class Delete extends OpenStackRequest { + + public Delete(String id) { + super(CLIENT, HttpMethod.DELETE, new StringBuilder("/servers/").append(id), null, Void.class); + } + + } + + public class ShowServerAddresses extends OpenStackRequest { + + public ShowServerAddresses(String id) { + super(CLIENT, HttpMethod.GET, new StringBuilder("/servers/").append(id).append("/ips"), null, Addresses.class); + } + + } + + public class UpdateServer extends OpenStackRequest { + + private Server server; + + public UpdateServer(String id, Server server) { + super(CLIENT, HttpMethod.PUT, new StringBuilder("/servers/").append(id), Entity.json(server), Server.class); + this.server = server; + } + + } + + public abstract class Action extends OpenStackRequest { + + public Action(String id, Entity entity, Class returnType) { + super(CLIENT, HttpMethod.POST, new StringBuilder("/servers/").append(id).append("/action"), entity, returnType); + } + + } + + public class ChangePasswordAction extends Action { + + private ChangePassword action; + + public ChangePasswordAction(String id, ChangePassword action) { + super(id, Entity.json(action), Server.class); + } + + } + + public class RebootAction extends Action { + + private Reboot action; + + public RebootAction(String id, Reboot action) { + super(id, Entity.json(action), Void.class); + } + + } + + public class RebuildAction extends Action { + + private Rebuild action; + + public RebuildAction(String id, Rebuild action) { + super(id, Entity.json(action), Server.class); + } + + } + + public class ResizeAction extends Action { + + private Resize action; + + public ResizeAction(String id, Resize action) { + super(id, Entity.json(action), Server.class); + } + + } + + public class ConfirmResizeAction extends Action { + + public ConfirmResizeAction(String id) { + super(id, Entity.json(new ConfirmResize()), Server.class); + } + + } + + public class ReverResizeAction extends Action { + + public ReverResizeAction(String id) { + super(id, Entity.json(new RevertResize()), Server.class); + } + + } + + public class CreateImageAction extends Action { + + private CreateImage action; + + public CreateImageAction(String id) { + super(id, Entity.json(new CreateImage()), Server.class); + } + + } + + public class StartServer extends OpenStackRequest { + + private Start action; + + private String id; + + public StartServer(String id) { + super(CLIENT, HttpMethod.POST, new StringBuilder("/servers/").append(id).append("/action"), Entity.json(new Start()), Void.class); + } + + } + + public class StopServer extends OpenStackRequest { + + private Stop action; + + private String id; public StopServer(String id) { super(CLIENT, HttpMethod.POST, new StringBuilder("/servers/").append(id).append("/action"), Entity.json(new Stop()), Void.class); } - } - - public StartServer start(String id) { - return new StartServer(id); - } - - public StopServer stop(String id) { - return new StopServer(id); - } - - public class GetVncConsoleServer extends OpenStackRequest { - - private GetVncConsole action; - - private String id; - - public GetVncConsoleServer(String id, GetVncConsole action) { - super(CLIENT, HttpMethod.POST, new StringBuilder("/servers/").append(id).append("/action"), Entity.json(new GetVncConsole()), VncConsole.class); - } - - } - - public GetVncConsoleServer getVncConsole(String id, String type) { - GetVncConsole action = new GetVncConsole(type); - return new GetVncConsoleServer(id, action); - } - - public class GetConsoleOutputServer extends OpenStackRequest { - - public GetConsoleOutputServer(String id, GetConsoleOutput action) { - super(CLIENT, HttpMethod.POST, new StringBuilder("/servers/").append(id).append("/action"), Entity.json(new GetConsoleOutput()), ConsoleOutput.class); - } - - } - - public GetConsoleOutputServer getConsoleOutput(String id, int length) { - GetConsoleOutput action = new GetConsoleOutput(length); - return new GetConsoleOutputServer(id, action); - } - - public class PauseServer extends OpenStackRequest { - - public PauseServer(String id) { - super(CLIENT, HttpMethod.POST, new StringBuilder("/servers/").append(id).append("/action"), Entity.json(new Pause()), Void.class); - } - - } - - public class UnpauseServer extends OpenStackRequest { - - public UnpauseServer(String id) { - super(CLIENT, HttpMethod.POST, new StringBuilder("/servers/").append(id).append("/action"), Entity.json(new Unpause()), Void.class); - } - - - } - - public class LockServer extends OpenStackRequest { - - private Lock action; - - private String id; - - public LockServer(String id) { - super(CLIENT, HttpMethod.POST, new StringBuilder("/servers/").append(id).append("/action"), Entity.json(new Lock()), Void.class); - } - - } - - public class UnlockServer extends OpenStackRequest { - - private Unlock action; - - private String id; - - public UnlockServer(String id) { - super(CLIENT, HttpMethod.POST, new StringBuilder("/servers/").append(id).append("/action"), Entity.json(new Unlock()), Void.class); - } - - } - - public class SuspendServer extends OpenStackRequest { - - public SuspendServer(String id) { - super(CLIENT, HttpMethod.POST, new StringBuilder("/servers/").append(id).append("/action"), Entity.json(new Suspend()), Void.class); - } - - } - - public class ResumeServer extends OpenStackRequest { - - public ResumeServer(String id) { - super(CLIENT, HttpMethod.POST, new StringBuilder("/servers/").append(id).append("/action"), Entity.json(new Resume()), Void.class); - } - - } - - public class CreateBackupServer extends OpenStackRequest { - - public CreateBackupServer(String id, CreateBackup action) { - super(CLIENT, HttpMethod.POST, new StringBuilder("/servers/").append(id).append("/action"), Entity.json(action), Void.class); - } - - } - - public PauseServer pause(String serverId) { - return new PauseServer(serverId); - } - - public UnpauseServer unpause(String serverId) { - return new UnpauseServer(serverId); - } - - public LockServer lock(String serverId) { - return new LockServer(serverId); - } - - public UnlockServer unlock(String serverId) { - return new UnlockServer(serverId); - } - - public SuspendServer suspend(String serverId) { - return new SuspendServer(serverId); - } - - public ResumeServer resume(String serverId) { - return new ResumeServer(serverId); - } - - public CreateBackupServer createBackup(String serverId, CreateBackup action) { - return new CreateBackupServer(serverId, action); - } - - public class RescueServer extends OpenStackRequest { - - public RescueServer(String id, Rescue action) { - super(CLIENT, HttpMethod.POST, new StringBuilder("/servers/").append(id).append("/action"), Entity.json(action), Void.class); - } - - } - - public class UnrescueServer extends OpenStackRequest { - - public UnrescueServer(String id) { - super(CLIENT, HttpMethod.POST, new StringBuilder("/servers/").append(id).append("/action"), Entity.json(new Unrescue()), Void.class); - } - - } - - public RescueServer rescue(String serverId, String adminPass) { - Rescue action = new Rescue(adminPass); - return new RescueServer(serverId, action); - } - - public UnrescueServer unrescue(String serverId) { - return new UnrescueServer(serverId); - } - - public class AssociateFloatingIp extends OpenStackRequest { - - public AssociateFloatingIp(String id, com.woorea.openstack.nova.model.ServerAction.AssociateFloatingIp action) { - super(CLIENT, HttpMethod.POST, new StringBuilder("/servers/").append(id).append("/action"), Entity.json(action), Void.class); - } - - } - - public class DisassociateFloatingIp extends OpenStackRequest { - - public DisassociateFloatingIp(String id, com.woorea.openstack.nova.model.ServerAction.DisassociateFloatingIp action) { - super(CLIENT, HttpMethod.POST, new StringBuilder("/servers/").append(id).append("/action"), Entity.json(action), Void.class); - } - - } - - public AssociateFloatingIp associateFloatingIp(String serverId, String floatingIpAddress) { - com.woorea.openstack.nova.model.ServerAction.AssociateFloatingIp action = new com.woorea.openstack.nova.model.ServerAction.AssociateFloatingIp(floatingIpAddress); - return new AssociateFloatingIp(serverId, action); - } - - public DisassociateFloatingIp disassociateFloatingIp(String serverId, String floatingIpAddress) { - com.woorea.openstack.nova.model.ServerAction.DisassociateFloatingIp action = new com.woorea.openstack.nova.model.ServerAction.DisassociateFloatingIp(floatingIpAddress); - return new DisassociateFloatingIp(serverId, action); - } - - public class AttachVolume extends OpenStackRequest { - - public AttachVolume(String serverId, final VolumeAttachment volumeAttachment) { - super(CLIENT, HttpMethod.POST, new StringBuilder("/servers/").append(serverId).append("/os-volume_attachments"), Entity.json(volumeAttachment), Void.class); - } - - } - - public class DetachVolume extends OpenStackRequest { - - public DetachVolume(String serverId, String volumeId) { - super(CLIENT, HttpMethod.DELETE, new StringBuilder("/servers/").append(serverId).append("/os-volume_attachments/").append(volumeId), null, Void.class); - } - - } - - public class ListVolumeAttachments extends OpenStackRequest { - - public ListVolumeAttachments(String serverId) { - super(CLIENT, HttpMethod.GET, new StringBuilder("/servers/").append(serverId).append("/os-volume_attachments"), null, VolumeAttachments.class); - } - - } - - public class ShowVolumeAttachment extends OpenStackRequest { - - public ShowVolumeAttachment(String serverId, String volumeAttachmentId) { - super(CLIENT, HttpMethod.GET, new StringBuilder("/servers/").append(serverId).append("/os-volume_attachments/").append(volumeAttachmentId), null, VolumeAttachment.class); - } - - } - - public AttachVolume attachVolume(String serverId, String volumeId, String device) { - VolumeAttachment volumeAttachment = new VolumeAttachment(); - volumeAttachment.setVolumeId(volumeId); - volumeAttachment.setDevice(device); - return new AttachVolume(serverId, volumeAttachment); - } - - public DetachVolume detachVolume(String serverId, String volumeId) { - return new DetachVolume(serverId, volumeId); - } - - public ListVolumeAttachments listVolumeAttachments(String serverId) { - return new ListVolumeAttachments(serverId); - } - - public ShowVolumeAttachment showVolumeAttachment(String serverId, String volumeAttachmentId) { - return new ShowVolumeAttachment(serverId, volumeAttachmentId); - } - + } + + public StartServer start(String id) { + return new StartServer(id); + } + + public StopServer stop(String id) { + return new StopServer(id); + } + + public class GetVncConsoleServer extends OpenStackRequest { + + private GetVncConsole action; + + private String id; + + public GetVncConsoleServer(String id, GetVncConsole action) { + super(CLIENT, HttpMethod.POST, new StringBuilder("/servers/").append(id).append("/action"), Entity.json(new GetVncConsole()), VncConsole.class); + } + + } + + public GetVncConsoleServer getVncConsole(String id, String type) { + GetVncConsole action = new GetVncConsole(type); + return new GetVncConsoleServer(id, action); + } + + public class GetConsoleOutputServer extends OpenStackRequest { + + public GetConsoleOutputServer(String id, GetConsoleOutput action) { + super(CLIENT, HttpMethod.POST, new StringBuilder("/servers/").append(id).append("/action"), Entity.json(new GetConsoleOutput()), ConsoleOutput.class); + } + + } + + public GetConsoleOutputServer getConsoleOutput(String id, int length) { + GetConsoleOutput action = new GetConsoleOutput(length); + return new GetConsoleOutputServer(id, action); + } + + public class PauseServer extends OpenStackRequest { + + public PauseServer(String id) { + super(CLIENT, HttpMethod.POST, new StringBuilder("/servers/").append(id).append("/action"), Entity.json(new Pause()), Void.class); + } + + } + + public class UnpauseServer extends OpenStackRequest { + + public UnpauseServer(String id) { + super(CLIENT, HttpMethod.POST, new StringBuilder("/servers/").append(id).append("/action"), Entity.json(new Unpause()), Void.class); + } + + + } + + public class LockServer extends OpenStackRequest { + + private Lock action; + + private String id; + + public LockServer(String id) { + super(CLIENT, HttpMethod.POST, new StringBuilder("/servers/").append(id).append("/action"), Entity.json(new Lock()), Void.class); + } + + } + + public class UnlockServer extends OpenStackRequest { + + private Unlock action; + + private String id; + + public UnlockServer(String id) { + super(CLIENT, HttpMethod.POST, new StringBuilder("/servers/").append(id).append("/action"), Entity.json(new Unlock()), Void.class); + } + + } + + public class SuspendServer extends OpenStackRequest { + + public SuspendServer(String id) { + super(CLIENT, HttpMethod.POST, new StringBuilder("/servers/").append(id).append("/action"), Entity.json(new Suspend()), Void.class); + } + + } + + public class ResumeServer extends OpenStackRequest { + + public ResumeServer(String id) { + super(CLIENT, HttpMethod.POST, new StringBuilder("/servers/").append(id).append("/action"), Entity.json(new Resume()), Void.class); + } + + } + + public class CreateBackupServer extends OpenStackRequest { + + public CreateBackupServer(String id, CreateBackup action) { + super(CLIENT, HttpMethod.POST, new StringBuilder("/servers/").append(id).append("/action"), Entity.json(action), Void.class); + } + + } + + public PauseServer pause(String serverId) { + return new PauseServer(serverId); + } + + public UnpauseServer unpause(String serverId) { + return new UnpauseServer(serverId); + } + + public LockServer lock(String serverId) { + return new LockServer(serverId); + } + + public UnlockServer unlock(String serverId) { + return new UnlockServer(serverId); + } + + public SuspendServer suspend(String serverId) { + return new SuspendServer(serverId); + } + + public ResumeServer resume(String serverId) { + return new ResumeServer(serverId); + } + + public CreateBackupServer createBackup(String serverId, CreateBackup action) { + return new CreateBackupServer(serverId, action); + } + + public class RescueServer extends OpenStackRequest { + + public RescueServer(String id, Rescue action) { + super(CLIENT, HttpMethod.POST, new StringBuilder("/servers/").append(id).append("/action"), Entity.json(action), Void.class); + } + + } + + public class UnrescueServer extends OpenStackRequest { + + public UnrescueServer(String id) { + super(CLIENT, HttpMethod.POST, new StringBuilder("/servers/").append(id).append("/action"), Entity.json(new Unrescue()), Void.class); + } + + } + + public RescueServer rescue(String serverId, String adminPass) { + Rescue action = new Rescue(adminPass); + return new RescueServer(serverId, action); + } + + public UnrescueServer unrescue(String serverId) { + return new UnrescueServer(serverId); + } + + public class AssociateFloatingIp extends OpenStackRequest { + + public AssociateFloatingIp(String id, com.woorea.openstack.nova.model.ServerAction.AssociateFloatingIp action) { + super(CLIENT, HttpMethod.POST, new StringBuilder("/servers/").append(id).append("/action"), Entity.json(action), Void.class); + } + + } + + public class DisassociateFloatingIp extends OpenStackRequest { + + public DisassociateFloatingIp(String id, com.woorea.openstack.nova.model.ServerAction.DisassociateFloatingIp action) { + super(CLIENT, HttpMethod.POST, new StringBuilder("/servers/").append(id).append("/action"), Entity.json(action), Void.class); + } + + } + + public AssociateFloatingIp associateFloatingIp(String serverId, String floatingIpAddress) { + com.woorea.openstack.nova.model.ServerAction.AssociateFloatingIp action = new com.woorea.openstack.nova.model.ServerAction.AssociateFloatingIp(floatingIpAddress); + return new AssociateFloatingIp(serverId, action); + } + + public DisassociateFloatingIp disassociateFloatingIp(String serverId, String floatingIpAddress) { + com.woorea.openstack.nova.model.ServerAction.DisassociateFloatingIp action = new com.woorea.openstack.nova.model.ServerAction.DisassociateFloatingIp(floatingIpAddress); + return new DisassociateFloatingIp(serverId, action); + } + + public class AttachVolume extends OpenStackRequest { + + public AttachVolume(String serverId, final VolumeAttachment volumeAttachment) { + super(CLIENT, HttpMethod.POST, new StringBuilder("/servers/").append(serverId).append("/os-volume_attachments"), Entity.json(volumeAttachment), Void.class); + } + + } + + public class DetachVolume extends OpenStackRequest { + + public DetachVolume(String serverId, String volumeId) { + super(CLIENT, HttpMethod.DELETE, new StringBuilder("/servers/").append(serverId).append("/os-volume_attachments/").append(volumeId), null, Void.class); + } + + } + + public class ListVolumeAttachments extends OpenStackRequest { + + public ListVolumeAttachments(String serverId) { + super(CLIENT, HttpMethod.GET, new StringBuilder("/servers/").append(serverId).append("/os-volume_attachments"), null, VolumeAttachments.class); + } + + } + + public class ShowVolumeAttachment extends OpenStackRequest { + + public ShowVolumeAttachment(String serverId, String volumeAttachmentId) { + super(CLIENT, HttpMethod.GET, new StringBuilder("/servers/").append(serverId).append("/os-volume_attachments/").append(volumeAttachmentId), null, VolumeAttachment.class); + } + + } + + public AttachVolume attachVolume(String serverId, String volumeId, String device) { + VolumeAttachment volumeAttachment = new VolumeAttachment(); + volumeAttachment.setVolumeId(volumeId); + volumeAttachment.setDevice(device); + return new AttachVolume(serverId, volumeAttachment); + } + + public DetachVolume detachVolume(String serverId, String volumeId) { + return new DetachVolume(serverId, volumeId); + } + + public ListVolumeAttachments listVolumeAttachments(String serverId) { + return new ListVolumeAttachments(serverId); + } + + public ShowVolumeAttachment showVolumeAttachment(String serverId, String volumeAttachmentId) { + return new ShowVolumeAttachment(serverId, volumeAttachmentId); + } + } From d3dd6b3e2bdceb659fc5917dc51b40039bb88b3f Mon Sep 17 00:00:00 2001 From: rabierre Date: Mon, 5 Aug 2013 14:01:39 +0900 Subject: [PATCH 017/144] Add Stop and Start Nova Compute Server Example. Implemented example code of shutdown and srart nova compute server(instance). --- .../examples/compute/NovaStopStartServer.java | 39 +++++++++++++++++++ 1 file changed, 39 insertions(+) create mode 100644 openstack-examples/src/main/java/com/woorea/openstack/examples/compute/NovaStopStartServer.java diff --git a/openstack-examples/src/main/java/com/woorea/openstack/examples/compute/NovaStopStartServer.java b/openstack-examples/src/main/java/com/woorea/openstack/examples/compute/NovaStopStartServer.java new file mode 100644 index 000000000..f38e90b58 --- /dev/null +++ b/openstack-examples/src/main/java/com/woorea/openstack/examples/compute/NovaStopStartServer.java @@ -0,0 +1,39 @@ +package com.woorea.openstack.examples.compute; + +import com.woorea.openstack.examples.ExamplesConfiguration; +import com.woorea.openstack.keystone.Keystone; +import com.woorea.openstack.keystone.model.Access; +import com.woorea.openstack.keystone.model.authentication.UsernamePassword; +import com.woorea.openstack.nova.Nova; +import com.woorea.openstack.nova.api.ServersResource; +import com.woorea.openstack.nova.model.Servers; + +public class NovaStopStartServer { + public static void main(String[] args) throws InterruptedException { + Keystone keystone = new Keystone(ExamplesConfiguration.KEYSTONE_AUTH_URL); + Access access = keystone.tokens().authenticate(new UsernamePassword(ExamplesConfiguration.KEYSTONE_USERNAME, ExamplesConfiguration.KEYSTONE_PASSWORD)) + .withTenantName(ExamplesConfiguration.TENANT_NAME) + .execute(); + + //use the token in the following requests + keystone.token(access.getToken().getId()); + + Nova novaClient = new Nova(ExamplesConfiguration.NOVA_ENDPOINT.concat("/").concat(access.getToken().getTenant().getId())); + novaClient.token(access.getToken().getId()); + + Servers servers = novaClient.servers().list(true).execute(); + if(servers.getList().size() > 0) { + + ServersResource.StopServer stopServer = novaClient.servers().stop(servers.getList().get(0).getId()); + stopServer.endpoint(ExamplesConfiguration.NOVA_ENDPOINT); + stopServer.execute(); + + // Wait until server shutdown. + Thread.sleep(5000); + + ServersResource.StartServer startServer = novaClient.servers().start(servers.getList().get(0).getId()); + startServer.endpoint(ExamplesConfiguration.NOVA_ENDPOINT); + startServer.execute(); + } + } +} From 07e373dde1b1a682111eb3ed23be341c42b2defb Mon Sep 17 00:00:00 2001 From: rabierre Date: Mon, 5 Aug 2013 14:08:11 +0900 Subject: [PATCH 018/144] Add Stop and Start Nova Compute Server Example. Implemented stop(shutdown) and start nova compute server(instance) example. --- .../woorea/openstack/examples/compute/NovaStopStartServer.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/openstack-examples/src/main/java/com/woorea/openstack/examples/compute/NovaStopStartServer.java b/openstack-examples/src/main/java/com/woorea/openstack/examples/compute/NovaStopStartServer.java index f38e90b58..d21493b08 100644 --- a/openstack-examples/src/main/java/com/woorea/openstack/examples/compute/NovaStopStartServer.java +++ b/openstack-examples/src/main/java/com/woorea/openstack/examples/compute/NovaStopStartServer.java @@ -24,11 +24,12 @@ public static void main(String[] args) throws InterruptedException { Servers servers = novaClient.servers().list(true).execute(); if(servers.getList().size() > 0) { + // Server has to be in activated state. ServersResource.StopServer stopServer = novaClient.servers().stop(servers.getList().get(0).getId()); stopServer.endpoint(ExamplesConfiguration.NOVA_ENDPOINT); stopServer.execute(); - // Wait until server shutdown. + // Wait until server shutdown. Or 400 error occurs. Thread.sleep(5000); ServersResource.StartServer startServer = novaClient.servers().start(servers.getList().get(0).getId()); From 8f33f7d86e926b2d4c59f30f61e0185c8668d53d Mon Sep 17 00:00:00 2001 From: rabierre Date: Tue, 6 Aug 2013 16:04:54 +0900 Subject: [PATCH 019/144] Fixed json request of ConsoleOutput and VNCConsole. Fixed constructor in GetConsoleOutputServer and GetVncConsoleServer to use api parameter. --- .../java/com/woorea/openstack/nova/api/ServersResource.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/nova-client/src/main/java/com/woorea/openstack/nova/api/ServersResource.java b/nova-client/src/main/java/com/woorea/openstack/nova/api/ServersResource.java index 74abd1ce4..cc2ed09ee 100644 --- a/nova-client/src/main/java/com/woorea/openstack/nova/api/ServersResource.java +++ b/nova-client/src/main/java/com/woorea/openstack/nova/api/ServersResource.java @@ -239,7 +239,7 @@ public class GetVncConsoleServer extends OpenStackRequest { private String id; public GetVncConsoleServer(String id, GetVncConsole action) { - super(CLIENT, HttpMethod.POST, new StringBuilder("/servers/").append(id).append("/action"), Entity.json(new GetVncConsole()), VncConsole.class); + super(CLIENT, HttpMethod.POST, new StringBuilder("/servers/").append(id).append("/action"), Entity.json(action), VncConsole.class); } } @@ -252,7 +252,7 @@ public GetVncConsoleServer getVncConsole(String id, String type) { public class GetConsoleOutputServer extends OpenStackRequest { public GetConsoleOutputServer(String id, GetConsoleOutput action) { - super(CLIENT, HttpMethod.POST, new StringBuilder("/servers/").append(id).append("/action"), Entity.json(new GetConsoleOutput()), ConsoleOutput.class); + super(CLIENT, HttpMethod.POST, new StringBuilder("/servers/").append(id).append("/action"), Entity.json(action), ConsoleOutput.class); } } From 3532d91b8039846383f6f1f03bb362e0b9a58eb6 Mon Sep 17 00:00:00 2001 From: rabierre Date: Wed, 7 Aug 2013 10:55:30 +0900 Subject: [PATCH 020/144] Replaced spaces with tab --- .../openstack/nova/api/ServersResource.java | 546 +++++++++--------- .../examples/compute/NovaStopStartServer.java | 56 +- 2 files changed, 301 insertions(+), 301 deletions(-) diff --git a/nova-client/src/main/java/com/woorea/openstack/nova/api/ServersResource.java b/nova-client/src/main/java/com/woorea/openstack/nova/api/ServersResource.java index cc2ed09ee..110ae68eb 100644 --- a/nova-client/src/main/java/com/woorea/openstack/nova/api/ServersResource.java +++ b/nova-client/src/main/java/com/woorea/openstack/nova/api/ServersResource.java @@ -37,425 +37,425 @@ public class ServersResource { - private final OpenStackClient CLIENT; + private final OpenStackClient CLIENT; - public ServersResource(OpenStackClient client) { - CLIENT = client; - } + public ServersResource(OpenStackClient client) { + CLIENT = client; + } - public List list(boolean detail) { - return new List(detail); - } + public List list(boolean detail) { + return new List(detail); + } - public Boot boot(ServerForCreate server) { - return new Boot(server); - } + public Boot boot(ServerForCreate server) { + return new Boot(server); + } - public Show show(String id) { - return new Show(id); - } + public Show show(String id) { + return new Show(id); + } - public ShowMetadata showMetadata(String id) { - return new ShowMetadata(id); - } + public ShowMetadata showMetadata(String id) { + return new ShowMetadata(id); + } - public Delete delete(String id) { - return new Delete(id); - } + public Delete delete(String id) { + return new Delete(id); + } - public class List extends OpenStackRequest { + public class List extends OpenStackRequest { - public List(boolean detail) { - super(CLIENT, HttpMethod.GET, detail ? "/servers/detail" : "/servers", null, Servers.class); - } + public List(boolean detail) { + super(CLIENT, HttpMethod.GET, detail ? "/servers/detail" : "/servers", null, Servers.class); + } - } + } - public class Boot extends OpenStackRequest { + public class Boot extends OpenStackRequest { - private ServerForCreate server; + private ServerForCreate server; - public Boot(ServerForCreate server) { - super(CLIENT, HttpMethod.POST, "/servers", Entity.json(server), Server.class); - this.server = server; - } + public Boot(ServerForCreate server) { + super(CLIENT, HttpMethod.POST, "/servers", Entity.json(server), Server.class); + this.server = server; + } - } + } - public class Show extends OpenStackRequest { + public class Show extends OpenStackRequest { - public Show(String id) { - super(CLIENT, HttpMethod.GET, new StringBuilder("/servers/").append(id), null, Server.class); - } + public Show(String id) { + super(CLIENT, HttpMethod.GET, new StringBuilder("/servers/").append(id), null, Server.class); + } - } + } - public class ShowMetadata extends OpenStackRequest { + public class ShowMetadata extends OpenStackRequest { - public ShowMetadata(String id) { - super(CLIENT, HttpMethod.GET, new StringBuilder("/servers/").append(id).append("/metadata"), null, Metadata.class); - } + public ShowMetadata(String id) { + super(CLIENT, HttpMethod.GET, new StringBuilder("/servers/").append(id).append("/metadata"), null, Metadata.class); + } - } + } - public class Delete extends OpenStackRequest { + public class Delete extends OpenStackRequest { - public Delete(String id) { - super(CLIENT, HttpMethod.DELETE, new StringBuilder("/servers/").append(id), null, Void.class); - } + public Delete(String id) { + super(CLIENT, HttpMethod.DELETE, new StringBuilder("/servers/").append(id), null, Void.class); + } - } + } - public class ShowServerAddresses extends OpenStackRequest { + public class ShowServerAddresses extends OpenStackRequest { - public ShowServerAddresses(String id) { - super(CLIENT, HttpMethod.GET, new StringBuilder("/servers/").append(id).append("/ips"), null, Addresses.class); - } + public ShowServerAddresses(String id) { + super(CLIENT, HttpMethod.GET, new StringBuilder("/servers/").append(id).append("/ips"), null, Addresses.class); + } - } + } - public class UpdateServer extends OpenStackRequest { + public class UpdateServer extends OpenStackRequest { - private Server server; + private Server server; - public UpdateServer(String id, Server server) { - super(CLIENT, HttpMethod.PUT, new StringBuilder("/servers/").append(id), Entity.json(server), Server.class); - this.server = server; - } + public UpdateServer(String id, Server server) { + super(CLIENT, HttpMethod.PUT, new StringBuilder("/servers/").append(id), Entity.json(server), Server.class); + this.server = server; + } - } + } - public abstract class Action extends OpenStackRequest { + public abstract class Action extends OpenStackRequest { - public Action(String id, Entity entity, Class returnType) { - super(CLIENT, HttpMethod.POST, new StringBuilder("/servers/").append(id).append("/action"), entity, returnType); - } + public Action(String id, Entity entity, Class returnType) { + super(CLIENT, HttpMethod.POST, new StringBuilder("/servers/").append(id).append("/action"), entity, returnType); + } - } + } - public class ChangePasswordAction extends Action { + public class ChangePasswordAction extends Action { - private ChangePassword action; + private ChangePassword action; - public ChangePasswordAction(String id, ChangePassword action) { - super(id, Entity.json(action), Server.class); - } + public ChangePasswordAction(String id, ChangePassword action) { + super(id, Entity.json(action), Server.class); + } - } + } - public class RebootAction extends Action { + public class RebootAction extends Action { - private Reboot action; + private Reboot action; - public RebootAction(String id, Reboot action) { - super(id, Entity.json(action), Void.class); - } + public RebootAction(String id, Reboot action) { + super(id, Entity.json(action), Void.class); + } - } + } - public class RebuildAction extends Action { + public class RebuildAction extends Action { - private Rebuild action; + private Rebuild action; - public RebuildAction(String id, Rebuild action) { - super(id, Entity.json(action), Server.class); - } + public RebuildAction(String id, Rebuild action) { + super(id, Entity.json(action), Server.class); + } - } + } - public class ResizeAction extends Action { + public class ResizeAction extends Action { - private Resize action; + private Resize action; - public ResizeAction(String id, Resize action) { - super(id, Entity.json(action), Server.class); - } + public ResizeAction(String id, Resize action) { + super(id, Entity.json(action), Server.class); + } - } + } - public class ConfirmResizeAction extends Action { + public class ConfirmResizeAction extends Action { - public ConfirmResizeAction(String id) { - super(id, Entity.json(new ConfirmResize()), Server.class); - } + public ConfirmResizeAction(String id) { + super(id, Entity.json(new ConfirmResize()), Server.class); + } - } + } - public class ReverResizeAction extends Action { + public class ReverResizeAction extends Action { - public ReverResizeAction(String id) { - super(id, Entity.json(new RevertResize()), Server.class); - } + public ReverResizeAction(String id) { + super(id, Entity.json(new RevertResize()), Server.class); + } - } + } - public class CreateImageAction extends Action { + public class CreateImageAction extends Action { - private CreateImage action; + private CreateImage action; - public CreateImageAction(String id) { - super(id, Entity.json(new CreateImage()), Server.class); - } + public CreateImageAction(String id) { + super(id, Entity.json(new CreateImage()), Server.class); + } - } + } - public class StartServer extends OpenStackRequest { + public class StartServer extends OpenStackRequest { - private Start action; + private Start action; - private String id; + private String id; - public StartServer(String id) { - super(CLIENT, HttpMethod.POST, new StringBuilder("/servers/").append(id).append("/action"), Entity.json(new Start()), Void.class); - } + public StartServer(String id) { + super(CLIENT, HttpMethod.POST, new StringBuilder("/servers/").append(id).append("/action"), Entity.json(new Start()), Void.class); + } - } + } - public class StopServer extends OpenStackRequest { + public class StopServer extends OpenStackRequest { - private Stop action; + private Stop action; - private String id; + private String id; - public StopServer(String id) { - super(CLIENT, HttpMethod.POST, new StringBuilder("/servers/").append(id).append("/action"), Entity.json(new Stop()), Void.class); - } + public StopServer(String id) { + super(CLIENT, HttpMethod.POST, new StringBuilder("/servers/").append(id).append("/action"), Entity.json(new Stop()), Void.class); + } - } + } - public StartServer start(String id) { - return new StartServer(id); - } + public StartServer start(String id) { + return new StartServer(id); + } - public StopServer stop(String id) { - return new StopServer(id); - } + public StopServer stop(String id) { + return new StopServer(id); + } - public class GetVncConsoleServer extends OpenStackRequest { + public class GetVncConsoleServer extends OpenStackRequest { - private GetVncConsole action; + private GetVncConsole action; - private String id; + private String id; - public GetVncConsoleServer(String id, GetVncConsole action) { - super(CLIENT, HttpMethod.POST, new StringBuilder("/servers/").append(id).append("/action"), Entity.json(action), VncConsole.class); - } + public GetVncConsoleServer(String id, GetVncConsole action) { + super(CLIENT, HttpMethod.POST, new StringBuilder("/servers/").append(id).append("/action"), Entity.json(action), VncConsole.class); + } - } + } - public GetVncConsoleServer getVncConsole(String id, String type) { - GetVncConsole action = new GetVncConsole(type); - return new GetVncConsoleServer(id, action); - } + public GetVncConsoleServer getVncConsole(String id, String type) { + GetVncConsole action = new GetVncConsole(type); + return new GetVncConsoleServer(id, action); + } - public class GetConsoleOutputServer extends OpenStackRequest { + public class GetConsoleOutputServer extends OpenStackRequest { - public GetConsoleOutputServer(String id, GetConsoleOutput action) { - super(CLIENT, HttpMethod.POST, new StringBuilder("/servers/").append(id).append("/action"), Entity.json(action), ConsoleOutput.class); - } + public GetConsoleOutputServer(String id, GetConsoleOutput action) { + super(CLIENT, HttpMethod.POST, new StringBuilder("/servers/").append(id).append("/action"), Entity.json(action), ConsoleOutput.class); + } - } + } - public GetConsoleOutputServer getConsoleOutput(String id, int length) { - GetConsoleOutput action = new GetConsoleOutput(length); - return new GetConsoleOutputServer(id, action); - } + public GetConsoleOutputServer getConsoleOutput(String id, int length) { + GetConsoleOutput action = new GetConsoleOutput(length); + return new GetConsoleOutputServer(id, action); + } - public class PauseServer extends OpenStackRequest { + public class PauseServer extends OpenStackRequest { - public PauseServer(String id) { - super(CLIENT, HttpMethod.POST, new StringBuilder("/servers/").append(id).append("/action"), Entity.json(new Pause()), Void.class); - } + public PauseServer(String id) { + super(CLIENT, HttpMethod.POST, new StringBuilder("/servers/").append(id).append("/action"), Entity.json(new Pause()), Void.class); + } - } + } - public class UnpauseServer extends OpenStackRequest { + public class UnpauseServer extends OpenStackRequest { - public UnpauseServer(String id) { - super(CLIENT, HttpMethod.POST, new StringBuilder("/servers/").append(id).append("/action"), Entity.json(new Unpause()), Void.class); - } + public UnpauseServer(String id) { + super(CLIENT, HttpMethod.POST, new StringBuilder("/servers/").append(id).append("/action"), Entity.json(new Unpause()), Void.class); + } - } + } - public class LockServer extends OpenStackRequest { + public class LockServer extends OpenStackRequest { - private Lock action; + private Lock action; - private String id; + private String id; - public LockServer(String id) { - super(CLIENT, HttpMethod.POST, new StringBuilder("/servers/").append(id).append("/action"), Entity.json(new Lock()), Void.class); - } + public LockServer(String id) { + super(CLIENT, HttpMethod.POST, new StringBuilder("/servers/").append(id).append("/action"), Entity.json(new Lock()), Void.class); + } - } + } - public class UnlockServer extends OpenStackRequest { + public class UnlockServer extends OpenStackRequest { - private Unlock action; + private Unlock action; - private String id; + private String id; - public UnlockServer(String id) { - super(CLIENT, HttpMethod.POST, new StringBuilder("/servers/").append(id).append("/action"), Entity.json(new Unlock()), Void.class); - } + public UnlockServer(String id) { + super(CLIENT, HttpMethod.POST, new StringBuilder("/servers/").append(id).append("/action"), Entity.json(new Unlock()), Void.class); + } - } + } - public class SuspendServer extends OpenStackRequest { + public class SuspendServer extends OpenStackRequest { - public SuspendServer(String id) { - super(CLIENT, HttpMethod.POST, new StringBuilder("/servers/").append(id).append("/action"), Entity.json(new Suspend()), Void.class); - } + public SuspendServer(String id) { + super(CLIENT, HttpMethod.POST, new StringBuilder("/servers/").append(id).append("/action"), Entity.json(new Suspend()), Void.class); + } - } + } - public class ResumeServer extends OpenStackRequest { + public class ResumeServer extends OpenStackRequest { - public ResumeServer(String id) { - super(CLIENT, HttpMethod.POST, new StringBuilder("/servers/").append(id).append("/action"), Entity.json(new Resume()), Void.class); - } + public ResumeServer(String id) { + super(CLIENT, HttpMethod.POST, new StringBuilder("/servers/").append(id).append("/action"), Entity.json(new Resume()), Void.class); + } - } + } - public class CreateBackupServer extends OpenStackRequest { + public class CreateBackupServer extends OpenStackRequest { - public CreateBackupServer(String id, CreateBackup action) { - super(CLIENT, HttpMethod.POST, new StringBuilder("/servers/").append(id).append("/action"), Entity.json(action), Void.class); - } + public CreateBackupServer(String id, CreateBackup action) { + super(CLIENT, HttpMethod.POST, new StringBuilder("/servers/").append(id).append("/action"), Entity.json(action), Void.class); + } - } + } - public PauseServer pause(String serverId) { - return new PauseServer(serverId); - } + public PauseServer pause(String serverId) { + return new PauseServer(serverId); + } - public UnpauseServer unpause(String serverId) { - return new UnpauseServer(serverId); - } + public UnpauseServer unpause(String serverId) { + return new UnpauseServer(serverId); + } - public LockServer lock(String serverId) { - return new LockServer(serverId); - } + public LockServer lock(String serverId) { + return new LockServer(serverId); + } - public UnlockServer unlock(String serverId) { - return new UnlockServer(serverId); - } + public UnlockServer unlock(String serverId) { + return new UnlockServer(serverId); + } - public SuspendServer suspend(String serverId) { - return new SuspendServer(serverId); - } + public SuspendServer suspend(String serverId) { + return new SuspendServer(serverId); + } - public ResumeServer resume(String serverId) { - return new ResumeServer(serverId); - } + public ResumeServer resume(String serverId) { + return new ResumeServer(serverId); + } - public CreateBackupServer createBackup(String serverId, CreateBackup action) { - return new CreateBackupServer(serverId, action); - } + public CreateBackupServer createBackup(String serverId, CreateBackup action) { + return new CreateBackupServer(serverId, action); + } - public class RescueServer extends OpenStackRequest { + public class RescueServer extends OpenStackRequest { - public RescueServer(String id, Rescue action) { - super(CLIENT, HttpMethod.POST, new StringBuilder("/servers/").append(id).append("/action"), Entity.json(action), Void.class); - } + public RescueServer(String id, Rescue action) { + super(CLIENT, HttpMethod.POST, new StringBuilder("/servers/").append(id).append("/action"), Entity.json(action), Void.class); + } - } + } - public class UnrescueServer extends OpenStackRequest { + public class UnrescueServer extends OpenStackRequest { - public UnrescueServer(String id) { - super(CLIENT, HttpMethod.POST, new StringBuilder("/servers/").append(id).append("/action"), Entity.json(new Unrescue()), Void.class); - } + public UnrescueServer(String id) { + super(CLIENT, HttpMethod.POST, new StringBuilder("/servers/").append(id).append("/action"), Entity.json(new Unrescue()), Void.class); + } - } + } - public RescueServer rescue(String serverId, String adminPass) { - Rescue action = new Rescue(adminPass); - return new RescueServer(serverId, action); - } + public RescueServer rescue(String serverId, String adminPass) { + Rescue action = new Rescue(adminPass); + return new RescueServer(serverId, action); + } - public UnrescueServer unrescue(String serverId) { - return new UnrescueServer(serverId); - } + public UnrescueServer unrescue(String serverId) { + return new UnrescueServer(serverId); + } - public class AssociateFloatingIp extends OpenStackRequest { + public class AssociateFloatingIp extends OpenStackRequest { - public AssociateFloatingIp(String id, com.woorea.openstack.nova.model.ServerAction.AssociateFloatingIp action) { - super(CLIENT, HttpMethod.POST, new StringBuilder("/servers/").append(id).append("/action"), Entity.json(action), Void.class); - } + public AssociateFloatingIp(String id, com.woorea.openstack.nova.model.ServerAction.AssociateFloatingIp action) { + super(CLIENT, HttpMethod.POST, new StringBuilder("/servers/").append(id).append("/action"), Entity.json(action), Void.class); + } - } + } - public class DisassociateFloatingIp extends OpenStackRequest { + public class DisassociateFloatingIp extends OpenStackRequest { - public DisassociateFloatingIp(String id, com.woorea.openstack.nova.model.ServerAction.DisassociateFloatingIp action) { - super(CLIENT, HttpMethod.POST, new StringBuilder("/servers/").append(id).append("/action"), Entity.json(action), Void.class); - } + public DisassociateFloatingIp(String id, com.woorea.openstack.nova.model.ServerAction.DisassociateFloatingIp action) { + super(CLIENT, HttpMethod.POST, new StringBuilder("/servers/").append(id).append("/action"), Entity.json(action), Void.class); + } - } + } - public AssociateFloatingIp associateFloatingIp(String serverId, String floatingIpAddress) { - com.woorea.openstack.nova.model.ServerAction.AssociateFloatingIp action = new com.woorea.openstack.nova.model.ServerAction.AssociateFloatingIp(floatingIpAddress); - return new AssociateFloatingIp(serverId, action); - } + public AssociateFloatingIp associateFloatingIp(String serverId, String floatingIpAddress) { + com.woorea.openstack.nova.model.ServerAction.AssociateFloatingIp action = new com.woorea.openstack.nova.model.ServerAction.AssociateFloatingIp(floatingIpAddress); + return new AssociateFloatingIp(serverId, action); + } - public DisassociateFloatingIp disassociateFloatingIp(String serverId, String floatingIpAddress) { - com.woorea.openstack.nova.model.ServerAction.DisassociateFloatingIp action = new com.woorea.openstack.nova.model.ServerAction.DisassociateFloatingIp(floatingIpAddress); - return new DisassociateFloatingIp(serverId, action); - } + public DisassociateFloatingIp disassociateFloatingIp(String serverId, String floatingIpAddress) { + com.woorea.openstack.nova.model.ServerAction.DisassociateFloatingIp action = new com.woorea.openstack.nova.model.ServerAction.DisassociateFloatingIp(floatingIpAddress); + return new DisassociateFloatingIp(serverId, action); + } - public class AttachVolume extends OpenStackRequest { + public class AttachVolume extends OpenStackRequest { - public AttachVolume(String serverId, final VolumeAttachment volumeAttachment) { - super(CLIENT, HttpMethod.POST, new StringBuilder("/servers/").append(serverId).append("/os-volume_attachments"), Entity.json(volumeAttachment), Void.class); - } + public AttachVolume(String serverId, final VolumeAttachment volumeAttachment) { + super(CLIENT, HttpMethod.POST, new StringBuilder("/servers/").append(serverId).append("/os-volume_attachments"), Entity.json(volumeAttachment), Void.class); + } - } + } - public class DetachVolume extends OpenStackRequest { + public class DetachVolume extends OpenStackRequest { - public DetachVolume(String serverId, String volumeId) { - super(CLIENT, HttpMethod.DELETE, new StringBuilder("/servers/").append(serverId).append("/os-volume_attachments/").append(volumeId), null, Void.class); - } + public DetachVolume(String serverId, String volumeId) { + super(CLIENT, HttpMethod.DELETE, new StringBuilder("/servers/").append(serverId).append("/os-volume_attachments/").append(volumeId), null, Void.class); + } - } + } - public class ListVolumeAttachments extends OpenStackRequest { + public class ListVolumeAttachments extends OpenStackRequest { - public ListVolumeAttachments(String serverId) { - super(CLIENT, HttpMethod.GET, new StringBuilder("/servers/").append(serverId).append("/os-volume_attachments"), null, VolumeAttachments.class); - } + public ListVolumeAttachments(String serverId) { + super(CLIENT, HttpMethod.GET, new StringBuilder("/servers/").append(serverId).append("/os-volume_attachments"), null, VolumeAttachments.class); + } - } + } - public class ShowVolumeAttachment extends OpenStackRequest { + public class ShowVolumeAttachment extends OpenStackRequest { - public ShowVolumeAttachment(String serverId, String volumeAttachmentId) { - super(CLIENT, HttpMethod.GET, new StringBuilder("/servers/").append(serverId).append("/os-volume_attachments/").append(volumeAttachmentId), null, VolumeAttachment.class); - } + public ShowVolumeAttachment(String serverId, String volumeAttachmentId) { + super(CLIENT, HttpMethod.GET, new StringBuilder("/servers/").append(serverId).append("/os-volume_attachments/").append(volumeAttachmentId), null, VolumeAttachment.class); + } - } + } - public AttachVolume attachVolume(String serverId, String volumeId, String device) { - VolumeAttachment volumeAttachment = new VolumeAttachment(); - volumeAttachment.setVolumeId(volumeId); - volumeAttachment.setDevice(device); - return new AttachVolume(serverId, volumeAttachment); - } + public AttachVolume attachVolume(String serverId, String volumeId, String device) { + VolumeAttachment volumeAttachment = new VolumeAttachment(); + volumeAttachment.setVolumeId(volumeId); + volumeAttachment.setDevice(device); + return new AttachVolume(serverId, volumeAttachment); + } - public DetachVolume detachVolume(String serverId, String volumeId) { - return new DetachVolume(serverId, volumeId); - } + public DetachVolume detachVolume(String serverId, String volumeId) { + return new DetachVolume(serverId, volumeId); + } - public ListVolumeAttachments listVolumeAttachments(String serverId) { - return new ListVolumeAttachments(serverId); - } + public ListVolumeAttachments listVolumeAttachments(String serverId) { + return new ListVolumeAttachments(serverId); + } - public ShowVolumeAttachment showVolumeAttachment(String serverId, String volumeAttachmentId) { - return new ShowVolumeAttachment(serverId, volumeAttachmentId); - } + public ShowVolumeAttachment showVolumeAttachment(String serverId, String volumeAttachmentId) { + return new ShowVolumeAttachment(serverId, volumeAttachmentId); + } } diff --git a/openstack-examples/src/main/java/com/woorea/openstack/examples/compute/NovaStopStartServer.java b/openstack-examples/src/main/java/com/woorea/openstack/examples/compute/NovaStopStartServer.java index d21493b08..df4d44b7c 100644 --- a/openstack-examples/src/main/java/com/woorea/openstack/examples/compute/NovaStopStartServer.java +++ b/openstack-examples/src/main/java/com/woorea/openstack/examples/compute/NovaStopStartServer.java @@ -9,32 +9,32 @@ import com.woorea.openstack.nova.model.Servers; public class NovaStopStartServer { - public static void main(String[] args) throws InterruptedException { - Keystone keystone = new Keystone(ExamplesConfiguration.KEYSTONE_AUTH_URL); - Access access = keystone.tokens().authenticate(new UsernamePassword(ExamplesConfiguration.KEYSTONE_USERNAME, ExamplesConfiguration.KEYSTONE_PASSWORD)) - .withTenantName(ExamplesConfiguration.TENANT_NAME) - .execute(); - - //use the token in the following requests - keystone.token(access.getToken().getId()); - - Nova novaClient = new Nova(ExamplesConfiguration.NOVA_ENDPOINT.concat("/").concat(access.getToken().getTenant().getId())); - novaClient.token(access.getToken().getId()); - - Servers servers = novaClient.servers().list(true).execute(); - if(servers.getList().size() > 0) { - - // Server has to be in activated state. - ServersResource.StopServer stopServer = novaClient.servers().stop(servers.getList().get(0).getId()); - stopServer.endpoint(ExamplesConfiguration.NOVA_ENDPOINT); - stopServer.execute(); - - // Wait until server shutdown. Or 400 error occurs. - Thread.sleep(5000); - - ServersResource.StartServer startServer = novaClient.servers().start(servers.getList().get(0).getId()); - startServer.endpoint(ExamplesConfiguration.NOVA_ENDPOINT); - startServer.execute(); - } - } + public static void main(String[] args) throws InterruptedException { + Keystone keystone = new Keystone(ExamplesConfiguration.KEYSTONE_AUTH_URL); + Access access = keystone.tokens().authenticate(new UsernamePassword(ExamplesConfiguration.KEYSTONE_USERNAME, ExamplesConfiguration.KEYSTONE_PASSWORD)) + .withTenantName(ExamplesConfiguration.TENANT_NAME) + .execute(); + + //use the token in the following requests + keystone.token(access.getToken().getId()); + + Nova novaClient = new Nova(ExamplesConfiguration.NOVA_ENDPOINT.concat("/").concat(access.getToken().getTenant().getId())); + novaClient.token(access.getToken().getId()); + + Servers servers = novaClient.servers().list(true).execute(); + if(servers.getList().size() > 0) { + + // Server has to be in activated state. + ServersResource.StopServer stopServer = novaClient.servers().stop(servers.getList().get(0).getId()); + stopServer.endpoint(ExamplesConfiguration.NOVA_ENDPOINT); + stopServer.execute(); + + // Wait until server shutdown. Or 400 error occurs. + Thread.sleep(5000); + + ServersResource.StartServer startServer = novaClient.servers().start(servers.getList().get(0).getId()); + startServer.endpoint(ExamplesConfiguration.NOVA_ENDPOINT); + startServer.execute(); + } + } } From ff69ec60631bd0b6b675784fd4a33923b2829888 Mon Sep 17 00:00:00 2001 From: Armin Bahramshahry Date: Fri, 9 Aug 2013 09:52:26 -0700 Subject: [PATCH 021/144] Fixed the issue with getVncConsole and ConsoleOutput. Fix #77 --- .../java/com/woorea/openstack/nova/api/ServersResource.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/nova-client/src/main/java/com/woorea/openstack/nova/api/ServersResource.java b/nova-client/src/main/java/com/woorea/openstack/nova/api/ServersResource.java index 88c90ac6d..b3bb63dc4 100644 --- a/nova-client/src/main/java/com/woorea/openstack/nova/api/ServersResource.java +++ b/nova-client/src/main/java/com/woorea/openstack/nova/api/ServersResource.java @@ -247,7 +247,7 @@ public class GetVncConsoleServer extends OpenStackRequest { private String id; public GetVncConsoleServer(String id, GetVncConsole action) { - super(CLIENT, HttpMethod.POST, new StringBuilder("/servers/").append(id).append("/action"), Entity.json(new GetVncConsole()), VncConsole.class); + super(CLIENT, HttpMethod.POST, new StringBuilder("/servers/").append(id).append("/action"), Entity.json(action), VncConsole.class); } } @@ -260,7 +260,7 @@ public GetVncConsoleServer getVncConsole(String id, String type) { public class GetConsoleOutputServer extends OpenStackRequest { public GetConsoleOutputServer(String id, GetConsoleOutput action) { - super(CLIENT, HttpMethod.POST, new StringBuilder("/servers/").append(id).append("/action"), Entity.json(new GetConsoleOutput()), ConsoleOutput.class); + super(CLIENT, HttpMethod.POST, new StringBuilder("/servers/").append(id).append("/action"), Entity.json(action), ConsoleOutput.class); } } From d547b356b4758025bba6cc22753780355936e7f4 Mon Sep 17 00:00:00 2001 From: zhangyt26 Date: Tue, 20 Aug 2013 15:36:02 -0700 Subject: [PATCH 022/144] Bug in the model Openstack api call returns host as a list of Strings instead of a complete object. --- .../java/com/woorea/openstack/nova/model/HostAggregate.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/nova-model/src/main/java/com/woorea/openstack/nova/model/HostAggregate.java b/nova-model/src/main/java/com/woorea/openstack/nova/model/HostAggregate.java index ec2d1a6f9..cc01051a1 100644 --- a/nova-model/src/main/java/com/woorea/openstack/nova/model/HostAggregate.java +++ b/nova-model/src/main/java/com/woorea/openstack/nova/model/HostAggregate.java @@ -28,7 +28,7 @@ public class HostAggregate implements Serializable { private Boolean deleted; - private List hosts; + private List hosts; private Map metadata; @@ -84,7 +84,7 @@ public Boolean getDeleted() { /** * @return the hosts */ - public List getHosts() { + public List getHosts() { return hosts; } From 003a13f4217c25c46a07acecc559dcb80eb49004 Mon Sep 17 00:00:00 2001 From: Federico Simoncelli Date: Thu, 29 Aug 2013 16:44:36 +0200 Subject: [PATCH 023/144] resteasy: add support for resteasy 3 Signed-off-by: Federico Simoncelli --- .../resteasy-connector/pom.xml | 5 +++ .../connector/RESTEasyConnector.java | 43 ++++++++++++------- .../openstack/connector/RESTEasyResponse.java | 9 ++-- 3 files changed, 35 insertions(+), 22 deletions(-) diff --git a/openstack-client-connectors/resteasy-connector/pom.xml b/openstack-client-connectors/resteasy-connector/pom.xml index 3aec37166..6cbea9dc8 100644 --- a/openstack-client-connectors/resteasy-connector/pom.xml +++ b/openstack-client-connectors/resteasy-connector/pom.xml @@ -19,5 +19,10 @@ jackson-jaxrs 1.9.4 + + commons-httpclient + commons-httpclient + 3.1 + \ No newline at end of file diff --git a/openstack-client-connectors/resteasy-connector/src/main/java/com/woorea/openstack/connector/RESTEasyConnector.java b/openstack-client-connectors/resteasy-connector/src/main/java/com/woorea/openstack/connector/RESTEasyConnector.java index 040f6106d..25f146e15 100644 --- a/openstack-client-connectors/resteasy-connector/src/main/java/com/woorea/openstack/connector/RESTEasyConnector.java +++ b/openstack-client-connectors/resteasy-connector/src/main/java/com/woorea/openstack/connector/RESTEasyConnector.java @@ -15,7 +15,6 @@ import org.codehaus.jackson.map.annotate.JsonRootName; import org.codehaus.jackson.map.annotate.JsonSerialize.Inclusion; import org.jboss.resteasy.client.ClientRequest; -import org.jboss.resteasy.client.ClientRequestFactory; import org.jboss.resteasy.client.ClientResponse; import org.jboss.resteasy.plugins.providers.InputStreamProvider; import org.jboss.resteasy.spi.ResteasyProviderFactory; @@ -31,7 +30,32 @@ public class RESTEasyConnector implements OpenStackClientConnector { public static ObjectMapper WRAPPED_MAPPER; - private static ResteasyProviderFactory providerFactory; + static class OpenStackProviderFactory extends ResteasyProviderFactory { + + private JacksonJsonProvider jsonProvider; + private InputStreamProvider streamProvider; + + public OpenStackProviderFactory() { + super(); + + addContextResolver(new ContextResolver() { + public ObjectMapper getContext(Class type) { + return type.getAnnotation(JsonRootName.class) == null ? DEFAULT_MAPPER : WRAPPED_MAPPER; + } + }); + + jsonProvider = new JacksonJsonProvider(); + addMessageBodyReader(jsonProvider); + addMessageBodyWriter(jsonProvider); + + streamProvider = new InputStreamProvider(); + addMessageBodyReader(streamProvider); + addMessageBodyWriter(streamProvider); + } + + } + + private static OpenStackProviderFactory providerFactory; static { DEFAULT_MAPPER = new ObjectMapper(); @@ -48,20 +72,7 @@ public class RESTEasyConnector implements OpenStackClientConnector { WRAPPED_MAPPER.enable(DeserializationConfig.Feature.UNWRAP_ROOT_VALUE); WRAPPED_MAPPER.enable(DeserializationConfig.Feature.ACCEPT_SINGLE_VALUE_AS_ARRAY); - providerFactory = new ResteasyProviderFactory(); - providerFactory.addContextResolver(new ContextResolver() { - public ObjectMapper getContext(Class type) { - return type.getAnnotation(JsonRootName.class) == null ? DEFAULT_MAPPER : WRAPPED_MAPPER; - } - }); - - JacksonJsonProvider jsonProvider = new JacksonJsonProvider(); - providerFactory.addMessageBodyReader(jsonProvider); - providerFactory.addMessageBodyWriter(jsonProvider); - - InputStreamProvider streamProvider = new InputStreamProvider(); - providerFactory.addMessageBodyReader(streamProvider); - providerFactory.addMessageBodyWriter(streamProvider); + providerFactory = new OpenStackProviderFactory(); } public OpenStackResponse request(OpenStackRequest request) { diff --git a/openstack-client-connectors/resteasy-connector/src/main/java/com/woorea/openstack/connector/RESTEasyResponse.java b/openstack-client-connectors/resteasy-connector/src/main/java/com/woorea/openstack/connector/RESTEasyResponse.java index 9b7b41e98..e6907d2c3 100644 --- a/openstack-client-connectors/resteasy-connector/src/main/java/com/woorea/openstack/connector/RESTEasyResponse.java +++ b/openstack-client-connectors/resteasy-connector/src/main/java/com/woorea/openstack/connector/RESTEasyResponse.java @@ -28,19 +28,16 @@ public InputStream getInputStream() { @Override public String header(String name) { - @SuppressWarnings("unchecked") - MultivaluedMap responseHeaders = response.getHeaders(); - return responseHeaders.getFirst(name); + return response.getHeaders().getFirst(name).toString(); } @Override public Map headers() { Map headers = new HashMap(); + MultivaluedMap responseHeaders = response.getHeaders(); - @SuppressWarnings("unchecked") - MultivaluedMap responseHeaders = response.getHeaders(); for (String key : responseHeaders.keySet()) { - headers.put(key, responseHeaders.getFirst(key)); + headers.put(key, responseHeaders.getFirst(key).toString()); } return headers; From 4a99e14bc887fcc61be3b6f5b90cbb90c97d9ecc Mon Sep 17 00:00:00 2001 From: persistent-rCloud Date: Fri, 30 Aug 2013 11:01:20 +0530 Subject: [PATCH 024/144] Create RoutersResource.java This resource Extends the Network functionality to include router features(Creating, Deleting,Add_Router_Interface etc) --- .../quantum/api/RoutersResource.java | 86 +++++++++++++++++++ 1 file changed, 86 insertions(+) create mode 100644 quantum-client/src/main/java/com/woorea/openstack/quantum/api/RoutersResource.java diff --git a/quantum-client/src/main/java/com/woorea/openstack/quantum/api/RoutersResource.java b/quantum-client/src/main/java/com/woorea/openstack/quantum/api/RoutersResource.java new file mode 100644 index 000000000..285a46c6b --- /dev/null +++ b/quantum-client/src/main/java/com/woorea/openstack/quantum/api/RoutersResource.java @@ -0,0 +1,86 @@ +package com.woorea.openstack.quantum.api; + +import com.woorea.openstack.base.client.Entity; +import com.woorea.openstack.base.client.HttpMethod; +import com.woorea.openstack.base.client.OpenStackClient; +import com.woorea.openstack.base.client.OpenStackRequest; +import com.woorea.openstack.quantum.model.Router; +import com.woorea.openstack.quantum.model.RouterForAddInterface; +import com.woorea.openstack.quantum.model.RouterForCreate; +import com.woorea.openstack.quantum.model.RouterInterface; +import com.woorea.openstack.quantum.model.Routers; + +public class RoutersResource { + + private final OpenStackClient CLIENT; + + public RoutersResource(OpenStackClient client) { + CLIENT = client; + } + + public List list() { + return new List(); + } + + public Create create(RouterForCreate router){ + return new Create(router); + } + + public Delete delete(String netId){ + return new Delete(netId); + } + + public Show show(String netId){ + return new Show(netId); + } + + public class List extends OpenStackRequest { + + public List() { + super(CLIENT, HttpMethod.GET, "routers", null, Routers.class); + } + } + + public class Query extends OpenStackRequest { + + public Query(Router router) { + //super(network); +// target = target.path("v2.0").path("networks"); +// target = queryParam(target); +// return target.request(MediaType.APPLICATION_JSON).get(Networks.class); + } + } + public class Create extends OpenStackRequest { + + public Create(RouterForCreate router){ + super(CLIENT, HttpMethod.POST, "routers", Entity.json(router), Router.class); + } + } + + + + public class Show extends OpenStackRequest { + + public Show(String id) { + super(CLIENT, HttpMethod.GET, buildPath("routers/", id), null, Router.class); + } + } + + public class Delete extends OpenStackRequest { + + public Delete(String id){ + super(CLIENT, HttpMethod.DELETE, buildPath("routers/", id), null, Void.class); + } + } + public Attach addInterface(RouterForAddInterface interfaceToAdd){ + return new Attach(interfaceToAdd); + } + public class Attach extends OpenStackRequest { + + public Attach(RouterForAddInterface interfaceToAdd){ + super(CLIENT, HttpMethod.PUT, buildPath("routers/",interfaceToAdd.getRouterId(),"/add_router_interface"), Entity.json(interfaceToAdd),RouterInterface.class); + } + + } + +} From f76eb2600b8e14e9e2e3011869bfd9c1f6e514c5 Mon Sep 17 00:00:00 2001 From: persistent-rCloud Date: Fri, 30 Aug 2013 11:05:17 +0530 Subject: [PATCH 025/144] Create Router.java Provides input information for creating a router. --- .../openstack/quantum/model/Router.java | 71 +++++++++++++++++++ 1 file changed, 71 insertions(+) create mode 100644 quantum-model/src/main/java/com/woorea/openstack/quantum/model/Router.java diff --git a/quantum-model/src/main/java/com/woorea/openstack/quantum/model/Router.java b/quantum-model/src/main/java/com/woorea/openstack/quantum/model/Router.java new file mode 100644 index 000000000..92a9f4254 --- /dev/null +++ b/quantum-model/src/main/java/com/woorea/openstack/quantum/model/Router.java @@ -0,0 +1,71 @@ +package com.woorea.openstack.quantum.model; + +import java.util.List; + +import org.codehaus.jackson.annotate.JsonProperty; +import org.codehaus.jackson.map.annotate.JsonRootName; +@JsonRootName("router") +public class Router { + + /** + * @param args + */ + @JsonProperty("status") + String status; + @JsonProperty("external_gateway_info") + String externalGatewayInfo; + @JsonProperty("name") + String name; + @JsonProperty("admin_state_up") + String admin_state_up; + @JsonProperty("tenant_id") + String tenantId; + @JsonProperty("id") + String id; + @JsonProperty("routes") + private List routers; + public String getName() { + return name; + } + public void setName(String name) { + this.name = name; + } + public List getRouters() { + return routers; + } + public void setRouters(List routers) { + this.routers = routers; + } + public String getAdmin_state_up() { + return admin_state_up; + } + public void setAdmin_state_up(String admin_state_up) { + this.admin_state_up = admin_state_up; + } + public String getStatus() { + return status; + } + public void setStatus(String status) { + this.status = status; + } + public String getExternalGatewayInfo() { + return externalGatewayInfo; + } + public void setExternalGatewayInfo(String externalGatewayInfo) { + this.externalGatewayInfo = externalGatewayInfo; + } + public String getTenantId() { + return tenantId; + } + public void setTenantId(String tenantId) { + this.tenantId = tenantId; + } + public String getId() { + return id; + } + public void setId(String id) { + this.id = id; + } + + +} From 362171bfe243c614646231ecff56964abc11585a Mon Sep 17 00:00:00 2001 From: persistent-rCloud Date: Fri, 30 Aug 2013 11:06:16 +0530 Subject: [PATCH 026/144] Create RouterForAddInterface.java Provides Input information to add router interface. --- .../quantum/model/RouterForAddInterface.java | 28 +++++++++++++++++++ 1 file changed, 28 insertions(+) create mode 100644 quantum-model/src/main/java/com/woorea/openstack/quantum/model/RouterForAddInterface.java diff --git a/quantum-model/src/main/java/com/woorea/openstack/quantum/model/RouterForAddInterface.java b/quantum-model/src/main/java/com/woorea/openstack/quantum/model/RouterForAddInterface.java new file mode 100644 index 000000000..62ec3025a --- /dev/null +++ b/quantum-model/src/main/java/com/woorea/openstack/quantum/model/RouterForAddInterface.java @@ -0,0 +1,28 @@ +package com.woorea.openstack.quantum.model; + +import java.io.Serializable; + +import org.codehaus.jackson.annotate.JsonProperty; + +public class RouterForAddInterface implements Serializable { + + @JsonProperty("subnet_id") + String subnetId; + String routerId; + + public String getSubnetId() { + return subnetId; + } + + public void setSubnetId(String subnetId) { + this.subnetId = subnetId; + } + + public String getRouterId() { + return routerId; + } + + public void setRouterId(String routerId) { + this.routerId = routerId; + } + } From 6442ea9a5d4c8ba55c2842bf5bbaccfd067ead34 Mon Sep 17 00:00:00 2001 From: persistent-rCloud Date: Fri, 30 Aug 2013 11:10:46 +0530 Subject: [PATCH 027/144] Create RouterForCreate.java Java Bean to set the router Information for creating the router. --- .../quantum/model/RouterForCreate.java | 65 +++++++++++++++++++ 1 file changed, 65 insertions(+) create mode 100644 quantum-model/src/main/java/com/woorea/openstack/quantum/model/RouterForCreate.java diff --git a/quantum-model/src/main/java/com/woorea/openstack/quantum/model/RouterForCreate.java b/quantum-model/src/main/java/com/woorea/openstack/quantum/model/RouterForCreate.java new file mode 100644 index 000000000..d121d6032 --- /dev/null +++ b/quantum-model/src/main/java/com/woorea/openstack/quantum/model/RouterForCreate.java @@ -0,0 +1,65 @@ +package com.woorea.openstack.quantum.model; + +import java.util.List; + +import org.codehaus.jackson.annotate.JsonProperty; +import org.codehaus.jackson.map.annotate.JsonRootName; +@JsonRootName("router") +public class RouterForCreate { + @JsonProperty("name") + String name; + private List routers; + @JsonProperty("admin_state_up") + String admin_state_up; + @JsonProperty("status") + String status; + @JsonProperty("external_gateway_info") + String externalGatewayInfo; + @JsonProperty("tenant_id") + String tenantId; + @JsonProperty("id") + String id; + public String getName() { + return name; + } + public void setName(String name) { + this.name = name; + } + public List getRouters() { + return routers; + } + public void setRouters(List routers) { + this.routers = routers; + } + public String getAdmin_state_up() { + return admin_state_up; + } + public void setAdmin_state_up(String admin_state_up) { + this.admin_state_up = admin_state_up; + } + public String getStatus() { + return status; + } + public void setStatus(String status) { + this.status = status; + } + public String getExternalGatewayInfo() { + return externalGatewayInfo; + } + public void setExternalGatewayInfo(String externalGatewayInfo) { + this.externalGatewayInfo = externalGatewayInfo; + } + public String getTenantId() { + return tenantId; + } + public void setTenantId(String tenantId) { + this.tenantId = tenantId; + } + public String getId() { + return id; + } + public void setId(String id) { + this.id = id; + } + +} From 0f38a3a5ecf2011c99e4b5a67132dbc7d5aad856 Mon Sep 17 00:00:00 2001 From: persistent-rCloud Date: Fri, 30 Aug 2013 11:13:10 +0530 Subject: [PATCH 028/144] Create RouterInterface.java Provides Inputs to attach a router interface --- .../quantum/model/RouterInterface.java | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) create mode 100644 quantum-model/src/main/java/com/woorea/openstack/quantum/model/RouterInterface.java diff --git a/quantum-model/src/main/java/com/woorea/openstack/quantum/model/RouterInterface.java b/quantum-model/src/main/java/com/woorea/openstack/quantum/model/RouterInterface.java new file mode 100644 index 000000000..2d7551fbb --- /dev/null +++ b/quantum-model/src/main/java/com/woorea/openstack/quantum/model/RouterInterface.java @@ -0,0 +1,19 @@ +package com.woorea.openstack.quantum.model; + +import java.io.Serializable; + +import org.codehaus.jackson.annotate.JsonProperty; +import org.codehaus.jackson.map.annotate.JsonRootName; + +public class RouterInterface implements Serializable { + + @JsonProperty("subnet_id") + String subnetId; + @JsonProperty("port_id") + String portId; + @JsonProperty("tenant_id") + String tenantId; + @JsonProperty("id") + String id; + +} From 548efaf8518472e2713dea52279899c2319633fc Mon Sep 17 00:00:00 2001 From: persistent-rCloud Date: Fri, 30 Aug 2013 11:14:42 +0530 Subject: [PATCH 029/144] Create Routers.java To retrieve details of routers. --- .../openstack/quantum/model/Routers.java | 38 +++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 quantum-model/src/main/java/com/woorea/openstack/quantum/model/Routers.java diff --git a/quantum-model/src/main/java/com/woorea/openstack/quantum/model/Routers.java b/quantum-model/src/main/java/com/woorea/openstack/quantum/model/Routers.java new file mode 100644 index 000000000..e2a56b2bc --- /dev/null +++ b/quantum-model/src/main/java/com/woorea/openstack/quantum/model/Routers.java @@ -0,0 +1,38 @@ +package com.woorea.openstack.quantum.model; + +import java.io.Serializable; +import java.util.Iterator; +import java.util.List; +import org.codehaus.jackson.annotate.JsonProperty; + +public class Routers implements Iterable, Serializable{ + + @JsonProperty("routers") + private List list; + + /** + * @return the list + */ + public List getList() { + return list; + } + + + /** + * @param list the list to set + */ + public void setList(List list) { + this.list = list; + } + + + public String toString() { + return "Routers [list=" + list + "]"; + } + + + public Iterator iterator() { + return list.iterator(); + } + +} From 21cae75132f028d473aa0d6a65f01925261269d9 Mon Sep 17 00:00:00 2001 From: persistent-rCloud Date: Fri, 30 Aug 2013 11:22:49 +0530 Subject: [PATCH 030/144] Create QuantumNetworkCreate.java Client program to Create a network, subnet,router, adding router interface and listing them. --- .../network/QuantumNetworkCreate.java | 108 ++++++++++++++++++ 1 file changed, 108 insertions(+) create mode 100644 openstack-examples/src/main/java/com/woorea/openstack/examples/network/QuantumNetworkCreate.java diff --git a/openstack-examples/src/main/java/com/woorea/openstack/examples/network/QuantumNetworkCreate.java b/openstack-examples/src/main/java/com/woorea/openstack/examples/network/QuantumNetworkCreate.java new file mode 100644 index 000000000..7f4dff08c --- /dev/null +++ b/openstack-examples/src/main/java/com/woorea/openstack/examples/network/QuantumNetworkCreate.java @@ -0,0 +1,108 @@ +package com.woorea.openstack.examples.network; + +import java.util.ArrayList; +import java.util.List; +import java.util.Scanner; + +import com.woorea.openstack.keystone.utils.KeystoneUtils; + +import com.woorea.openstack.base.client.OpenStackSimpleTokenProvider; +import com.woorea.openstack.examples.ExamplesConfiguration; +import com.woorea.openstack.keystone.Keystone; +import com.woorea.openstack.keystone.model.Access; +import com.woorea.openstack.keystone.model.Tenant; +import com.woorea.openstack.keystone.model.Tenants; +import com.woorea.openstack.keystone.model.authentication.TokenAuthentication; +import com.woorea.openstack.keystone.model.authentication.UsernamePassword; +import com.woorea.openstack.quantum.Quantum; +import com.woorea.openstack.quantum.api.NetworksResource; +import com.woorea.openstack.quantum.api.NetworksResource.Create; +import com.woorea.openstack.quantum.model.Network; +import com.woorea.openstack.quantum.model.NetworkForCreate; +import com.woorea.openstack.quantum.model.Networks; +import com.woorea.openstack.quantum.model.Port; +import com.woorea.openstack.quantum.model.PortForCreate; +import com.woorea.openstack.quantum.model.Router; +import com.woorea.openstack.quantum.model.RouterForAddInterface; +import com.woorea.openstack.quantum.model.RouterForCreate; +import com.woorea.openstack.quantum.model.Subnet; +import com.woorea.openstack.quantum.model.SubnetForCreate; +import com.woorea.openstack.quantum.model.Subnets; + +public class QuantumNetworkCreate { + + /** + * @param args + */ + public static void main(String[] args) { + Keystone keystone = new Keystone( + ExamplesConfiguration.KEYSTONE_AUTH_URL); + // access with unscoped token + Access access = keystone + .tokens() + .authenticate( + new UsernamePassword( + ExamplesConfiguration.KEYSTONE_USERNAME, + ExamplesConfiguration.KEYSTONE_PASSWORD)) + .execute(); + // use the token in the following requests + keystone.setTokenProvider(new OpenStackSimpleTokenProvider(access + .getToken().getId())); + keystone.token(access.getToken().getId()); + Tenants tenants = keystone.tenants().list().execute(); + // try to exchange token using the first tenant + + if (tenants.getList().size() > 0) { + // access with tenant + Network network = new Network(); + access = keystone + .tokens() + .authenticate( + new TokenAuthentication(access.getToken().getId())) + .withTenantId("tenantId").execute(); + Quantum quantum = new Quantum(KeystoneUtils.findEndpointURL( + access.getServiceCatalog(), "network", null, "public")); + quantum.setTokenProvider(new OpenStackSimpleTokenProvider(access + .getToken().getId())); + NetworkForCreate netcreate = new NetworkForCreate(); + netcreate.setTenantId("tenantId"); + netcreate.setName("net2"); + netcreate.setAdminStateUp(true); + + network = quantum.networks().create(netcreate).execute(); + + // Creating Subnet + try { + Subnet sub = new Subnet(); + SubnetForCreate subnet = new SubnetForCreate(); + subnet.setCidr(""); + subnet.setName(""); + subnet.setNetworkId(network.getId()); + subnet.setIpVersion(4); + sub = quantum.subnets().create(subnet).execute(); + RouterForCreate routerForCreate = new RouterForCreate(); + routerForCreate.setName("routerName"); + routerForCreate.setTenantId("tenantId"); + Router router = quantum.routers().create(routerForCreate) + .execute(); + RouterForAddInterface routerForAdd = new RouterForAddInterface(); + routerForAdd.setSubnetId(sub.getId()); + routerForAdd.setRouterId(router.getId()); + quantum.routers().addInterface(routerForAdd).execute(); + + // System.out.println(sub); + } catch (Exception e) { + System.out.println(e.getMessage()); + } + + Networks networks = quantum.networks().list().execute(); + + for (Network network1 : networks) { + System.out.println(network1); + } + } else { + System.out.println("No tenants found!"); + } + + } +} From 2f5138dfc4bfe80b4094d1e553bd0f79662e8bf6 Mon Sep 17 00:00:00 2001 From: persistent-rCloud Date: Fri, 30 Aug 2013 13:54:36 +0530 Subject: [PATCH 031/144] Update Quantum.java RouterResource has been updated. --- .../java/com/woorea/openstack/quantum/Quantum.java | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/quantum-client/src/main/java/com/woorea/openstack/quantum/Quantum.java b/quantum-client/src/main/java/com/woorea/openstack/quantum/Quantum.java index 0b466a524..ec9c40f97 100644 --- a/quantum-client/src/main/java/com/woorea/openstack/quantum/Quantum.java +++ b/quantum-client/src/main/java/com/woorea/openstack/quantum/Quantum.java @@ -5,8 +5,10 @@ import com.woorea.openstack.base.client.OpenStackClientConnector; import com.woorea.openstack.quantum.api.NetworksResource; import com.woorea.openstack.quantum.api.PortsResource; +import com.woorea.openstack.quantum.api.RoutersResource; import com.woorea.openstack.quantum.api.SubnetsResource; + public class Quantum extends OpenStackClient { private final NetworksResource NETWORKS; @@ -14,12 +16,15 @@ public class Quantum extends OpenStackClient { private final PortsResource PORTS; private final SubnetsResource SUBNETS; + private final RoutersResource ROUTERS; public Quantum(String endpoint, OpenStackClientConnector connector) { super(endpoint, connector); NETWORKS = new NetworksResource(this); PORTS = new PortsResource(this); SUBNETS = new SubnetsResource(this); + ROUTERS=new RoutersResource(this); + } public Quantum(String endpoint) { @@ -37,5 +42,10 @@ public PortsResource ports() { public SubnetsResource subnets() { return SUBNETS; } + public RoutersResource routers() + { + return ROUTERS; + } + } From 4774c1cb15fe58606fe2722748c64f6c268969cf Mon Sep 17 00:00:00 2001 From: zhangyt26 Date: Fri, 30 Aug 2013 12:01:21 -0700 Subject: [PATCH 032/144] adding zone in model openstack api returns "zone" in response --- .../java/com/woorea/openstack/nova/model/Hosts.java | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/nova-model/src/main/java/com/woorea/openstack/nova/model/Hosts.java b/nova-model/src/main/java/com/woorea/openstack/nova/model/Hosts.java index 325a73580..1bac38e32 100644 --- a/nova-model/src/main/java/com/woorea/openstack/nova/model/Hosts.java +++ b/nova-model/src/main/java/com/woorea/openstack/nova/model/Hosts.java @@ -10,6 +10,8 @@ public class Hosts implements Iterable, Serializable { public static final class Host { + private String zone; + @JsonProperty("host_name") private String hostName; @@ -28,6 +30,14 @@ public String getHostName() { public String getService() { return service; } + + public String getZone() { + return zone; + } + + public void setZone(String zone) { + this.zone = zone; + } /* (non-Javadoc) * @see java.lang.Object#toString() From e3ef25c42bb9654deb5abfa4ae11fb5ca4f00a01 Mon Sep 17 00:00:00 2001 From: persistent-rCloud Date: Mon, 2 Sep 2013 12:26:10 +0530 Subject: [PATCH 033/144] Update VolumesExtension.java Added a functionality("UploadToImage") to upload a volume as an image to the image service. --- .../nova/api/extensions/VolumesExtension.java | 79 ++++++++++++------- 1 file changed, 51 insertions(+), 28 deletions(-) diff --git a/nova-client/src/main/java/com/woorea/openstack/nova/api/extensions/VolumesExtension.java b/nova-client/src/main/java/com/woorea/openstack/nova/api/extensions/VolumesExtension.java index 74a7345b7..de3557731 100644 --- a/nova-client/src/main/java/com/woorea/openstack/nova/api/extensions/VolumesExtension.java +++ b/nova-client/src/main/java/com/woorea/openstack/nova/api/extensions/VolumesExtension.java @@ -1,6 +1,5 @@ package com.woorea.openstack.nova.api.extensions; - import com.woorea.openstack.base.client.Entity; import com.woorea.openstack.base.client.HttpMethod; import com.woorea.openstack.base.client.OpenStackClient; @@ -8,76 +7,100 @@ import com.woorea.openstack.nova.model.Metadata; import com.woorea.openstack.nova.model.Volume; import com.woorea.openstack.nova.model.VolumeForCreate; +import com.woorea.openstack.nova.model.VolumeForImageCreate; import com.woorea.openstack.nova.model.Volumes; public class VolumesExtension { - + private final OpenStackClient CLIENT; - + public VolumesExtension(OpenStackClient client) { CLIENT = client; } - + public List list(boolean detail) { return new List(detail); } - - public Create create(VolumeForCreate volumeForCreate) { - return new Create(volumeForCreate); + + public Create create(VolumeForCreate volume) { + return new Create(volume); + } + + public UploadToImage uploadToImage(VolumeForImageCreate volumeForImage) { + return new UploadToImage(volumeForImage); } - + public Show show(String id) { return new Show(id); } - + public ShowMetadata showMetadata(String id) { return new ShowMetadata(id); } - public Delete delete(String id) { return new Delete(id); } public class List extends OpenStackRequest { - + public List(boolean detail) { - super(CLIENT, HttpMethod.GET, detail ? "/os-volumes/detail" : "/os-volumes", null, Volumes.class); + super(CLIENT, HttpMethod.GET, detail ? "/os-volumes/detail" + : "/os-volumes", null, Volumes.class); } } - + public class Create extends OpenStackRequest { - public Create(VolumeForCreate volumeForCreate) { - super(CLIENT, HttpMethod.POST, "/os-volumes", Entity.json(volumeForCreate), Volume.class); + // private Volume volume; + + public Create(VolumeForCreate volume) { + super(CLIENT, HttpMethod.POST, "/os-volumes", Entity.json(volume), + Volume.class); + // this.volume = volume; + } + + } + + // Upload volume to image service as image + + public class UploadToImage extends OpenStackRequest { + + public UploadToImage(VolumeForImageCreate volumeForImageCreate) { + super(CLIENT, HttpMethod.POST, new StringBuilder("/volumes/") + .append(volumeForImageCreate.getVolumeId() + "/action"), + Entity.json(volumeForImageCreate), Void.class); } - + } - + public class Show extends OpenStackRequest { - + public Show(String id) { - super(CLIENT, HttpMethod.GET, new StringBuilder("/os-volumes/").append(id).toString(), null, Volume.class); + super(CLIENT, HttpMethod.GET, new StringBuilder("/os-volumes/") + .append(id).toString(), null, Volume.class); } } - + public class ShowMetadata extends OpenStackRequest { - + public ShowMetadata(String id) { - super(CLIENT, HttpMethod.GET, new StringBuilder("/os-volumes/").append(id).append("/metadata").toString(), null, Metadata.class); + super(CLIENT, HttpMethod.GET, new StringBuilder("/os-volumes/") + .append(id).append("/metadata").toString(), null, + Metadata.class); } } - + public class Delete extends OpenStackRequest { - + public Delete(String id) { - super(CLIENT, HttpMethod.DELETE, new StringBuilder("/os-volumes/").append(id).toString(), null, Void.class); + super(CLIENT, HttpMethod.DELETE, new StringBuilder("/os-volumes/") + .append(id).toString(), null, Void.class); } - + } - -} +} From 4d662c667192aa0d125aaa646bc7394ba169587d Mon Sep 17 00:00:00 2001 From: persistent-rCloud Date: Mon, 2 Sep 2013 12:33:07 +0530 Subject: [PATCH 034/144] Create VolumeForImageCreate.java Java Class to create an input for sending json request --- .../nova/model/VolumeForImageCreate.java | 71 +++++++++++++++++++ 1 file changed, 71 insertions(+) create mode 100644 nova-model/src/main/java/com/woorea/openstack/nova/model/VolumeForImageCreate.java diff --git a/nova-model/src/main/java/com/woorea/openstack/nova/model/VolumeForImageCreate.java b/nova-model/src/main/java/com/woorea/openstack/nova/model/VolumeForImageCreate.java new file mode 100644 index 000000000..994d49a4d --- /dev/null +++ b/nova-model/src/main/java/com/woorea/openstack/nova/model/VolumeForImageCreate.java @@ -0,0 +1,71 @@ +package com.woorea.openstack.nova.model; + +import java.io.Serializable; + +import org.codehaus.jackson.annotate.JsonProperty; +import org.codehaus.jackson.map.annotate.JsonRootName; + +@JsonRootName("os-volume_upload_image") +public class VolumeForImageCreate implements Serializable { + String volumeId; + String tenantId; + + public String getTenantId() { + return tenantId; + } + + public void setTenantId(String tenantId) { + this.tenantId = tenantId; + } + + @JsonProperty("force") + private Boolean force; + + public Boolean getForce() { + return force; + } + + public void setForce(Boolean force) { + this.force = force; + } + + @JsonProperty("container_format") + String container_format; + @JsonProperty("disk_format") + String disk_format; + @JsonProperty("image_name") + String image_name; + + public String getVolumeId() { + return volumeId; + } + + public void setVolumeId(String volumeId) { + this.volumeId = volumeId; + } + + public String getContainer_format() { + return container_format; + } + + public void setContainer_format(String container_format) { + this.container_format = container_format; + } + + public String getDisk_format() { + return disk_format; + } + + public void setDisk_format(String disk_format) { + this.disk_format = disk_format; + } + + public String getImage_name() { + return image_name; + } + + public void setImage_name(String image_name) { + this.image_name = image_name; + } + +} From 719c2f508ee2b4ffb4f94520b9c0e1cedd25f484 Mon Sep 17 00:00:00 2001 From: persistent-rCloud Date: Mon, 2 Sep 2013 12:45:21 +0530 Subject: [PATCH 035/144] Create ImageFromVolume.java Response for the uploadToImage functionality. --- .../openstack/nova/model/ImageFromVolume.java | 112 ++++++++++++++++++ 1 file changed, 112 insertions(+) create mode 100644 nova-model/src/main/java/com/woorea/openstack/nova/model/ImageFromVolume.java diff --git a/nova-model/src/main/java/com/woorea/openstack/nova/model/ImageFromVolume.java b/nova-model/src/main/java/com/woorea/openstack/nova/model/ImageFromVolume.java new file mode 100644 index 000000000..30e38d8c6 --- /dev/null +++ b/nova-model/src/main/java/com/woorea/openstack/nova/model/ImageFromVolume.java @@ -0,0 +1,112 @@ +package com.woorea.openstack.nova.model; + +import java.io.Serializable; + +import org.codehaus.jackson.annotate.JsonProperty; +import org.codehaus.jackson.map.annotate.JsonRootName; + +@JsonRootName("os-volume_upload_image") +public class ImageFromVolume implements Serializable { + + @JsonProperty("id") + String id; + @JsonProperty("updates_at") + String updates_at; + @JsonProperty("status") + String status; + @JsonProperty("display_description") + String display_description; + @JsonProperty("size") + String size; + @JsonProperty("volume_type") + String volume_type; + @JsonProperty("image_id") + String image_id; + @JsonProperty("container_format") + String container_format; + @JsonProperty("disk_format") + String disk_format; + @JsonProperty("image_name") + String image_name; + + public String getId() { + return id; + } + + public void setId(String id) { + this.id = id; + } + + public String getUpdates_at() { + return updates_at; + } + + public void setUpdates_at(String updates_at) { + this.updates_at = updates_at; + } + + public String getStatus() { + return status; + } + + public void setStatus(String status) { + this.status = status; + } + + public String getDisplay_description() { + return display_description; + } + + public void setDisplay_description(String display_description) { + this.display_description = display_description; + } + + public String getSize() { + return size; + } + + public void setSize(String size) { + this.size = size; + } + + public String getVolume_type() { + return volume_type; + } + + public void setVolume_type(String volume_type) { + this.volume_type = volume_type; + } + + public String getImage_id() { + return image_id; + } + + public void setImage_id(String image_id) { + this.image_id = image_id; + } + + public String getContainer_format() { + return container_format; + } + + public void setContainer_format(String container_format) { + this.container_format = container_format; + } + + public String getDisk_format() { + return disk_format; + } + + public void setDisk_format(String disk_format) { + this.disk_format = disk_format; + } + + public String getImage_name() { + return image_name; + } + + public void setImage_name(String image_name) { + this.image_name = image_name; + } + +} From 9502fc5a5bad27e57eae902c9358a7e0c05463ac Mon Sep 17 00:00:00 2001 From: persistent-rCloud Date: Mon, 2 Sep 2013 13:08:06 +0530 Subject: [PATCH 036/144] Update RoutersResource.java Added functionality to detach router interface. --- .../openstack/quantum/api/RoutersResource.java | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/quantum-client/src/main/java/com/woorea/openstack/quantum/api/RoutersResource.java b/quantum-client/src/main/java/com/woorea/openstack/quantum/api/RoutersResource.java index 285a46c6b..bcd646d09 100644 --- a/quantum-client/src/main/java/com/woorea/openstack/quantum/api/RoutersResource.java +++ b/quantum-client/src/main/java/com/woorea/openstack/quantum/api/RoutersResource.java @@ -82,5 +82,21 @@ public Attach(RouterForAddInterface interfaceToAdd){ } } + public Detach deleteInterface(RouterForAddInterface interfaceRouter) { + return new Detach(interfaceRouter); + } + + public class Detach extends OpenStackRequest { + + public Detach(RouterForAddInterface interfaceToAdd) { + super(CLIENT, HttpMethod.PUT, buildPath("routers/", + interfaceToAdd.getRouterId(), "/remove_router_interface"), + Entity.json(interfaceToAdd), RouterInterface.class); + } + + } + + + } From f98b4c916bfadd2980a0daebad16089850224432 Mon Sep 17 00:00:00 2001 From: Frederic Dang Tran Date: Tue, 3 Sep 2013 18:28:51 +0200 Subject: [PATCH 037/144] Fix name of networkId field so that it matches its getter/setter --- .../com/woorea/openstack/quantum/model/SubnetForCreate.java | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/quantum-model/src/main/java/com/woorea/openstack/quantum/model/SubnetForCreate.java b/quantum-model/src/main/java/com/woorea/openstack/quantum/model/SubnetForCreate.java index 4182d7463..1eb42de11 100644 --- a/quantum-model/src/main/java/com/woorea/openstack/quantum/model/SubnetForCreate.java +++ b/quantum-model/src/main/java/com/woorea/openstack/quantum/model/SubnetForCreate.java @@ -12,7 +12,7 @@ public class SubnetForCreate implements Serializable{ private String name; @JsonProperty("network_id") - private String networkid; + private String networkId; @JsonProperty("ip_version") private int ipVersion; private String cidr; @@ -36,14 +36,14 @@ public String getName() { * @return the id */ public String getNetworkId() { - return networkid; + return networkId; } /** * @param id the id to set */ public void setNetworkId(String id) { - this.networkid = id; + this.networkId = id; } From 3505f2a0642971b7ec61974bcb39f73ba5161737 Mon Sep 17 00:00:00 2001 From: venkat-cliqr Date: Wed, 11 Sep 2013 14:32:15 -0700 Subject: [PATCH 038/144] Changed ids for Security groups to Strings Added JsonProperty for max and min properties for ServerForCreate --- .../extensions/SecurityGroupsExtension.java | 75 ++++++++++++++++++- .../openstack/nova/model/SecurityGroup.java | 12 +-- .../model/SecurityGroupRuleForCreate.java | 66 ++++++++++++++-- .../openstack/nova/model/ServerForCreate.java | 2 + 4 files changed, 138 insertions(+), 17 deletions(-) diff --git a/nova-client/src/main/java/com/woorea/openstack/nova/api/extensions/SecurityGroupsExtension.java b/nova-client/src/main/java/com/woorea/openstack/nova/api/extensions/SecurityGroupsExtension.java index 37117db33..5a80a10aa 100644 --- a/nova-client/src/main/java/com/woorea/openstack/nova/api/extensions/SecurityGroupsExtension.java +++ b/nova-client/src/main/java/com/woorea/openstack/nova/api/extensions/SecurityGroupsExtension.java @@ -39,17 +39,32 @@ public Create(SecurityGroupForCreate securityGroupForCreate) { public class Show extends OpenStackRequest { + /** + * @deprecated + * @param id + */ public Show(Integer id) { super(CLIENT, HttpMethod.GET, new StringBuilder("/os-security-groups/").append(id).toString(), null, SecurityGroup.class); } + public Show(String id) { + super(CLIENT, HttpMethod.GET, new StringBuilder("/os-security-groups/").append(id).toString(), null, SecurityGroup.class); + } } public class Delete extends OpenStackRequest { + /** + * + * @param id + * @deprecated + */ public Delete(Integer id) { super(CLIENT, HttpMethod.DELETE, new StringBuilder("/os-security-groups/").append(String.valueOf(id)).toString(), null, Void.class); } + public Delete(String id) { + super(CLIENT, HttpMethod.DELETE, new StringBuilder("/os-security-groups/").append(id).toString(), null, Void.class); + } } @@ -65,9 +80,18 @@ public CreateRule(SecurityGroupRuleForCreate securityGroupRuleForCreate) { public class DeleteRule extends OpenStackRequest { + /** + * + * @param id + * @deprecated + */ public DeleteRule(Integer id) { super(CLIENT, HttpMethod.DELETE, new StringBuilder("/os-security-group-rules/").append(String.valueOf(id)).toString(), null, Void.class); } + + public DeleteRule(String id) { + super(CLIENT, HttpMethod.DELETE, new StringBuilder("/os-security-group-rules/").append(String.valueOf(id)).toString(), null, Void.class); + } } public List listSecurityGroups() { @@ -84,13 +108,30 @@ public Create createSecurityGroup(String name) { } public Show showSecurityGroup(Integer id) { + return new Show(String.valueOf(id)); + } + + public Show showSecurityGroup(String id) { return new Show(id); } - public Delete deleteSecurityGroup(Integer id) { + return new Delete(String.valueOf(id)); + } + + public Delete deleteSecurityGroup(String id) { return new Delete(id); } + /** + * + * @param parentSecurityGroupId + * @param ipProtocol + * @param fromPort + * @param toPort + * @param cidr + * @return + * @deprecated Use {@link #createSecurityGroupRule(String, String, Integer, Integer, String)} + */ public CreateRule createSecurityGroupRule( Integer parentSecurityGroupId, String ipProtocol, Integer fromPort, Integer toPort, String cidr) { @@ -98,7 +139,16 @@ public CreateRule createSecurityGroupRule( parentSecurityGroupId, ipProtocol, fromPort, toPort, cidr); return new CreateRule(securityGroupRuleForCreate); } - + /** + * + * @param parentSecurityGroupId + * @param ipProtocol + * @param fromPort + * @param toPort + * @param cidr + * @return + * @deprecated Use {@link #createSecurityGroupRule(String, String, String, Integer, Integer)} + */ public CreateRule createSecurityGroupRule( Integer parentSecurityGroupId, String ipProtocol, Integer fromPort, Integer toPort, Integer sourceGroupId) { @@ -107,9 +157,28 @@ public CreateRule createSecurityGroupRule( sourceGroupId); return new CreateRule(securityGroupRuleForCreate); } + + public CreateRule createSecurityGroupRule( + String parentSecurityGroupId, String ipProtocol, Integer fromPort, + Integer toPort, String cidr) { + SecurityGroupRuleForCreate securityGroupRuleForCreate = new SecurityGroupRuleForCreate( + parentSecurityGroupId, ipProtocol, fromPort, toPort, cidr); + return new CreateRule(securityGroupRuleForCreate); + } - public DeleteRule deleteSecurityGroupRule(Integer id) { + public CreateRule createSecurityGroupRule( + String parentSecurityGroupId,String sourceGroupId,String ipProtocol, Integer fromPort, + Integer toPort) { + SecurityGroupRuleForCreate securityGroupRuleForCreate = new SecurityGroupRuleForCreate( + parentSecurityGroupId, sourceGroupId,ipProtocol, fromPort, toPort + ); + return new CreateRule(securityGroupRuleForCreate); + } + public DeleteRule deleteSecurityGroupRule(String id) { return new DeleteRule(id); } + public DeleteRule deleteSecurityGroupRule(Integer id) { + return new DeleteRule(String.valueOf(id)); + } } diff --git a/nova-model/src/main/java/com/woorea/openstack/nova/model/SecurityGroup.java b/nova-model/src/main/java/com/woorea/openstack/nova/model/SecurityGroup.java index b065e8e4d..1b8917b4c 100644 --- a/nova-model/src/main/java/com/woorea/openstack/nova/model/SecurityGroup.java +++ b/nova-model/src/main/java/com/woorea/openstack/nova/model/SecurityGroup.java @@ -49,12 +49,12 @@ public String toString() { } - private Integer id; + private String id; private String name; @JsonProperty("parent_group_id") - private Integer parentGroupId; + private String parentGroupId; @JsonProperty("from_port") private Integer fromPort; @@ -73,7 +73,7 @@ public String toString() { /** * @return the id */ - public Integer getId() { + public String getId() { return id; } @@ -87,7 +87,7 @@ public String getName() { /** * @return the parentGroupId */ - public Integer getParentGroupId() { + public String getParentGroupId() { return parentGroupId; } @@ -139,7 +139,7 @@ public String toString() { } - private Integer id; + private String id; private String name; @@ -155,7 +155,7 @@ public String toString() { /** * @return the id */ - public Integer getId() { + public String getId() { return id; } diff --git a/nova-model/src/main/java/com/woorea/openstack/nova/model/SecurityGroupRuleForCreate.java b/nova-model/src/main/java/com/woorea/openstack/nova/model/SecurityGroupRuleForCreate.java index e8bab735d..2f58da00c 100644 --- a/nova-model/src/main/java/com/woorea/openstack/nova/model/SecurityGroupRuleForCreate.java +++ b/nova-model/src/main/java/com/woorea/openstack/nova/model/SecurityGroupRuleForCreate.java @@ -11,7 +11,7 @@ public class SecurityGroupRuleForCreate implements Serializable { @JsonProperty("parent_group_id") - private Integer parentGroupId; + private String parentGroupId; @JsonProperty("ip_protocol") private String ipProtocol; @@ -26,15 +26,48 @@ public class SecurityGroupRuleForCreate implements Serializable { private String cidr; @JsonProperty("group_id") - private Integer groupId; + private String groupId; public SecurityGroupRuleForCreate() { } - - + /** + * + * @param parentSecurityGroupId + * @param ipProtocol + * @param fromPort + * @param toPort + * @param cidr + * @deprecated Ids in some installs have shown to use strings .Use {@link #SecurityGroupRuleForCreate(String, String, Integer, Integer, String)} + */ + @Deprecated public SecurityGroupRuleForCreate(Integer parentSecurityGroupId, String ipProtocol, Integer fromPort,Integer toPort, String cidr) { + this.parentGroupId = String.valueOf(parentSecurityGroupId); + this.ipProtocol = ipProtocol; + this.fromPort = fromPort; + this.toPort = toPort; + this.cidr = cidr; + } + /** + * + * @param parentSecurityGroupId + * @param ipProtocol + * @param fromPort + * @param toPort + * @param cidr + * @deprecated Ids in some installs have shown to use strings .Use {@link #SecurityGroupRuleForCreate(String, String, String, Integer, Integer)} + */ + @Deprecated + public SecurityGroupRuleForCreate(Integer parentGroupId, String ipProtocol, Integer fromPort,Integer toPort, Integer sourceGroupId) { + this.parentGroupId = String.valueOf(parentGroupId); + this.ipProtocol = ipProtocol; + this.fromPort = fromPort; + this.toPort = toPort; + this.groupId = String.valueOf(sourceGroupId); + } + + public SecurityGroupRuleForCreate(String parentSecurityGroupId, String ipProtocol, Integer fromPort,Integer toPort, String cidr) { this.parentGroupId = parentSecurityGroupId; this.ipProtocol = ipProtocol; this.fromPort = fromPort; @@ -42,7 +75,7 @@ public SecurityGroupRuleForCreate(Integer parentSecurityGroupId, String ipProtoc this.cidr = cidr; } - public SecurityGroupRuleForCreate(Integer parentGroupId, String ipProtocol, Integer fromPort,Integer toPort, Integer sourceGroupId) { + public SecurityGroupRuleForCreate(String parentGroupId, String sourceGroupId, String ipProtocol, Integer fromPort,Integer toPort) { this.parentGroupId = parentGroupId; this.ipProtocol = ipProtocol; this.fromPort = fromPort; @@ -53,14 +86,23 @@ public SecurityGroupRuleForCreate(Integer parentGroupId, String ipProtocol, Inte /** * @return the parentGroupId */ - public Integer getParentGroupId() { + public String getParentGroupId() { return parentGroupId; } - + + /** * @param parentGroupId the parentGroupId to set + * @deprecated Use {@link #setParentGroupId(String)} */ public void setParentGroupId(Integer parentGroupId) { + this.parentGroupId = String.valueOf(parentGroupId); + } + + /** + * @param parentGroupId the parentGroupId to set + */ + public void setParentGroupId(String parentGroupId) { this.parentGroupId = parentGroupId; } @@ -123,14 +165,22 @@ public void setCidr(String cidr) { /** * @return the groupId */ - public Integer getGroupId() { + public String getGroupId() { return groupId; } /** * @param groupId the groupId to set + * @deprecated Use {@link #setGroupId(String)} */ public void setGroupId(Integer groupId) { + this.groupId = String.valueOf(groupId); + } + + /** + * @param groupId the groupId to set + */ + public void setGroupId(String groupId) { this.groupId = groupId; } diff --git a/nova-model/src/main/java/com/woorea/openstack/nova/model/ServerForCreate.java b/nova-model/src/main/java/com/woorea/openstack/nova/model/ServerForCreate.java index e2f69aab5..0e727afc2 100644 --- a/nova-model/src/main/java/com/woorea/openstack/nova/model/ServerForCreate.java +++ b/nova-model/src/main/java/com/woorea/openstack/nova/model/ServerForCreate.java @@ -112,8 +112,10 @@ public void setPort(String port) { private String accessIPv6; + @JsonProperty("min_count") private Integer min; + @JsonProperty("max_count") private Integer max; private String diskConfig; From e2cb13990866907cde434b8e3d981188a029f6a6 Mon Sep 17 00:00:00 2001 From: Nicolas Rivierre Date: Fri, 13 Sep 2013 11:55:07 +0200 Subject: [PATCH 039/144] Upgrade jackson library from 1.9.4 to 1.9.13 --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 7be14483a..01e9d50e6 100644 --- a/pom.xml +++ b/pom.xml @@ -84,7 +84,7 @@ org.codehaus.jackson jackson-mapper-asl - 1.9.4 + 1.9.13 From ba542b5f52a815293d57831af0140fb1918f09ca Mon Sep 17 00:00:00 2001 From: venkat-cliqr Date: Wed, 18 Sep 2013 09:19:17 -0700 Subject: [PATCH 040/144] Added API to create/update metadata on a running server --- .../openstack/nova/api/ServersResource.java | 24 +++++++++++++++++++ .../woorea/openstack/nova/model/Metadata.java | 10 ++++++++ 2 files changed, 34 insertions(+) diff --git a/nova-client/src/main/java/com/woorea/openstack/nova/api/ServersResource.java b/nova-client/src/main/java/com/woorea/openstack/nova/api/ServersResource.java index 110ae68eb..a553401a5 100644 --- a/nova-client/src/main/java/com/woorea/openstack/nova/api/ServersResource.java +++ b/nova-client/src/main/java/com/woorea/openstack/nova/api/ServersResource.java @@ -58,6 +58,14 @@ public Show show(String id) { public ShowMetadata showMetadata(String id) { return new ShowMetadata(id); } + + public CreateOrUpdateMetadata createOrUpdateMetadata(String id,Metadata metadata) { + return new CreateOrUpdateMetadata(id,metadata); + } + + public ReplaceMetadata replaceMetadata(String id,Metadata metadata) { + return new ReplaceMetadata(id,metadata); + } public Delete delete(String id) { @@ -98,7 +106,23 @@ public ShowMetadata(String id) { } } + + public class CreateOrUpdateMetadata extends OpenStackRequest { + public CreateOrUpdateMetadata(String id,Metadata metadata) { + super(CLIENT, HttpMethod.POST, new StringBuilder("/servers/").append(id).append("/metadata"), Entity.json(metadata), Metadata.class); + } + + } + public class ReplaceMetadata extends OpenStackRequest { + + public ReplaceMetadata(String id,Metadata metadata) { + super(CLIENT, HttpMethod.PUT, new StringBuilder("/servers/").append(id).append("/metadata"), Entity.json(metadata), Metadata.class); + } + + } + + public class Delete extends OpenStackRequest { public Delete(String id) { diff --git a/nova-model/src/main/java/com/woorea/openstack/nova/model/Metadata.java b/nova-model/src/main/java/com/woorea/openstack/nova/model/Metadata.java index dda327b3a..a3dbffb77 100644 --- a/nova-model/src/main/java/com/woorea/openstack/nova/model/Metadata.java +++ b/nova-model/src/main/java/com/woorea/openstack/nova/model/Metadata.java @@ -12,5 +12,15 @@ public class Metadata { public Map getMetadata() { return metadata; } + + /** + * Set the metadata + * @param metadata + */ + public void setMetadata(Map metadata) { + this.metadata = metadata; + } + + } From c4f9cbefd618be11562e41a076d3a3501f7db0fe Mon Sep 17 00:00:00 2001 From: Federico Simoncelli Date: Fri, 13 Sep 2013 16:02:25 +0200 Subject: [PATCH 041/144] glance: allow to close the ImageDownload stream Signed-off-by: Federico Simoncelli --- .../connector/RESTEasyConnector.java | 2 +- .../connector/RESTEasyInputStream.java | 35 +++++++++++++++++++ .../openstack/connector/RESTEasyResponse.java | 8 +++-- 3 files changed, 42 insertions(+), 3 deletions(-) create mode 100644 openstack-client-connectors/resteasy-connector/src/main/java/com/woorea/openstack/connector/RESTEasyInputStream.java diff --git a/openstack-client-connectors/resteasy-connector/src/main/java/com/woorea/openstack/connector/RESTEasyConnector.java b/openstack-client-connectors/resteasy-connector/src/main/java/com/woorea/openstack/connector/RESTEasyConnector.java index 25f146e15..cc6ba824b 100644 --- a/openstack-client-connectors/resteasy-connector/src/main/java/com/woorea/openstack/connector/RESTEasyConnector.java +++ b/openstack-client-connectors/resteasy-connector/src/main/java/com/woorea/openstack/connector/RESTEasyConnector.java @@ -108,7 +108,7 @@ public OpenStackResponse request(OpenStackRequest request) { if (response.getStatus() == HttpStatus.SC_OK || response.getStatus() == HttpStatus.SC_CREATED || response.getStatus() == HttpStatus.SC_NO_CONTENT) { - return new RESTEasyResponse(response); + return new RESTEasyResponse(client, response); } response.releaseConnection(); diff --git a/openstack-client-connectors/resteasy-connector/src/main/java/com/woorea/openstack/connector/RESTEasyInputStream.java b/openstack-client-connectors/resteasy-connector/src/main/java/com/woorea/openstack/connector/RESTEasyInputStream.java new file mode 100644 index 000000000..38fdd4917 --- /dev/null +++ b/openstack-client-connectors/resteasy-connector/src/main/java/com/woorea/openstack/connector/RESTEasyInputStream.java @@ -0,0 +1,35 @@ +package com.woorea.openstack.connector; + +import java.io.FilterInputStream; +import java.io.IOException; +import java.io.InputStream; +import java.net.SocketException; + +import org.jboss.resteasy.client.ClientExecutor; + + +public class RESTEasyInputStream extends FilterInputStream { + + protected ClientExecutor clientExecutor; + + public RESTEasyInputStream(InputStream inputStream, ClientExecutor clientExecutor) { + super(inputStream); + this.clientExecutor = clientExecutor; + } + + @Override + public void close() throws IOException { + try { + clientExecutor.close(); + } catch (Exception e) { + // Silently skip errors in the socket close errors + } + + try { + super.close(); + } catch (SocketException e) { + // We expect this to fail because the socket is closed + } + } + +} diff --git a/openstack-client-connectors/resteasy-connector/src/main/java/com/woorea/openstack/connector/RESTEasyResponse.java b/openstack-client-connectors/resteasy-connector/src/main/java/com/woorea/openstack/connector/RESTEasyResponse.java index e6907d2c3..269ae13c9 100644 --- a/openstack-client-connectors/resteasy-connector/src/main/java/com/woorea/openstack/connector/RESTEasyResponse.java +++ b/openstack-client-connectors/resteasy-connector/src/main/java/com/woorea/openstack/connector/RESTEasyResponse.java @@ -1,5 +1,6 @@ package com.woorea.openstack.connector; +import org.jboss.resteasy.client.ClientRequest; import org.jboss.resteasy.client.ClientResponse; import com.woorea.openstack.base.client.OpenStackResponse; @@ -10,9 +11,12 @@ public class RESTEasyResponse implements OpenStackResponse { + private ClientRequest client; + private ClientResponse response; - public RESTEasyResponse(ClientResponse response) { + public RESTEasyResponse(ClientRequest client, ClientResponse response) { + this.client = client; this.response = response; } @@ -23,7 +27,7 @@ public T getEntity(Class returnType) { @Override public InputStream getInputStream() { - return (InputStream) response.getEntity(InputStream.class); + return new RESTEasyInputStream((InputStream) response.getEntity(InputStream.class), client.getExecutor()); } @Override From d3072afe959e5cf2b97f2852849e78e68051ce84 Mon Sep 17 00:00:00 2001 From: jxiaobin Date: Tue, 24 Sep 2013 20:04:29 +0800 Subject: [PATCH 042/144] make Limits.AbsoluteLimit visible --- .../src/main/java/com/woorea/openstack/nova/model/Limits.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nova-model/src/main/java/com/woorea/openstack/nova/model/Limits.java b/nova-model/src/main/java/com/woorea/openstack/nova/model/Limits.java index 45c6a119d..1d5f9c949 100644 --- a/nova-model/src/main/java/com/woorea/openstack/nova/model/Limits.java +++ b/nova-model/src/main/java/com/woorea/openstack/nova/model/Limits.java @@ -120,7 +120,7 @@ public String toString() { } - private static final class AbsoluteLimit { + public static final class AbsoluteLimit { private Integer maxServerMeta; From 0c9e78e2eeb880a3efd13f8e903ea210a7ee03d9 Mon Sep 17 00:00:00 2001 From: Masanori Itoh Date: Sun, 6 Oct 2013 14:58:56 +0900 Subject: [PATCH 043/144] Add HostsExtension to class Nova(OpenStackClient), and enable "/os-hosts" operations. --- .../src/main/java/com/woorea/openstack/nova/Nova.java | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/nova-client/src/main/java/com/woorea/openstack/nova/Nova.java b/nova-client/src/main/java/com/woorea/openstack/nova/Nova.java index 2dde13008..f81de7d44 100644 --- a/nova-client/src/main/java/com/woorea/openstack/nova/Nova.java +++ b/nova-client/src/main/java/com/woorea/openstack/nova/Nova.java @@ -14,6 +14,7 @@ import com.woorea.openstack.nova.api.extensions.SecurityGroupsExtension; import com.woorea.openstack.nova.api.extensions.SnapshotsExtension; import com.woorea.openstack.nova.api.extensions.VolumesExtension; +import com.woorea.openstack.nova.api.extensions.HostsExtension; public class Nova extends OpenStackClient { @@ -39,6 +40,8 @@ public class Nova extends OpenStackClient { private final QuotaSetsResource QUOTA_SETS; + private final HostsExtension HOSTS; + public Nova(String endpoint, OpenStackClientConnector connector) { super(endpoint, connector); EXTENSIONS = new ExtensionsResource(this); @@ -52,6 +55,7 @@ public Nova(String endpoint, OpenStackClientConnector connector) { VOLUMES = new VolumesExtension(this); AGGREGATES = new AggregatesExtension(this); QUOTA_SETS = new QuotaSetsResource(this); + HOSTS = new HostsExtension(this); } public Nova(String endpoint) { @@ -101,4 +105,9 @@ public AggregatesExtension aggregates() { public QuotaSetsResource quotaSets() { return QUOTA_SETS; } + + public HostsExtension hosts() { + return HOSTS; + } + } From f5419b8a14603a01ce77276864c7e4493709baec Mon Sep 17 00:00:00 2001 From: Johannes Hiemer Date: Wed, 9 Oct 2013 11:09:42 +0200 Subject: [PATCH 044/144] Patch for wrong type of Snapshot Creation. Replaced Snapshot.java, which has only getters, with SnapshotForCreate, which has getters and setters. --- .../nova/api/extensions/SnapshotsExtension.java | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/nova-client/src/main/java/com/woorea/openstack/nova/api/extensions/SnapshotsExtension.java b/nova-client/src/main/java/com/woorea/openstack/nova/api/extensions/SnapshotsExtension.java index 0b72f6ad0..62c2542b6 100644 --- a/nova-client/src/main/java/com/woorea/openstack/nova/api/extensions/SnapshotsExtension.java +++ b/nova-client/src/main/java/com/woorea/openstack/nova/api/extensions/SnapshotsExtension.java @@ -7,6 +7,7 @@ import com.woorea.openstack.base.client.OpenStackRequest; import com.woorea.openstack.nova.model.Metadata; import com.woorea.openstack.nova.model.Snapshot; +import com.woorea.openstack.nova.model.SnapshotForCreate; import com.woorea.openstack.nova.model.Snapshots; public class SnapshotsExtension { @@ -21,8 +22,8 @@ public List list(boolean detail) { return new List(detail); } - public Create create(Snapshot snapshot) { - return new Create(snapshot); + public Create create(SnapshotForCreate snapshotForCreate) { + return new Create(snapshotForCreate); } public Show show(String id) { @@ -46,13 +47,13 @@ public List(boolean detail) { } - public class Create extends OpenStackRequest { + public class Create extends OpenStackRequest { - private Snapshot snapshot; + private SnapshotForCreate snapshotForCreate; - public Create(Snapshot snapshot) { - super(CLIENT, HttpMethod.POST, "/os-snapshots", Entity.json(snapshot), Snapshot.class); - this.snapshot = snapshot; + public Create(SnapshotForCreate snapshotForCreate) { + super(CLIENT, HttpMethod.POST, "/os-snapshots", Entity.json(snapshotForCreate), SnapshotForCreate.class); + this.snapshotForCreate = snapshotForCreate; } } From f5a6ba39ab9502e45d112a21bb411710fd36b0d5 Mon Sep 17 00:00:00 2001 From: Jeff Dutton Date: Thu, 24 Oct 2013 10:17:23 -0400 Subject: [PATCH 045/144] Disable FAIL_ON_UNKNOWN_PROPERTIES for Jersey2 --- .../src/main/java/com/woorea/openstack/connector/OpenStack.java | 2 ++ 1 file changed, 2 insertions(+) diff --git a/openstack-client-connectors/jersey2-connector/src/main/java/com/woorea/openstack/connector/OpenStack.java b/openstack-client-connectors/jersey2-connector/src/main/java/com/woorea/openstack/connector/OpenStack.java index 54d8b5d2f..e683fb676 100644 --- a/openstack-client-connectors/jersey2-connector/src/main/java/com/woorea/openstack/connector/OpenStack.java +++ b/openstack-client-connectors/jersey2-connector/src/main/java/com/woorea/openstack/connector/OpenStack.java @@ -73,6 +73,7 @@ private static void initialize() { DEFAULT_MAPPER.setSerializationInclusion(Inclusion.NON_NULL); DEFAULT_MAPPER.enable(SerializationConfig.Feature.INDENT_OUTPUT); DEFAULT_MAPPER.enable(DeserializationConfig.Feature.ACCEPT_SINGLE_VALUE_AS_ARRAY); + DEFAULT_MAPPER.disable(DeserializationConfig.Feature.FAIL_ON_UNKNOWN_PROPERTIES); WRAPPED_MAPPER = new ObjectMapper(); @@ -81,6 +82,7 @@ private static void initialize() { WRAPPED_MAPPER.enable(SerializationConfig.Feature.WRAP_ROOT_VALUE); WRAPPED_MAPPER.enable(DeserializationConfig.Feature.UNWRAP_ROOT_VALUE); WRAPPED_MAPPER.enable(DeserializationConfig.Feature.ACCEPT_SINGLE_VALUE_AS_ARRAY); + WRAPPED_MAPPER.disable(DeserializationConfig.Feature.FAIL_ON_UNKNOWN_PROPERTIES); CLIENT.register(new JacksonFeature()).register(new ContextResolver() { From a072939cd8d557029ff9be1843564a50577375d3 Mon Sep 17 00:00:00 2001 From: Andrew Seales Date: Fri, 25 Oct 2013 11:58:49 +0100 Subject: [PATCH 046/144] Fix warnings in method declarations that use an unparameterized OpenStackRequest --- .../ceilometer/v2/api/ResourcesResource.java | 3 +- .../openstack/nova/api/ServersResource.java | 32 +++++++++---------- .../api/extensions/AggregatesExtension.java | 3 +- .../openstack/swift/api/AccountResource.java | 2 +- 4 files changed, 19 insertions(+), 21 deletions(-) diff --git a/ceilometer-client/src/main/java/com/woorea/openstack/ceilometer/v2/api/ResourcesResource.java b/ceilometer-client/src/main/java/com/woorea/openstack/ceilometer/v2/api/ResourcesResource.java index 405f04fb9..900168719 100644 --- a/ceilometer-client/src/main/java/com/woorea/openstack/ceilometer/v2/api/ResourcesResource.java +++ b/ceilometer-client/src/main/java/com/woorea/openstack/ceilometer/v2/api/ResourcesResource.java @@ -2,7 +2,6 @@ import java.util.List; - import com.woorea.openstack.base.client.OpenStackClient; import com.woorea.openstack.base.client.OpenStackRequest; import com.woorea.openstack.ceilometer.QueriableCeilometerCommand; @@ -25,7 +24,7 @@ public ResourceList() { } - public class ResourceShow extends OpenStackRequest { + public class ResourceShow extends OpenStackRequest { private String id; diff --git a/nova-client/src/main/java/com/woorea/openstack/nova/api/ServersResource.java b/nova-client/src/main/java/com/woorea/openstack/nova/api/ServersResource.java index 110ae68eb..2890e9b99 100644 --- a/nova-client/src/main/java/com/woorea/openstack/nova/api/ServersResource.java +++ b/nova-client/src/main/java/com/woorea/openstack/nova/api/ServersResource.java @@ -115,7 +115,7 @@ public ShowServerAddresses(String id) { } - public class UpdateServer extends OpenStackRequest { + public class UpdateServer extends OpenStackRequest { private Server server; @@ -200,7 +200,7 @@ public CreateImageAction(String id) { } - public class StartServer extends OpenStackRequest { + public class StartServer extends OpenStackRequest { private Start action; @@ -212,7 +212,7 @@ public StartServer(String id) { } - public class StopServer extends OpenStackRequest { + public class StopServer extends OpenStackRequest { private Stop action; @@ -232,7 +232,7 @@ public StopServer stop(String id) { return new StopServer(id); } - public class GetVncConsoleServer extends OpenStackRequest { + public class GetVncConsoleServer extends OpenStackRequest { private GetVncConsole action; @@ -249,7 +249,7 @@ public GetVncConsoleServer getVncConsole(String id, String type) { return new GetVncConsoleServer(id, action); } - public class GetConsoleOutputServer extends OpenStackRequest { + public class GetConsoleOutputServer extends OpenStackRequest { public GetConsoleOutputServer(String id, GetConsoleOutput action) { super(CLIENT, HttpMethod.POST, new StringBuilder("/servers/").append(id).append("/action"), Entity.json(action), ConsoleOutput.class); @@ -262,7 +262,7 @@ public GetConsoleOutputServer getConsoleOutput(String id, int length) { return new GetConsoleOutputServer(id, action); } - public class PauseServer extends OpenStackRequest { + public class PauseServer extends OpenStackRequest { public PauseServer(String id) { super(CLIENT, HttpMethod.POST, new StringBuilder("/servers/").append(id).append("/action"), Entity.json(new Pause()), Void.class); @@ -270,7 +270,7 @@ public PauseServer(String id) { } - public class UnpauseServer extends OpenStackRequest { + public class UnpauseServer extends OpenStackRequest { public UnpauseServer(String id) { super(CLIENT, HttpMethod.POST, new StringBuilder("/servers/").append(id).append("/action"), Entity.json(new Unpause()), Void.class); @@ -279,7 +279,7 @@ public UnpauseServer(String id) { } - public class LockServer extends OpenStackRequest { + public class LockServer extends OpenStackRequest { private Lock action; @@ -291,7 +291,7 @@ public LockServer(String id) { } - public class UnlockServer extends OpenStackRequest { + public class UnlockServer extends OpenStackRequest { private Unlock action; @@ -303,7 +303,7 @@ public UnlockServer(String id) { } - public class SuspendServer extends OpenStackRequest { + public class SuspendServer extends OpenStackRequest { public SuspendServer(String id) { super(CLIENT, HttpMethod.POST, new StringBuilder("/servers/").append(id).append("/action"), Entity.json(new Suspend()), Void.class); @@ -311,7 +311,7 @@ public SuspendServer(String id) { } - public class ResumeServer extends OpenStackRequest { + public class ResumeServer extends OpenStackRequest { public ResumeServer(String id) { super(CLIENT, HttpMethod.POST, new StringBuilder("/servers/").append(id).append("/action"), Entity.json(new Resume()), Void.class); @@ -319,7 +319,7 @@ public ResumeServer(String id) { } - public class CreateBackupServer extends OpenStackRequest { + public class CreateBackupServer extends OpenStackRequest { public CreateBackupServer(String id, CreateBackup action) { super(CLIENT, HttpMethod.POST, new StringBuilder("/servers/").append(id).append("/action"), Entity.json(action), Void.class); @@ -355,7 +355,7 @@ public CreateBackupServer createBackup(String serverId, CreateBackup action) { return new CreateBackupServer(serverId, action); } - public class RescueServer extends OpenStackRequest { + public class RescueServer extends OpenStackRequest { public RescueServer(String id, Rescue action) { super(CLIENT, HttpMethod.POST, new StringBuilder("/servers/").append(id).append("/action"), Entity.json(action), Void.class); @@ -363,7 +363,7 @@ public RescueServer(String id, Rescue action) { } - public class UnrescueServer extends OpenStackRequest { + public class UnrescueServer extends OpenStackRequest { public UnrescueServer(String id) { super(CLIENT, HttpMethod.POST, new StringBuilder("/servers/").append(id).append("/action"), Entity.json(new Unrescue()), Void.class); @@ -380,7 +380,7 @@ public UnrescueServer unrescue(String serverId) { return new UnrescueServer(serverId); } - public class AssociateFloatingIp extends OpenStackRequest { + public class AssociateFloatingIp extends OpenStackRequest { public AssociateFloatingIp(String id, com.woorea.openstack.nova.model.ServerAction.AssociateFloatingIp action) { super(CLIENT, HttpMethod.POST, new StringBuilder("/servers/").append(id).append("/action"), Entity.json(action), Void.class); @@ -388,7 +388,7 @@ public AssociateFloatingIp(String id, com.woorea.openstack.nova.model.ServerActi } - public class DisassociateFloatingIp extends OpenStackRequest { + public class DisassociateFloatingIp extends OpenStackRequest { public DisassociateFloatingIp(String id, com.woorea.openstack.nova.model.ServerAction.DisassociateFloatingIp action) { super(CLIENT, HttpMethod.POST, new StringBuilder("/servers/").append(id).append("/action"), Entity.json(action), Void.class); diff --git a/nova-client/src/main/java/com/woorea/openstack/nova/api/extensions/AggregatesExtension.java b/nova-client/src/main/java/com/woorea/openstack/nova/api/extensions/AggregatesExtension.java index fc6d6aaa0..376ff7cbd 100644 --- a/nova-client/src/main/java/com/woorea/openstack/nova/api/extensions/AggregatesExtension.java +++ b/nova-client/src/main/java/com/woorea/openstack/nova/api/extensions/AggregatesExtension.java @@ -2,7 +2,6 @@ import java.util.Map; - import com.woorea.openstack.base.client.HttpMethod; import com.woorea.openstack.base.client.OpenStackClient; import com.woorea.openstack.base.client.OpenStackRequest; @@ -91,7 +90,7 @@ public DeleteAggregate(String id) { } - public static class AddHost extends OpenStackRequest { + public static class AddHost extends OpenStackRequest { private String aggregateId; diff --git a/swift-client/src/main/java/com/woorea/openstack/swift/api/AccountResource.java b/swift-client/src/main/java/com/woorea/openstack/swift/api/AccountResource.java index 70c5a10f6..f98fbf923 100644 --- a/swift-client/src/main/java/com/woorea/openstack/swift/api/AccountResource.java +++ b/swift-client/src/main/java/com/woorea/openstack/swift/api/AccountResource.java @@ -11,7 +11,7 @@ public AccountResource(OpenStackClient client) { CLIENT = client; } - public class ShowAccount extends OpenStackRequest { + public class ShowAccount extends OpenStackRequest { public ShowAccount() { // return target.request(MediaType.APPLICATION_JSON).head(); From cbdf0683b3fe374633645c26fb5fc7e91a9a2f86 Mon Sep 17 00:00:00 2001 From: Mariusz Szpiler Date: Mon, 28 Oct 2013 09:37:40 +0100 Subject: [PATCH 047/144] Issue #101 Openstack-java-sdk 3.2.2-SNAPSHOT incompatible with OpenStack 2013.2 (Havana) New fields in Server. Change-Id: Ic313417d9ac2b699ec404a4aa51c68d7f1983a8e --- .../woorea/openstack/nova/model/Server.java | 38 ++++++++++++++++++- 1 file changed, 36 insertions(+), 2 deletions(-) diff --git a/nova-model/src/main/java/com/woorea/openstack/nova/model/Server.java b/nova-model/src/main/java/com/woorea/openstack/nova/model/Server.java index 48f56052a..5cd888de3 100644 --- a/nova-model/src/main/java/com/woorea/openstack/nova/model/Server.java +++ b/nova-model/src/main/java/com/woorea/openstack/nova/model/Server.java @@ -7,10 +7,12 @@ import java.util.Map; import org.codehaus.jackson.annotate.JsonAnySetter; +import org.codehaus.jackson.annotate.JsonIgnoreProperties; import org.codehaus.jackson.annotate.JsonProperty; import org.codehaus.jackson.map.annotate.JsonRootName; @JsonRootName("server") +@JsonIgnoreProperties(ignoreUnknown = true) public class Server implements Serializable { public static final class Addresses implements Serializable { @@ -227,6 +229,15 @@ public String toString() { @JsonProperty("OS-EXT-AZ:availability_zone") private String availabilityZone; + + @JsonProperty("OS-SRV-USG:launched_at") + private String launchedAt; + + @JsonProperty("OS-SRV-USG:terminated_at") + private String terminatedAt; + + @JsonProperty("os-extended-volumes:volumes_attached") + private List osExtendedVolumesAttached; private String uuid; @@ -442,7 +453,28 @@ public String getAvailabilityZone() { return availabilityZone; } - /** + /** + * @return the launchedAt + */ + public String getLaunchedAt() { + return launchedAt; + } + + /** + * @return the terminatedAt + */ + public String getTerminatedAt() { + return terminatedAt; + } + + /** + * @return the osExtendedVolumesAttached + */ + public List getOsExtendedVolumesAttached() { + return osExtendedVolumesAttached; + } + + /** * @return the uuid */ public String getUuid() { @@ -474,7 +506,9 @@ public String toString() { + vmState + ", host=" + host + ", instanceName=" + instanceName + ", hypervisorHostname=" + hypervisorHostname + ", diskConfig=" + diskConfig + ", availabilityZone=" - + availabilityZone + ", uuid=" + uuid + ", adminPass=" + + availabilityZone + ", launchedAt=" + launchedAt + ", terminatedAt=" + + ", " + "osExtendedVolumesAttached=" + osExtendedVolumesAttached + + ", uuid=" + uuid + ", adminPass=" + adminPass + "]"; } From a241a01b7889d8ed398275338218415e2aa9779b Mon Sep 17 00:00:00 2001 From: Mariusz Szpiler Date: Mon, 28 Oct 2013 10:25:16 +0100 Subject: [PATCH 048/144] Issue #101 Openstack-java-sdk 3.2.2-SNAPSHOT incompatible with OpenStack 2013.2 (Havana) New fields in Server. Remove annotation. Change-Id: I3d75477cacb2d29339f85bb3a7986cc5571ce0d8 --- .../src/main/java/com/woorea/openstack/nova/model/Server.java | 1 - 1 file changed, 1 deletion(-) diff --git a/nova-model/src/main/java/com/woorea/openstack/nova/model/Server.java b/nova-model/src/main/java/com/woorea/openstack/nova/model/Server.java index 5cd888de3..589ed540d 100644 --- a/nova-model/src/main/java/com/woorea/openstack/nova/model/Server.java +++ b/nova-model/src/main/java/com/woorea/openstack/nova/model/Server.java @@ -12,7 +12,6 @@ import org.codehaus.jackson.map.annotate.JsonRootName; @JsonRootName("server") -@JsonIgnoreProperties(ignoreUnknown = true) public class Server implements Serializable { public static final class Addresses implements Serializable { From bfba71538f9a39902d5e71f4eb27ad3bbc4029f9 Mon Sep 17 00:00:00 2001 From: Masanori Itoh Date: Mon, 14 Oct 2013 01:53:07 +0900 Subject: [PATCH 049/144] Fix a typo of @JsonRootName in HostAggregate.java. --- .../java/com/woorea/openstack/nova/model/HostAggregate.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nova-model/src/main/java/com/woorea/openstack/nova/model/HostAggregate.java b/nova-model/src/main/java/com/woorea/openstack/nova/model/HostAggregate.java index cc01051a1..ad68faab9 100644 --- a/nova-model/src/main/java/com/woorea/openstack/nova/model/HostAggregate.java +++ b/nova-model/src/main/java/com/woorea/openstack/nova/model/HostAggregate.java @@ -7,7 +7,7 @@ import org.codehaus.jackson.annotate.JsonProperty; import org.codehaus.jackson.map.annotate.JsonRootName; -@JsonRootName("aggreagate") +@JsonRootName("aggregate") public class HostAggregate implements Serializable { private String id; From 10f34ae4b776691e25b6a0ce150125252090975c Mon Sep 17 00:00:00 2001 From: Masanori Itoh Date: Mon, 14 Oct 2013 01:55:55 +0900 Subject: [PATCH 050/144] Implement operations on 'os-aggregates'. list, details, create, delete, add-host, remove-host, update, set-metadata --- .../api/extensions/AggregatesExtension.java | 123 ++++++++++++------ 1 file changed, 82 insertions(+), 41 deletions(-) diff --git a/nova-client/src/main/java/com/woorea/openstack/nova/api/extensions/AggregatesExtension.java b/nova-client/src/main/java/com/woorea/openstack/nova/api/extensions/AggregatesExtension.java index 376ff7cbd..fa757aff3 100644 --- a/nova-client/src/main/java/com/woorea/openstack/nova/api/extensions/AggregatesExtension.java +++ b/nova-client/src/main/java/com/woorea/openstack/nova/api/extensions/AggregatesExtension.java @@ -2,6 +2,8 @@ import java.util.Map; + +import com.woorea.openstack.base.client.Entity; import com.woorea.openstack.base.client.HttpMethod; import com.woorea.openstack.base.client.OpenStackClient; import com.woorea.openstack.base.client.OpenStackRequest; @@ -25,8 +27,13 @@ public ShowAggregate showAggregate(String id) { } public UpdateAggregateMetadata updateAggregateMetadata(String id, - Map metadata) { - return new UpdateAggregateMetadata(id, metadata); + String name, String availabilityZone) { + return new UpdateAggregateMetadata(id, name, availabilityZone); + } + + public CreateAggregate createAggregate(String aggregateName, + String availabilityZoneName) { + return new CreateAggregate(aggregateName, availabilityZoneName); } public DeleteAggregate deleteAggregate(String id) { @@ -41,11 +48,17 @@ public RemoveHost removeHost(String aggregateId, String hostId) { return new RemoveHost(hostId, aggregateId); } - public class List extends OpenStackRequest { + public SetMetadata setMetadata(String aggregateId, + String key, String value) { + return new SetMetadata(aggregateId, key, value); + } + public class List extends OpenStackRequest { public List() { - super(CLIENT, HttpMethod.GET, "/os-aggregates", null, HostAggregates.class); + super(CLIENT, HttpMethod.GET, "/os-aggregates", + null, + HostAggregates.class); } } @@ -53,29 +66,48 @@ public List() { public class ShowAggregate extends OpenStackRequest { public ShowAggregate(String id) { - method(HttpMethod.GET); - path("/os-aggregates/").path(id); - header("Accept", "application/json"); - returnType(HostAggregate.class); + super(CLIENT, HttpMethod.GET, + new StringBuffer("/os-aggregates/").append(id), + null, + HostAggregate.class); } } public class UpdateAggregateMetadata extends OpenStackRequest { + public UpdateAggregateMetadata(String id, + String name, String availabilityZone) { + super(CLIENT, HttpMethod.PUT, + new StringBuffer("/os-aggregates/").append(id), + availabilityZone == null ? + Entity.json("{\"aggregate\": {\"name\": \"" + name + "\" }}") + : + Entity.json("{\"aggregate\": {\"name\": \"" + + name + + "\", \"availability_zone\": \"" + + availabilityZone + + "\" }}"), + HostAggregate.class); + } - private String id; - - private Map metadata; + } - public UpdateAggregateMetadata(String id, Map metadata) { - this.id = id; - this.metadata = metadata; - - method(HttpMethod.POST); - path("/os-aggregates/").path(id); - header("Accept", "application/json"); - json("{\"set_metadata\" : }"); - returnType(HostAggregate.class); + public class CreateAggregate extends OpenStackRequest { + + public CreateAggregate(String name, String availabilityZone) { + super(CLIENT, HttpMethod.POST, + new StringBuffer("/os-aggregates"), + availabilityZone == null ? + Entity.json("{\"aggregate\": {\"name\": \"" + + name + + "\", \"availability_zone\": null }}") + : + Entity.json("{\"aggregate\": {\"name\": \"" + + name + + "\", \"availability_zone\": \"" + + availabilityZone + + "\" }}"), + HostAggregate.class); } } @@ -83,40 +115,49 @@ public UpdateAggregateMetadata(String id, Map metadata) { public class DeleteAggregate extends OpenStackRequest { public DeleteAggregate(String id) { - method(HttpMethod.DELETE); - path("/os-aggregates/").path(id); - header("Accept", "application/json"); + super(CLIENT, HttpMethod.DELETE, + new StringBuffer("/os-aggregates/").append(id), + null, + null); } - } - public static class AddHost extends OpenStackRequest { - - private String aggregateId; - - private String hostId; + public class AddHost extends OpenStackRequest { public AddHost(String aggregateId, String hostId) { - this.aggregateId = aggregateId; - this.hostId = hostId; - // target.path("os-aggregates").request(MediaType.APPLICATION_JSON).post(Entity.json("{\"add_host\" : }")); + super(CLIENT, HttpMethod.POST, + new StringBuffer("/os-aggregates/") + .append(aggregateId).append("/action"), + Entity.json("{\"add_host\": {\"host\": \"" + + hostId + "\" }}"), + HostAggregate.class); } } - public class RemoveHost extends OpenStackRequest { - - private String aggregateId; - - private String hostId; + public class RemoveHost extends OpenStackRequest { public RemoveHost(String hostId, String aggregateId) { - this.aggregateId = aggregateId; - this.hostId = hostId; - // target.path("os-aggregates").path("aggregate").path("os-volume-attachments").request(MediaType.APPLICATION_JSON).post(Entity.json("{\"remove_host\" : }")); - + super(CLIENT, HttpMethod.POST, + new StringBuffer("/os-aggregates/") + .append(aggregateId).append("/action"), + Entity.json("{\"remove_host\": {\"host\": \"" + + hostId + "\" }}"), + HostAggregate.class); } } + public class SetMetadata extends OpenStackRequest { + + public SetMetadata(String aggregateId, String key, String value) { + super(CLIENT, HttpMethod.POST, + new StringBuffer("/os-aggregates/") + .append(aggregateId).append("/action"), + Entity.json("{\"set_metadata\": {\"metadata\": { \"" + + key + "\": \"" + value + "\" }}}"), + HostAggregate.class); + } + } } + From df98a1e3e18d43801989d86b6a33a23d7db76ac4 Mon Sep 17 00:00:00 2001 From: Mike Kolesnik Date: Wed, 6 Nov 2013 10:19:01 +0200 Subject: [PATCH 051/144] Add security groups to ports properties Security groups IDs list has been added to allow creating port with security groups attached, and retrieving information about it. Signed-off-by: Mike Kolesnik --- .../woorea/openstack/quantum/model/Port.java | 24 +++++++++++++++---- .../quantum/model/PortForCreate.java | 19 +++++++++++++++ 2 files changed, 38 insertions(+), 5 deletions(-) diff --git a/quantum-model/src/main/java/com/woorea/openstack/quantum/model/Port.java b/quantum-model/src/main/java/com/woorea/openstack/quantum/model/Port.java index aff9cff81..92fa12bc3 100644 --- a/quantum-model/src/main/java/com/woorea/openstack/quantum/model/Port.java +++ b/quantum-model/src/main/java/com/woorea/openstack/quantum/model/Port.java @@ -74,7 +74,8 @@ public String toString() { private String status; @JsonProperty("tenant_id") private String tenantId; - + @JsonProperty("security_groups") + private List securityGroups; /** @@ -255,14 +256,27 @@ public void setTenantId(String tenantId) { this.tenantId = tenantId; } - - - @Override + /** + * @return the associated security group IDs + */ + public List getSecurityGroups() { + return securityGroups; + } + + /** + * @param securityGroups IDs of security groups to associate to the port + */ + public void setSecurityGroups(List securityGroups) { + this.securityGroups = securityGroups; + } + + @Override public String toString() { return "Port [id=" + id + ", name=" + name + ", mac_address=" + macAddress + ", admin_state_up=" + adminStateUp + ", device_id=" + deviceId + ", device_owner=" + deviceOwner + ", fixed_ips=" + list + ", network_id=" + networkId + ", status=" + status - + ", tenant_id=" + tenantId + "]"; + + ", tenant_id=" + tenantId + + ", securityGroups=" + securityGroups + "]"; } } diff --git a/quantum-model/src/main/java/com/woorea/openstack/quantum/model/PortForCreate.java b/quantum-model/src/main/java/com/woorea/openstack/quantum/model/PortForCreate.java index 7b4eadde2..e8c07b627 100644 --- a/quantum-model/src/main/java/com/woorea/openstack/quantum/model/PortForCreate.java +++ b/quantum-model/src/main/java/com/woorea/openstack/quantum/model/PortForCreate.java @@ -1,5 +1,7 @@ package com.woorea.openstack.quantum.model; +import java.util.List; + import org.codehaus.jackson.annotate.JsonProperty; import org.codehaus.jackson.map.annotate.JsonRootName; @@ -22,6 +24,9 @@ public class PortForCreate { @JsonProperty("tenant_id") private String tenantId; + + @JsonProperty("security_groups") + private List securityGroups; /** * @return the adminStateUp @@ -102,4 +107,18 @@ public String getTenantId() { public void setTenantId(String tenantId) { this.tenantId = tenantId; } + + /** + * @return the associated security group IDs + */ + public List getSecurityGroups() { + return securityGroups; + } + + /** + * @param securityGroups IDs of security groups to associate to the port + */ + public void setSecurityGroups(List securityGroups) { + this.securityGroups = securityGroups; + } } From c9bce42f00769b0722e0e441edf3081a7948d308 Mon Sep 17 00:00:00 2001 From: Federico Simoncelli Date: Fri, 8 Nov 2013 16:56:58 +0100 Subject: [PATCH 052/144] resteasy: catch IllegalStateException on InputStream close Signed-off-by: Federico Simoncelli --- .../com/woorea/openstack/connector/RESTEasyInputStream.java | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/openstack-client-connectors/resteasy-connector/src/main/java/com/woorea/openstack/connector/RESTEasyInputStream.java b/openstack-client-connectors/resteasy-connector/src/main/java/com/woorea/openstack/connector/RESTEasyInputStream.java index 38fdd4917..913a5000d 100644 --- a/openstack-client-connectors/resteasy-connector/src/main/java/com/woorea/openstack/connector/RESTEasyInputStream.java +++ b/openstack-client-connectors/resteasy-connector/src/main/java/com/woorea/openstack/connector/RESTEasyInputStream.java @@ -28,7 +28,9 @@ public void close() throws IOException { try { super.close(); } catch (SocketException e) { - // We expect this to fail because the socket is closed + // We expect this exception because the socket is closed + } catch (IllegalStateException e) { + // We expect this exception because the socket is closed (httpclient 4.2) } } From 9a821c5eec571bd5d664b351e3d3b48f3c8e9580 Mon Sep 17 00:00:00 2001 From: Masanori Itoh Date: Sat, 9 Nov 2013 13:56:03 +0900 Subject: [PATCH 053/144] Fix route operation errors. Fix a typo of 'routes' not 'routers' Change 'external_gateway_info' and 'routes' declarations. --- .../openstack/quantum/model/GatewayInfo.java | 24 +++++++++++ .../openstack/quantum/model/HostRoute.java | 27 +++++++++++++ .../openstack/quantum/model/Router.java | 40 +++++++++++-------- .../quantum/model/RouterForCreate.java | 38 +++++++++++------- 4 files changed, 98 insertions(+), 31 deletions(-) create mode 100644 quantum-model/src/main/java/com/woorea/openstack/quantum/model/GatewayInfo.java create mode 100644 quantum-model/src/main/java/com/woorea/openstack/quantum/model/HostRoute.java diff --git a/quantum-model/src/main/java/com/woorea/openstack/quantum/model/GatewayInfo.java b/quantum-model/src/main/java/com/woorea/openstack/quantum/model/GatewayInfo.java new file mode 100644 index 000000000..2a7766f75 --- /dev/null +++ b/quantum-model/src/main/java/com/woorea/openstack/quantum/model/GatewayInfo.java @@ -0,0 +1,24 @@ +package com.woorea.openstack.quantum.model; + +import java.util.List; +import java.io.Serializable; + +import org.codehaus.jackson.annotate.JsonProperty; + +public class GatewayInfo implements Serializable { + + @JsonProperty("network_id") + private String networkId; + + public String getNetworkId() { + return networkId; + } + + public void setNetworkId(String id) { + this.networkId = id; + } + + @Override public String toString() { + return "[networkId=" + networkId + "]"; + } +} diff --git a/quantum-model/src/main/java/com/woorea/openstack/quantum/model/HostRoute.java b/quantum-model/src/main/java/com/woorea/openstack/quantum/model/HostRoute.java new file mode 100644 index 000000000..979add34b --- /dev/null +++ b/quantum-model/src/main/java/com/woorea/openstack/quantum/model/HostRoute.java @@ -0,0 +1,27 @@ +package com.woorea.openstack.quantum.model; + +import java.io.Serializable; + +public class HostRoute implements Serializable { + + private String destination; + private String nexthop; + + public String getDestination() { + return destination; + } + public void setDestination(String destination) { + this.destination = destination; + } + + public String getNexthop() { + return nexthop; + } + public void setNexthop(String nexthop) { + this.nexthop = nexthop; + } + + @Override public String toString() { + return "[destination=" + destination + ", nexthop=" + nexthop + "]"; + } +} diff --git a/quantum-model/src/main/java/com/woorea/openstack/quantum/model/Router.java b/quantum-model/src/main/java/com/woorea/openstack/quantum/model/Router.java index 92a9f4254..a94afd5e4 100644 --- a/quantum-model/src/main/java/com/woorea/openstack/quantum/model/Router.java +++ b/quantum-model/src/main/java/com/woorea/openstack/quantum/model/Router.java @@ -1,40 +1,46 @@ package com.woorea.openstack.quantum.model; import java.util.List; +import java.io.Serializable; import org.codehaus.jackson.annotate.JsonProperty; import org.codehaus.jackson.map.annotate.JsonRootName; + @JsonRootName("router") -public class Router { +public class Router implements Serializable { - /** - * @param args - */ @JsonProperty("status") - String status; + private String status; + @JsonProperty("external_gateway_info") - String externalGatewayInfo; + private GatewayInfo externalGatewayInfo; + @JsonProperty("name") - String name; + private String name; + @JsonProperty("admin_state_up") - String admin_state_up; + private String admin_state_up; + @JsonProperty("tenant_id") - String tenantId; + private String tenantId; + @JsonProperty("id") - String id; + private String id; + @JsonProperty("routes") - private List routers; + private List routes; + public String getName() { return name; } public void setName(String name) { this.name = name; } - public List getRouters() { - return routers; + public List getRoutes() { + return routes; } - public void setRouters(List routers) { - this.routers = routers; + public void setRoutes(List routes) { + this.routes = routes; } public String getAdmin_state_up() { return admin_state_up; @@ -48,10 +54,10 @@ public String getStatus() { public void setStatus(String status) { this.status = status; } - public String getExternalGatewayInfo() { + public GatewayInfo getExternalGatewayInfo() { return externalGatewayInfo; } - public void setExternalGatewayInfo(String externalGatewayInfo) { + public void setExternalGatewayInfo(GatewayInfo externalGatewayInfo) { this.externalGatewayInfo = externalGatewayInfo; } public String getTenantId() { diff --git a/quantum-model/src/main/java/com/woorea/openstack/quantum/model/RouterForCreate.java b/quantum-model/src/main/java/com/woorea/openstack/quantum/model/RouterForCreate.java index d121d6032..b8c92912d 100644 --- a/quantum-model/src/main/java/com/woorea/openstack/quantum/model/RouterForCreate.java +++ b/quantum-model/src/main/java/com/woorea/openstack/quantum/model/RouterForCreate.java @@ -1,35 +1,45 @@ package com.woorea.openstack.quantum.model; import java.util.List; +import java.io.Serializable; import org.codehaus.jackson.annotate.JsonProperty; import org.codehaus.jackson.map.annotate.JsonRootName; + @JsonRootName("router") -public class RouterForCreate { +public class RouterForCreate implements Serializable { + @JsonProperty("name") - String name; - private List routers; + private String name; + + private List routes; + @JsonProperty("admin_state_up") - String admin_state_up; + private String admin_state_up; + @JsonProperty("status") - String status; + private String status; + @JsonProperty("external_gateway_info") - String externalGatewayInfo; + private GatewayInfo externalGatewayInfo; + @JsonProperty("tenant_id") - String tenantId; + private String tenantId; + @JsonProperty("id") - String id; + private String id; + public String getName() { return name; } public void setName(String name) { this.name = name; } - public List getRouters() { - return routers; + public List getRoutes() { + return routes; } - public void setRouters(List routers) { - this.routers = routers; + public void setRoutes(List routes) { + this.routes = routes; } public String getAdmin_state_up() { return admin_state_up; @@ -43,10 +53,10 @@ public String getStatus() { public void setStatus(String status) { this.status = status; } - public String getExternalGatewayInfo() { + public GatewayInfo getExternalGatewayInfo() { return externalGatewayInfo; } - public void setExternalGatewayInfo(String externalGatewayInfo) { + public void setExternalGatewayInfo(GatewayInfo externalGatewayInfo) { this.externalGatewayInfo = externalGatewayInfo; } public String getTenantId() { From 8c57cba75660a4f5613dab384d2c33f030e81225 Mon Sep 17 00:00:00 2001 From: Taylor Jones Date: Sat, 9 Nov 2013 10:15:50 -0500 Subject: [PATCH 054/144] Adding field and model object for the 'networks' field on server create --- .../nova/model/NetworkForCreate.java | 29 +++ .../openstack/nova/model/ServerForCreate.java | 178 +++++++----------- 2 files changed, 97 insertions(+), 110 deletions(-) create mode 100644 nova-model/src/main/java/com/woorea/openstack/nova/model/NetworkForCreate.java diff --git a/nova-model/src/main/java/com/woorea/openstack/nova/model/NetworkForCreate.java b/nova-model/src/main/java/com/woorea/openstack/nova/model/NetworkForCreate.java new file mode 100644 index 000000000..f5785393b --- /dev/null +++ b/nova-model/src/main/java/com/woorea/openstack/nova/model/NetworkForCreate.java @@ -0,0 +1,29 @@ +package com.woorea.openstack.nova.model; + +import org.codehaus.jackson.annotate.JsonProperty; +import org.codehaus.jackson.map.annotate.JsonRootName; + +public class NetworkForCreate { + + @JsonProperty("uuid") + private String id; + @JsonProperty("fixed_ip") + private String fixedIp; + + public String getId() { + return id; + } + + public String getFixedIp() { + return fixedIp; + } + + public void setId(String id) { + this.id = id; + } + + public void setFixedIp(String fixedIp) { + this.fixedIp = fixedIp; + } + +} diff --git a/nova-model/src/main/java/com/woorea/openstack/nova/model/ServerForCreate.java b/nova-model/src/main/java/com/woorea/openstack/nova/model/ServerForCreate.java index 0e727afc2..9f28a8113 100644 --- a/nova-model/src/main/java/com/woorea/openstack/nova/model/ServerForCreate.java +++ b/nova-model/src/main/java/com/woorea/openstack/nova/model/ServerForCreate.java @@ -11,14 +11,14 @@ @JsonRootName("server") public class ServerForCreate implements Serializable { - + public static final class SecurityGroup implements Serializable { - + private String name; public SecurityGroup() { } - + public SecurityGroup(String name) { this.name = name; } @@ -31,117 +31,55 @@ public String getName() { } /** - * @param name the name to set + * @param name + * the name to set */ public void setName(String name) { this.name = name; } - - } - - public static final class Network implements Serializable { - - private String uuid; - - private String fixed_ip; - - private String port; - - public Network() { - } - - public Network(String uuid, String fixed_ip, String port) { - this.uuid = uuid; - this.fixed_ip = fixed_ip; - this.port = port; - } - - /** - * @return the network uuid - */ - public String getUuid() { - return uuid; - } - - /** - * @param uuid the network uuid to set - */ - public void setUuid(String uuid) { - this.uuid = uuid; - } - - /** - * @return the IP address to assign to the interface - */ - public String getFixed_ip() { - return fixed_ip; - } - - /** - * @param name the IP address to set - */ - public void setFixed_ip(String fixed_ip) { - this.fixed_ip = fixed_ip; - } - /** - * @return the port uuid - */ - public String getPort() { - return port; - } - - /** - * @param port the port uuid to set - */ - public void setPort(String port) { - this.port = port; - } - } - + private String name; - + private String adminPass; - + private String imageRef; - + private String flavorRef; - + private String accessIPv4; - + private String accessIPv6; - - @JsonProperty("min_count") + private Integer min; - - @JsonProperty("max_count") + private Integer max; - + private String diskConfig; - + @JsonProperty("key_name") private String keyName; - + private List personality = new ArrayList(); - + private Map metadata = new HashMap(); - + @JsonProperty("security_groups") private List securityGroups; - - @JsonProperty("networks") - private List networks; - + @JsonProperty("user_data") private String userData; - + @JsonProperty("availability_zone") private String availabilityZone; @JsonProperty("config_drive") private boolean configDrive; + @JsonProperty("networks") + private List networks = new ArrayList(); + /** * @return the name */ @@ -150,7 +88,8 @@ public String getName() { } /** - * @param name the name to set + * @param name + * the name to set */ public void setName(String name) { this.name = name; @@ -164,7 +103,8 @@ public String getAdminPass() { } /** - * @param adminPass the adminPass to set + * @param adminPass + * the adminPass to set */ public void setAdminPass(String adminPass) { this.adminPass = adminPass; @@ -178,7 +118,8 @@ public String getImageRef() { } /** - * @param imageRef the imageRef to set + * @param imageRef + * the imageRef to set */ public void setImageRef(String imageRef) { this.imageRef = imageRef; @@ -192,7 +133,8 @@ public String getFlavorRef() { } /** - * @param flavorRef the flavorRef to set + * @param flavorRef + * the flavorRef to set */ public void setFlavorRef(String flavorRef) { this.flavorRef = flavorRef; @@ -206,7 +148,8 @@ public String getAccessIPv4() { } /** - * @param accessIPv4 the accessIPv4 to set + * @param accessIPv4 + * the accessIPv4 to set */ public void setAccessIPv4(String accessIPv4) { this.accessIPv4 = accessIPv4; @@ -220,7 +163,8 @@ public String getAccessIPv6() { } /** - * @param accessIPv6 the accessIPv6 to set + * @param accessIPv6 + * the accessIPv6 to set */ public void setAccessIPv6(String accessIPv6) { this.accessIPv6 = accessIPv6; @@ -234,7 +178,8 @@ public Integer getMin() { } /** - * @param min the min to set + * @param min + * the min to set */ public void setMin(Integer min) { this.min = min; @@ -248,7 +193,8 @@ public Integer getMax() { } /** - * @param max the max to set + * @param max + * the max to set */ public void setMax(Integer max) { this.max = max; @@ -262,7 +208,8 @@ public String getDiskConfig() { } /** - * @param diskConfig the diskConfig to set + * @param diskConfig + * the diskConfig to set */ public void setDiskConfig(String diskConfig) { this.diskConfig = diskConfig; @@ -276,7 +223,8 @@ public String getKeyName() { } /** - * @param keyName the keyName to set + * @param keyName + * the keyName to set */ public void setKeyName(String keyName) { this.keyName = keyName; @@ -290,7 +238,8 @@ public List getPersonality() { } /** - * @param personality the personality to set + * @param personality + * the personality to set */ public void setPersonality(List personality) { this.personality = personality; @@ -304,7 +253,8 @@ public Map getMetadata() { } /** - * @param metadata the metadata to set + * @param metadata + * the metadata to set */ public void setMetadata(Map metadata) { this.metadata = metadata; @@ -314,22 +264,12 @@ public void setMetadata(Map metadata) { * @return the securityGroups */ public List getSecurityGroups() { - if(securityGroups == null) { + if (securityGroups == null) { securityGroups = new ArrayList(); } return securityGroups; } - /** - * @return the networks - */ - public List getNetworks() { - if(networks == null) { - networks = new ArrayList(); - } - return networks; - } - /** * @return the userData */ @@ -338,7 +278,8 @@ public String getUserData() { } /** - * @param userData the userData to set + * @param userData + * the userData to set */ public void setUserData(String userData) { this.userData = userData; @@ -352,7 +293,8 @@ public String getAvailabilityZone() { } /** - * @param availabilityZone the availabilityZone to set + * @param availabilityZone + * the availabilityZone to set */ public void setAvailabilityZone(String availabilityZone) { this.availabilityZone = availabilityZone; @@ -365,4 +307,20 @@ public boolean isConfigDrive() { public void setConfigDrive(boolean configDrive) { this.configDrive = configDrive; } + + public List getNetworks() { + return networks; + } + + public void setNetworks(List networks) { + this.networks = networks; + } + + public void addNetworks(String id, String fixedIp) { + NetworkForCreate net = new NetworkForCreate(); + net.setId(id); + net.setFixedIp(fixedIp); + this.networks.add(net); + } + } From e2ad51e0acc1ed5081e983fb2c390a14b8abcc89 Mon Sep 17 00:00:00 2001 From: Mike Kolesnik Date: Sun, 10 Nov 2013 20:56:51 +0200 Subject: [PATCH 055/144] neutron: Consolidate Port and PortForCreate There is no reason to duplicate these classes, so consolidating so that Port is the main entity that is used for communication with the server. Signed-off-by: Mike Kolesnik --- .../woorea/openstack/quantum/model/Port.java | 13 +- .../quantum/model/PortForCreate.java | 124 +----------------- 2 files changed, 15 insertions(+), 122 deletions(-) diff --git a/quantum-model/src/main/java/com/woorea/openstack/quantum/model/Port.java b/quantum-model/src/main/java/com/woorea/openstack/quantum/model/Port.java index 92fa12bc3..50b0dd5bf 100644 --- a/quantum-model/src/main/java/com/woorea/openstack/quantum/model/Port.java +++ b/quantum-model/src/main/java/com/woorea/openstack/quantum/model/Port.java @@ -3,6 +3,7 @@ import java.io.Serializable; import java.util.List; +import org.codehaus.jackson.annotate.JsonIgnore; import org.codehaus.jackson.annotate.JsonIgnoreProperties; import org.codehaus.jackson.annotate.JsonProperty; import org.codehaus.jackson.map.annotate.JsonRootName; @@ -58,7 +59,7 @@ public String toString() { } @JsonProperty("admin_state_up") - private String adminStateUp; + private Boolean adminStateUp; @JsonProperty("device_id") private String deviceId; @JsonProperty("device_owner") @@ -81,7 +82,7 @@ public String toString() { /** * @return the adminStateUp */ - public String getAdminStateUp() { + public Boolean getAdminStateUp() { return adminStateUp; } @@ -90,10 +91,10 @@ public String getAdminStateUp() { /** * @param adminStateUp the adminStateUp to set */ - public void setAdminStateUp(String adminStateUp) { + public void setAdminStateUp(Boolean adminStateUp) { this.adminStateUp = adminStateUp; } - + /** @@ -153,6 +154,7 @@ public void setList(List list) { /** * @return the id */ + @JsonIgnore public String getId() { return id; } @@ -162,6 +164,7 @@ public String getId() { /** * @param id the id to set */ + @JsonProperty public void setId(String id) { this.id = id; } @@ -225,6 +228,7 @@ public void setNetworkId(String networkId) { /** * @return the status */ + @JsonIgnore public String getStatus() { return status; } @@ -234,6 +238,7 @@ public String getStatus() { /** * @param status the status to set */ + @JsonProperty public void setStatus(String status) { this.status = status; } diff --git a/quantum-model/src/main/java/com/woorea/openstack/quantum/model/PortForCreate.java b/quantum-model/src/main/java/com/woorea/openstack/quantum/model/PortForCreate.java index e8c07b627..3c1af5060 100644 --- a/quantum-model/src/main/java/com/woorea/openstack/quantum/model/PortForCreate.java +++ b/quantum-model/src/main/java/com/woorea/openstack/quantum/model/PortForCreate.java @@ -1,124 +1,12 @@ package com.woorea.openstack.quantum.model; -import java.util.List; - -import org.codehaus.jackson.annotate.JsonProperty; import org.codehaus.jackson.map.annotate.JsonRootName; +/** + * @deprecated Please use {@link Port} directly. + */ +@SuppressWarnings("serial") @JsonRootName("port") -public class PortForCreate { - - @JsonProperty("admin_state_up") - private boolean adminStateUp; - @JsonProperty("device_id") - private String deviceId; - private String name; - @JsonProperty("network_id") - private String networkId; - - @JsonProperty("mac_address") - private String macAddress; - - @JsonProperty("device_owner") - private String deviceOwner; - - @JsonProperty("tenant_id") - private String tenantId; - - @JsonProperty("security_groups") - private List securityGroups; - - /** - * @return the adminStateUp - */ - public boolean isAdminStateUp() { - return adminStateUp; - } - - /** - * @param adminStateUp the adminStateUp to set - */ - public void setAdminStateUp(boolean adminStateUp) { - this.adminStateUp = adminStateUp; - } - - /** - * @return the deviceId - */ - public String getDeviceId() { - return deviceId; - } - - /** - * @param deviceId the deviceId to set - */ - public void setDeviceId(String deviceId) { - this.deviceId = deviceId; - } - - /** - * @return the name - */ - public String getName() { - return name; - } - - /** - * @param name the name to set - */ - public void setName(String name) { - this.name = name; - } - - /** - * @return the networkId - */ - public String getNetworkId() { - return networkId; - } - - /** - * @param networkId the networkId to set - */ - public void setNetworkId(String networkId) { - this.networkId = networkId; - } - - public String getMacAddress() { - return macAddress; - } - - public void setMacAddress(String macAddress) { - this.macAddress = macAddress; - } - - public String getDeviceOwner() { - return deviceOwner; - } - - public void setDeviceOwner(String deviceOwner) { - this.deviceOwner = deviceOwner; - } - - public String getTenantId() { - return tenantId; - } - - public void setTenantId(String tenantId) { - this.tenantId = tenantId; - } - - /** - * @return the associated security group IDs - */ - public List getSecurityGroups() { - return securityGroups; - } - - /** - * @param securityGroups IDs of security groups to associate to the port - */ - public void setSecurityGroups(List securityGroups) { - this.securityGroups = securityGroups; - } +@Deprecated +public class PortForCreate extends Port { } From 7288af677b9fd2a92b3f85da4ec722b5595c9fc2 Mon Sep 17 00:00:00 2001 From: Mike Kolesnik Date: Sun, 10 Nov 2013 20:59:25 +0200 Subject: [PATCH 056/144] neutron: Use Port instead of PortForCreate Signed-off-by: Mike Kolesnik --- .../java/com/woorea/openstack/quantum/api/PortsResource.java | 5 ++--- .../main/java/com/woorea/openstack/quantum/model/Port.java | 1 + 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/quantum-client/src/main/java/com/woorea/openstack/quantum/api/PortsResource.java b/quantum-client/src/main/java/com/woorea/openstack/quantum/api/PortsResource.java index 4e38195b4..8105665d9 100644 --- a/quantum-client/src/main/java/com/woorea/openstack/quantum/api/PortsResource.java +++ b/quantum-client/src/main/java/com/woorea/openstack/quantum/api/PortsResource.java @@ -6,7 +6,6 @@ import com.woorea.openstack.base.client.OpenStackClient; import com.woorea.openstack.base.client.OpenStackRequest; import com.woorea.openstack.quantum.model.Port; -import com.woorea.openstack.quantum.model.PortForCreate; import com.woorea.openstack.quantum.model.Ports; public class PortsResource { @@ -21,7 +20,7 @@ public List list() { return new List(); } - public Create create(PortForCreate net){ + public Create create(Port net){ return new Create(net); } @@ -54,7 +53,7 @@ public Query(Port port) { public class Create extends OpenStackRequest { - public Create(PortForCreate port){ + public Create(Port port){ super(CLIENT, HttpMethod.POST, "ports", Entity.json(port), Port.class); } } diff --git a/quantum-model/src/main/java/com/woorea/openstack/quantum/model/Port.java b/quantum-model/src/main/java/com/woorea/openstack/quantum/model/Port.java index 50b0dd5bf..0aafb7a62 100644 --- a/quantum-model/src/main/java/com/woorea/openstack/quantum/model/Port.java +++ b/quantum-model/src/main/java/com/woorea/openstack/quantum/model/Port.java @@ -97,6 +97,7 @@ public void setAdminStateUp(Boolean adminStateUp) { + /** * @return the deviceId */ From 8b1863f5dfa807550dc4c5ded5143fe85deee13f Mon Sep 17 00:00:00 2001 From: Mike Kolesnik Date: Sun, 10 Nov 2013 21:01:19 +0200 Subject: [PATCH 057/144] neutron: Fix Ports parameters names The parameter names were incorrect, referring to network instead of port. Signed-off-by: Mike Kolesnik --- .../woorea/openstack/quantum/api/PortsResource.java | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/quantum-client/src/main/java/com/woorea/openstack/quantum/api/PortsResource.java b/quantum-client/src/main/java/com/woorea/openstack/quantum/api/PortsResource.java index 8105665d9..56ec83e14 100644 --- a/quantum-client/src/main/java/com/woorea/openstack/quantum/api/PortsResource.java +++ b/quantum-client/src/main/java/com/woorea/openstack/quantum/api/PortsResource.java @@ -20,16 +20,16 @@ public List list() { return new List(); } - public Create create(Port net){ - return new Create(net); + public Create create(Port port){ + return new Create(port); } - public Delete delete(String netId){ - return new Delete(netId); + public Delete delete(String portId){ + return new Delete(portId); } - public Show show(String netId){ - return new Show(netId); + public Show show(String portId){ + return new Show(portId); } public class List extends OpenStackRequest { From cba414587caa6d44c9597af62508acae227e0bed Mon Sep 17 00:00:00 2001 From: Mike Kolesnik Date: Sun, 10 Nov 2013 21:04:42 +0200 Subject: [PATCH 058/144] neutron: Support port updating Added support for updating a given port, identified by it's ID. Signed-off-by: Mike Kolesnik --- .../woorea/openstack/quantum/api/PortsResource.java | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/quantum-client/src/main/java/com/woorea/openstack/quantum/api/PortsResource.java b/quantum-client/src/main/java/com/woorea/openstack/quantum/api/PortsResource.java index 56ec83e14..d14e860b6 100644 --- a/quantum-client/src/main/java/com/woorea/openstack/quantum/api/PortsResource.java +++ b/quantum-client/src/main/java/com/woorea/openstack/quantum/api/PortsResource.java @@ -24,6 +24,10 @@ public Create create(Port port){ return new Create(port); } + public Update update(Port port){ + return new Update(port); + } + public Delete delete(String portId){ return new Delete(portId); } @@ -58,6 +62,13 @@ public Create(Port port){ } } + public class Update extends OpenStackRequest { + + public Update(Port port){ + super(CLIENT, HttpMethod.PUT, buildPath("ports/", port.getId()), Entity.json(port), Port.class); + } + } + public class Show extends OpenStackRequest { public Show(String id) { From 8eb23f27017cd01ba561b5a087f8b99d8eb920ed Mon Sep 17 00:00:00 2001 From: Mike Kolesnik Date: Sun, 10 Nov 2013 21:16:15 +0200 Subject: [PATCH 059/144] neutron: Clean up ports model code 1. Use space indentation for better compatibility than tabs. 2. Space out fields for easier reading. 3. Remove trailing whitespace. 4. Suppress serial ID warnings. 5. Add missing @Overrides. 6. Format the code (mainly the javadocs). Signed-off-by: Mike Kolesnik --- .../woorea/openstack/quantum/model/Port.java | 433 +++++++++--------- .../woorea/openstack/quantum/model/Ports.java | 54 ++- 2 files changed, 236 insertions(+), 251 deletions(-) diff --git a/quantum-model/src/main/java/com/woorea/openstack/quantum/model/Port.java b/quantum-model/src/main/java/com/woorea/openstack/quantum/model/Port.java index 0aafb7a62..e878b300f 100644 --- a/quantum-model/src/main/java/com/woorea/openstack/quantum/model/Port.java +++ b/quantum-model/src/main/java/com/woorea/openstack/quantum/model/Port.java @@ -8,259 +8,239 @@ import org.codehaus.jackson.annotate.JsonProperty; import org.codehaus.jackson.map.annotate.JsonRootName; +@SuppressWarnings("serial") @JsonRootName("port") @JsonIgnoreProperties(ignoreUnknown = true) public class Port implements Serializable { - - public static final class Ip implements Serializable { - - @JsonProperty("ip_address") - private String address; - @JsonProperty("subnet_id") - private String subnetId; - - /** - * @return the address - */ - public String getAddress() { - return address; - } - - /** - * @param address the address to set - */ - public void setAddress(String address) { - this.address = address; - } - - /** - * @return the subnetId - */ - public String getSubnetId() { - return subnetId; - } - - /** - * @param subnetId the subnetId to set - */ - public void setSubnetId(String subnetId) { - this.subnetId = subnetId; - } - - - /* (non-Javadoc) - * @see java.lang.Object#toString() - */ - @Override - public String toString() { - return "ip_addresses [ip_address=" + address + ", subnet_id=" + subnetId + "]"; - } - - } - - @JsonProperty("admin_state_up") - private Boolean adminStateUp; - @JsonProperty("device_id") - private String deviceId; - @JsonProperty("device_owner") - private String deviceOwner; - @JsonProperty("fixed_ips") - private List list; - private String id; - @JsonProperty("mac_address") - private String macAddress; - private String name; - @JsonProperty("network_id") - private String networkId; - private String status; - @JsonProperty("tenant_id") - private String tenantId; - @JsonProperty("security_groups") - private List securityGroups; - - - /** - * @return the adminStateUp - */ - public Boolean getAdminStateUp() { - return adminStateUp; - } - - - - /** - * @param adminStateUp the adminStateUp to set - */ - public void setAdminStateUp(Boolean adminStateUp) { - this.adminStateUp = adminStateUp; - } - - - - - /** - * @return the deviceId - */ - public String getDeviceId() { - return deviceId; - } - - - - /** - * @param deviceId the deviceId to set - */ - public void setDeviceId(String deviceId) { - this.deviceId = deviceId; - } - - - - /** - * @return the deviceOwner - */ - public String getDeviceOwner() { - return deviceOwner; - } - - - - /** - * @param deviceOwner the deviceOwner to set - */ - public void setDeviceOwner(String deviceOwner) { - this.deviceOwner = deviceOwner; - } - - - - /** - * @return the list - */ - public List getList() { - return list; - } - - - - /** - * @param list the list to set - */ - public void setList(List list) { - this.list = list; - } - - - - /** - * @return the id - */ - @JsonIgnore - public String getId() { - return id; - } + public static final class Ip implements Serializable { + + @JsonProperty("ip_address") + private String address; + + @JsonProperty("subnet_id") + private String subnetId; + + /** + * @return the address + */ + public String getAddress() { + return address; + } + + /** + * @param address + * the address to set + */ + public void setAddress(String address) { + this.address = address; + } + + /** + * @return the subnetId + */ + public String getSubnetId() { + return subnetId; + } + + /** + * @param subnetId + * the subnetId to set + */ + public void setSubnetId(String subnetId) { + this.subnetId = subnetId; + } + + @Override + public String toString() { + return "ip_addresses [ip_address=" + address + ", subnet_id=" + subnetId + "]"; + } + } - /** - * @param id the id to set - */ - @JsonProperty - public void setId(String id) { - this.id = id; - } + @JsonProperty("admin_state_up") + private Boolean adminStateUp; + @JsonProperty("device_id") + private String deviceId; + @JsonProperty("device_owner") + private String deviceOwner; - /** - * @return the macAddress - */ - public String getMacAddress() { - return macAddress; - } + @JsonProperty("fixed_ips") + private List list; + private String id; + @JsonProperty("mac_address") + private String macAddress; - /** - * @param macAddress the macAddress to set - */ - public void setMacAddress(String macAddress) { - this.macAddress = macAddress; - } + private String name; + @JsonProperty("network_id") + private String networkId; + private String status; - /** - * @return the name - */ - public String getName() { - return name; - } + @JsonProperty("tenant_id") + private String tenantId; + @JsonProperty("security_groups") + private List securityGroups; + /** + * @return the adminStateUp + */ + public Boolean getAdminStateUp() { + return adminStateUp; + } - /** - * @param name the name to set - */ - public void setName(String name) { - this.name = name; - } + /** + * @param adminStateUp + * the adminStateUp to set + */ + public void setAdminStateUp(Boolean adminStateUp) { + this.adminStateUp = adminStateUp; + } + /** + * @return the deviceId + */ + public String getDeviceId() { + return deviceId; + } + /** + * @param deviceId + * the deviceId to set + */ + public void setDeviceId(String deviceId) { + this.deviceId = deviceId; + } - /** - * @return the networkId - */ - public String getNetworkId() { - return networkId; - } + /** + * @return the deviceOwner + */ + public String getDeviceOwner() { + return deviceOwner; + } + /** + * @param deviceOwner + * the deviceOwner to set + */ + public void setDeviceOwner(String deviceOwner) { + this.deviceOwner = deviceOwner; + } + /** + * @return the list + */ + public List getList() { + return list; + } - /** - * @param networkId the networkId to set - */ - public void setNetworkId(String networkId) { - this.networkId = networkId; - } + /** + * @param list + * the list to set + */ + public void setList(List list) { + this.list = list; + } + /** + * @return the id + */ + @JsonIgnore + public String getId() { + return id; + } + /** + * @param id + * the id to set + */ + @JsonProperty + public void setId(String id) { + this.id = id; + } - /** - * @return the status - */ - @JsonIgnore - public String getStatus() { - return status; - } + /** + * @return the macAddress + */ + public String getMacAddress() { + return macAddress; + } + /** + * @param macAddress + * the macAddress to set + */ + public void setMacAddress(String macAddress) { + this.macAddress = macAddress; + } + /** + * @return the name + */ + public String getName() { + return name; + } - /** - * @param status the status to set - */ - @JsonProperty - public void setStatus(String status) { - this.status = status; - } + /** + * @param name + * the name to set + */ + public void setName(String name) { + this.name = name; + } + /** + * @return the networkId + */ + public String getNetworkId() { + return networkId; + } + /** + * @param networkId + * the networkId to set + */ + public void setNetworkId(String networkId) { + this.networkId = networkId; + } - /** - * @return the tenantId - */ - public String getTenantId() { - return tenantId; - } + /** + * @return the status + */ + @JsonIgnore + public String getStatus() { + return status; + } + /** + * @param status + * the status to set + */ + @JsonProperty + public void setStatus(String status) { + this.status = status; + } + /** + * @return the tenantId + */ + public String getTenantId() { + return tenantId; + } - /** - * @param tenantId the tenantId to set - */ - public void setTenantId(String tenantId) { - this.tenantId = tenantId; - } + /** + * @param tenantId + * the tenantId to set + */ + public void setTenantId(String tenantId) { + this.tenantId = tenantId; + } /** * @return the associated security group IDs @@ -270,19 +250,20 @@ public List getSecurityGroups() { } /** - * @param securityGroups IDs of security groups to associate to the port + * @param securityGroups + * IDs of security groups to associate to the port */ public void setSecurityGroups(List securityGroups) { this.securityGroups = securityGroups; } @Override - public String toString() { - return "Port [id=" + id + ", name=" + name + ", mac_address=" - + macAddress + ", admin_state_up=" + adminStateUp + ", device_id=" + deviceId - + ", device_owner=" + deviceOwner + ", fixed_ips=" + list - + ", network_id=" + networkId + ", status=" + status - + ", tenant_id=" + tenantId - + ", securityGroups=" + securityGroups + "]"; - } + public String toString() { + return "Port [id=" + id + ", name=" + name + ", mac_address=" + + macAddress + ", admin_state_up=" + adminStateUp + ", device_id=" + deviceId + + ", device_owner=" + deviceOwner + ", fixed_ips=" + list + + ", network_id=" + networkId + ", status=" + status + + ", tenant_id=" + tenantId + + ", securityGroups=" + securityGroups + "]"; + } } diff --git a/quantum-model/src/main/java/com/woorea/openstack/quantum/model/Ports.java b/quantum-model/src/main/java/com/woorea/openstack/quantum/model/Ports.java index d6d5f2764..5f10d35dd 100644 --- a/quantum-model/src/main/java/com/woorea/openstack/quantum/model/Ports.java +++ b/quantum-model/src/main/java/com/woorea/openstack/quantum/model/Ports.java @@ -6,31 +6,35 @@ import org.codehaus.jackson.annotate.JsonProperty; +@SuppressWarnings("serial") public class Ports implements Iterable, Serializable { - - @JsonProperty("ports") - private List list; - - /** - * @return the list - */ - public List getList() { - return list; - } - - /** - * @param list the list to set - */ - public void setList(List list) { - this.list = list; - } - - public Iterator iterator() { - return list.iterator(); - } - @Override - public String toString() { - return "Ports [list=" + list + "]"; - } + + @JsonProperty("ports") + private List list; + + /** + * @return the list + */ + public List getList() { + return list; + } + + /** + * @param list + * the list to set + */ + public void setList(List list) { + this.list = list; + } + + @Override + public Iterator iterator() { + return list.iterator(); + } + + @Override + public String toString() { + return "Ports [list=" + list + "]"; + } } From 0bd57c140f4c71f9f32b046c99c54b43b8cbe2e3 Mon Sep 17 00:00:00 2001 From: Frederic Dang Tran Date: Tue, 19 Nov 2013 15:36:14 +0100 Subject: [PATCH 060/144] Add missing server attribute --- .../woorea/openstack/nova/model/Image.java | 38 ++++++++++++++++++- 1 file changed, 37 insertions(+), 1 deletion(-) diff --git a/nova-model/src/main/java/com/woorea/openstack/nova/model/Image.java b/nova-model/src/main/java/com/woorea/openstack/nova/model/Image.java index 212169617..93949f234 100644 --- a/nova-model/src/main/java/com/woorea/openstack/nova/model/Image.java +++ b/nova-model/src/main/java/com/woorea/openstack/nova/model/Image.java @@ -10,6 +10,33 @@ @JsonRootName("image") public class Image implements Serializable { + + public static final class Server implements Serializable { + + private String id; + + private List links; + + /** + * @return the id + */ + public String getId() { + return id; + } + + /** + * @return the links + */ + public List getLinks() { + return links; + } + + @Override + public String toString() { + return "Server [id=" + id + ", links=" + links + "]"; + } + + } private String id; @@ -31,6 +58,8 @@ public class Image implements Serializable { private Long size; private Map metadata; + + private Server server; private List links; @@ -166,6 +195,13 @@ public Long getSize() { public void setMetadata(Map metadata) { this.metadata = metadata; } + + /** + * @return the server + */ + public Server getServer() { + return server; + } /** * @return the links @@ -190,7 +226,7 @@ public String toString() { + ", progress=" + progress + ", minRam=" + minRam + ", minDisk=" + minDisk + ", created=" + (created != null ? created.getTime() : null) + ", updated=" + (updated != null ? updated.getTime() : null) + ", size=" + size + ", metadata=" - + metadata + ", links=" + links + "]"; + + metadata + ", server="+server+", links=" + links + "]"; } } From 6b555b589994ddc024e6103e30396be33e1c7a75 Mon Sep 17 00:00:00 2001 From: Ben Nave Date: Wed, 20 Nov 2013 22:11:22 -0500 Subject: [PATCH 061/144] Added missing parameters to AbsoluteLimit Reorganized parameters in AbsoluteLimit into pairs (maxXyz and xyzUsed). Added missing parameters such as totalFloatingIpsUsed. Added method comments where missing. --- .../woorea/openstack/nova/model/Limits.java | 177 +++++++++++++----- 1 file changed, 132 insertions(+), 45 deletions(-) diff --git a/nova-model/src/main/java/com/woorea/openstack/nova/model/Limits.java b/nova-model/src/main/java/com/woorea/openstack/nova/model/Limits.java index 1d5f9c949..86e9acf3b 100644 --- a/nova-model/src/main/java/com/woorea/openstack/nova/model/Limits.java +++ b/nova-model/src/main/java/com/woorea/openstack/nova/model/Limits.java @@ -9,24 +9,24 @@ @JsonRootName("limits") public class Limits implements Serializable { - + public static final class RateLimit implements Serializable { - + public static final class LimitEntry implements Serializable { - + @JsonProperty("next-available") private Calendar nextAvailable; - + private String unit; - + private String verb; - + private Integer remaining; - + private Integer available; private Integer value; - + /** * @return the nextAvailable */ @@ -68,7 +68,10 @@ public Integer getAvailable() { public Integer getValue() { return value; } - /* (non-Javadoc) + + /* + * (non-Javadoc) + * * @see java.lang.Object#toString() */ @Override @@ -77,15 +80,13 @@ public String toString() { + unit + ", verb=" + verb + ", remaining=" + remaining + ", available=" + available + ", value=" + value + "]"; } - - - + } - + private String regex; - + private String uri; - + private List limit; /** @@ -109,7 +110,9 @@ public List getLimit() { return limit; } - /* (non-Javadoc) + /* + * (non-Javadoc) + * * @see java.lang.Object#toString() */ @Override @@ -117,50 +120,49 @@ public String toString() { return "RateLimit [regex=" + regex + ", uri=" + uri + ", limit=" + limit + "]"; } - + } - + public static final class AbsoluteLimit { - + private Integer maxServerMeta; - + private Integer serverMetaUsed; + private Integer maxPersonality; - + private Integer personalityUsed; + private Integer maxImageMeta; - + private Integer imageMetaUsed; + private Integer maxPersonalitySize; - + private Integer personalitySizeUsed; + private Integer maxTotalCores; - + private Integer totalCoresUsed; + private Integer maxTotalInstances; - - private Integer maxTotalRAMSize; + private Integer totalInstancesUsed; - private Integer totalVolumesUsed; + private Integer maxTotalRAMSize; + private Integer totalRAMUsed; private Integer maxSecurityGroupRules; + private Integer securityGroupRulesUsed; private Integer maxTotalKeypairs; - - private Integer totalCoresUsed; + private Integer totalKeyPairsUsed; private Integer maxTotalVolumes; - - private Integer totalRAMUsed; - - private Integer totalInstancesUsed; + private Integer totalVolumesUsed; private Integer maxSecurityGroups; - - private Integer totalVolumeGigabytesUsed; - private Integer totalSecurityGroupsUsed; private Integer maxTotalFloatingIps; - - private Integer totalKeyPairsUsed; + private Integer totalFloatingIpsUsed; private Integer maxTotalVolumeGigabytes; + private Integer totalVolumeGigabytesUsed; /** * @return the maxServerMeta @@ -211,59 +213,142 @@ public Integer getMaxTotalRAMSize() { return maxTotalRAMSize; } + /** + * @return the totalVolumesUsed + */ public Integer getTotalVolumesUsed() { return totalVolumesUsed; } + /** + * @return the maxSecurityGroupRules + */ public Integer getMaxSecurityGroupRules() { return maxSecurityGroupRules; } - + + /** + * @return the maxTotalKeypairs + */ public Integer getMaxTotalKeypairs() { return maxTotalKeypairs; } + /** + * @return the totalCoresUsed + */ public Integer getTotalCoresUsed() { return totalCoresUsed; } + /** + * @return the maxTotalVolumes + */ public Integer getMaxTotalVolumes() { return maxTotalVolumes; } + /** + * @return the totalRAMUsed + */ public Integer getTotalRAMUsed() { return totalRAMUsed; } + /** + * @return the totalInstancesUsed + */ public Integer getTotalInstancesUsed() { return totalInstancesUsed; } + /** + * @return the maxSecurityGroups + */ public Integer getMaxSecurityGroups() { return maxSecurityGroups; } - + + /** + * @return the totalVolumeGigabytesUsed + */ public Integer getTotalVolumeGigabytesUsed() { return totalVolumeGigabytesUsed; } + /** + * @return the totalSecurityGroupsUsed + */ public Integer getTotalSecurityGroupsUsed() { return totalSecurityGroupsUsed; } + /** + * @return the maxTotalFloatingIps + */ public Integer getMaxTotalFloatingIps() { return maxTotalFloatingIps; } + /** + * @return the totalKeyPairsUsed + */ public Integer getTotalKeyPairsUsed() { return totalKeyPairsUsed; } + /** + * @return the maxTotalVolumeGigabytes + */ public Integer getMaxTotalVolumeGigabytes() { return maxTotalVolumeGigabytes; } - /* (non-Javadoc) + /** + * @return the serverMetaUsed + */ + public Integer getServerMetaUsed() { + return serverMetaUsed; + } + + /** + * @return the personalityUsed + */ + public Integer getPersonalityUsed() { + return personalityUsed; + } + + /** + * @return the imageMetaUsed + */ + public Integer getImageMetaUsed() { + return imageMetaUsed; + } + + /** + * @return the personalitySizeUsed + */ + public Integer getPersonalitySizeUsed() { + return personalitySizeUsed; + } + + /** + * @return the securityGroupRulesUsed + */ + public Integer getSecurityGroupRulesUsed() { + return securityGroupRulesUsed; + } + + /** + * @return the totalFloatingIpsUsed + */ + public Integer getTotalFloatingIpsUsed() { + return totalFloatingIpsUsed; + } + + /* + * (non-Javadoc) + * * @see java.lang.Object#toString() */ @Override @@ -275,11 +360,11 @@ public String toString() { + ", maxTotalInstances=" + maxTotalInstances + ", maxTotalRAMSize=" + maxTotalRAMSize + "]"; } - + } - + private List rate; - + private AbsoluteLimit absolute; /** @@ -296,7 +381,9 @@ public AbsoluteLimit getAbsolute() { return absolute; } - /* (non-Javadoc) + /* + * (non-Javadoc) + * * @see java.lang.Object#toString() */ @Override From 9e4631326d55730d57fa27380dd5016cb974c47c Mon Sep 17 00:00:00 2001 From: Mike Kolesnik Date: Mon, 25 Nov 2013 12:30:30 +0200 Subject: [PATCH 062/144] neutron: Add tenant id for subnet for create Tenant id is necessary if not using auth. Signed-off-by: Mike Kolesnik --- .../quantum/model/SubnetForCreate.java | 18 +++++++++++++++--- 1 file changed, 15 insertions(+), 3 deletions(-) diff --git a/quantum-model/src/main/java/com/woorea/openstack/quantum/model/SubnetForCreate.java b/quantum-model/src/main/java/com/woorea/openstack/quantum/model/SubnetForCreate.java index 1eb42de11..649c495b3 100644 --- a/quantum-model/src/main/java/com/woorea/openstack/quantum/model/SubnetForCreate.java +++ b/quantum-model/src/main/java/com/woorea/openstack/quantum/model/SubnetForCreate.java @@ -18,6 +18,8 @@ public class SubnetForCreate implements Serializable{ private String cidr; @JsonProperty("allocation_pools") private List list; + @JsonProperty("tenant_id") + private String tenantId; /** * @param name the name to set @@ -89,7 +91,17 @@ public void setList(List list) { this.list = list; } - - - + /** + * @return the tenantId + */ + public String getTenantId() { + return tenantId; + } + + /** + * @param tenantId the tenantId to set + */ + public void setTenantId(String tenantId) { + this.tenantId = tenantId; + } } From 07adf20e8d1d0e7d527b47e57ad3fc4a9819d987 Mon Sep 17 00:00:00 2001 From: Nicolas Rivierre Date: Fri, 20 Dec 2013 17:06:06 +0100 Subject: [PATCH 063/144] Fix reboot server --- .../java/com/woorea/openstack/nova/api/ServersResource.java | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/nova-client/src/main/java/com/woorea/openstack/nova/api/ServersResource.java b/nova-client/src/main/java/com/woorea/openstack/nova/api/ServersResource.java index 9ba01b68a..c2a277311 100644 --- a/nova-client/src/main/java/com/woorea/openstack/nova/api/ServersResource.java +++ b/nova-client/src/main/java/com/woorea/openstack/nova/api/ServersResource.java @@ -178,6 +178,12 @@ public RebootAction(String id, Reboot action) { } + public RebootAction reboot(String serverId, String rebootType) { + Reboot reboot = new Reboot(); + reboot.setType(rebootType); + return new RebootAction(serverId, reboot); + } + public class RebuildAction extends Action { private Rebuild action; From 5617a09e07990c56b0ac7be00d853880d48b9f48 Mon Sep 17 00:00:00 2001 From: Sergey Kovalyov Date: Tue, 28 Jan 2014 18:05:29 +0200 Subject: [PATCH 064/144] Fix password field name Fix password field name according to OpenStack documentation http://api.openstack.org/api-ref-identity.html#identity-v2. Example of json request { "user": { "username": "jqsmith", "email": "john.smith@example.org", "enabled": true, "OS-KSADM:password": "secrete" } } --- .../src/main/java/com/woorea/openstack/keystone/model/User.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/keystone-model/src/main/java/com/woorea/openstack/keystone/model/User.java b/keystone-model/src/main/java/com/woorea/openstack/keystone/model/User.java index 53271f46b..a308d609e 100644 --- a/keystone-model/src/main/java/com/woorea/openstack/keystone/model/User.java +++ b/keystone-model/src/main/java/com/woorea/openstack/keystone/model/User.java @@ -12,7 +12,7 @@ public class User implements Serializable { private String username; - @JsonProperty("OS_KSADM_password") + @JsonProperty("OS-KSADM:password") private String password; private String tenantId; From a73735c88a9834493e06787ed31c9568bf420f44 Mon Sep 17 00:00:00 2001 From: Sergey Kovalyov Date: Wed, 29 Jan 2014 19:49:11 +0200 Subject: [PATCH 065/144] Allow Acepted response status On call nova.servers().boot(serverForCreate).execute() OpenStack return Accepted status. --- .../java/com/woorea/openstack/connector/RESTEasyConnector.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/openstack-client-connectors/resteasy-connector/src/main/java/com/woorea/openstack/connector/RESTEasyConnector.java b/openstack-client-connectors/resteasy-connector/src/main/java/com/woorea/openstack/connector/RESTEasyConnector.java index cc6ba824b..2345d5fc9 100644 --- a/openstack-client-connectors/resteasy-connector/src/main/java/com/woorea/openstack/connector/RESTEasyConnector.java +++ b/openstack-client-connectors/resteasy-connector/src/main/java/com/woorea/openstack/connector/RESTEasyConnector.java @@ -107,7 +107,8 @@ public OpenStackResponse request(OpenStackRequest request) { if (response.getStatus() == HttpStatus.SC_OK || response.getStatus() == HttpStatus.SC_CREATED - || response.getStatus() == HttpStatus.SC_NO_CONTENT) { + || response.getStatus() == HttpStatus.SC_NO_CONTENT + || response.getStatus() == HttpStatus.SC_ACCEPTED) { return new RESTEasyResponse(client, response); } From ca60e1c8f82cb23aa825c3ce7278084a3f666767 Mon Sep 17 00:00:00 2001 From: Sergey Kovalyov Date: Wed, 29 Jan 2014 19:52:22 +0200 Subject: [PATCH 066/144] Disable fail on unknown properties OpenStack could have specific extensions which add fields to response, to avoid unexpected fields just ignore them. --- .../java/com/woorea/openstack/connector/RESTEasyConnector.java | 2 ++ 1 file changed, 2 insertions(+) diff --git a/openstack-client-connectors/resteasy-connector/src/main/java/com/woorea/openstack/connector/RESTEasyConnector.java b/openstack-client-connectors/resteasy-connector/src/main/java/com/woorea/openstack/connector/RESTEasyConnector.java index 2345d5fc9..c70052b9f 100644 --- a/openstack-client-connectors/resteasy-connector/src/main/java/com/woorea/openstack/connector/RESTEasyConnector.java +++ b/openstack-client-connectors/resteasy-connector/src/main/java/com/woorea/openstack/connector/RESTEasyConnector.java @@ -63,6 +63,7 @@ public ObjectMapper getContext(Class type) { DEFAULT_MAPPER.setSerializationInclusion(Inclusion.NON_NULL); DEFAULT_MAPPER.enable(SerializationConfig.Feature.INDENT_OUTPUT); DEFAULT_MAPPER.enable(DeserializationConfig.Feature.ACCEPT_SINGLE_VALUE_AS_ARRAY); + DEFAULT_MAPPER.disable(DeserializationConfig.Feature.FAIL_ON_UNKNOWN_PROPERTIES); WRAPPED_MAPPER = new ObjectMapper(); @@ -71,6 +72,7 @@ public ObjectMapper getContext(Class type) { WRAPPED_MAPPER.enable(SerializationConfig.Feature.WRAP_ROOT_VALUE); WRAPPED_MAPPER.enable(DeserializationConfig.Feature.UNWRAP_ROOT_VALUE); WRAPPED_MAPPER.enable(DeserializationConfig.Feature.ACCEPT_SINGLE_VALUE_AS_ARRAY); + WRAPPED_MAPPER.disable(DeserializationConfig.Feature.FAIL_ON_UNKNOWN_PROPERTIES); providerFactory = new OpenStackProviderFactory(); } From 4b74d58fc833b532568e9ace9622c990d5cb6d9d Mon Sep 17 00:00:00 2001 From: kovaliovs Date: Mon, 3 Feb 2014 14:41:27 +0200 Subject: [PATCH 067/144] Fix/implement create image --- .../openstack/nova/api/ServersResource.java | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/nova-client/src/main/java/com/woorea/openstack/nova/api/ServersResource.java b/nova-client/src/main/java/com/woorea/openstack/nova/api/ServersResource.java index 9ba01b68a..b011db2fc 100644 --- a/nova-client/src/main/java/com/woorea/openstack/nova/api/ServersResource.java +++ b/nova-client/src/main/java/com/woorea/openstack/nova/api/ServersResource.java @@ -214,15 +214,13 @@ public ReverResizeAction(String id) { } - public class CreateImageAction extends Action { + public class CreateImageAction extends Action { - private CreateImage action; + public CreateImageAction(String id, CreateImage createImage) { + super(id, Entity.json(createImage), Void.class); + } - public CreateImageAction(String id) { - super(id, Entity.json(new CreateImage()), Server.class); - } - - } + } public class StartServer extends OpenStackRequest { @@ -248,6 +246,10 @@ public StopServer(String id) { } + public CreateImageAction createImage(String id, CreateImage createImage) { + return new CreateImageAction(id, createImage); + } + public StartServer start(String id) { return new StartServer(id); } From a499d837d1c049edb51da8411affbdd72144ff9a Mon Sep 17 00:00:00 2001 From: Mike Kolesnik Date: Thu, 13 Feb 2014 10:14:48 +0200 Subject: [PATCH 068/144] neutron: Add unit test from Port Added tests for port serialization/deserialization Signed-off-by: Mike Kolesnik --- quantum-model/pom.xml | 8 + .../openstack/quantum/model/PortTest.java | 151 ++++++++++++++++++ 2 files changed, 159 insertions(+) create mode 100644 quantum-model/src/test/java/com/woorea/openstack/quantum/model/PortTest.java diff --git a/quantum-model/pom.xml b/quantum-model/pom.xml index bdffd793b..c03038e8f 100644 --- a/quantum-model/pom.xml +++ b/quantum-model/pom.xml @@ -8,4 +8,12 @@ quantum-model OpenStack Quantum Model OpenStack Quantum Model + + + junit + junit + 4.10 + test + + diff --git a/quantum-model/src/test/java/com/woorea/openstack/quantum/model/PortTest.java b/quantum-model/src/test/java/com/woorea/openstack/quantum/model/PortTest.java new file mode 100644 index 000000000..0112805af --- /dev/null +++ b/quantum-model/src/test/java/com/woorea/openstack/quantum/model/PortTest.java @@ -0,0 +1,151 @@ +package com.woorea.openstack.quantum.model; + +import static org.hamcrest.CoreMatchers.equalTo; +import static org.hamcrest.CoreMatchers.is; +import static org.hamcrest.CoreMatchers.not; +import static org.junit.Assert.assertThat; +import static org.junit.matchers.JUnitMatchers.containsString; +import static org.junit.matchers.JUnitMatchers.hasItem; + +import java.util.ArrayList; +import java.util.Arrays; +import java.util.List; + +import org.codehaus.jackson.map.DeserializationConfig; +import org.codehaus.jackson.map.ObjectMapper; +import org.codehaus.jackson.map.SerializationConfig; +import org.codehaus.jackson.map.annotate.JsonSerialize.Inclusion; +import org.hamcrest.BaseMatcher; +import org.hamcrest.Description; +import org.junit.Before; +import org.junit.Test; + +import com.woorea.openstack.quantum.model.Port.Ip; + +public class PortTest { + + private static final String TENANT_ID = "tenantId"; + + private static final String STATUS = "status"; + + private static final String NETWORK_ID = "networkId"; + + private static final String NAME = "name"; + + private static final String MAC_ADDRESS = "macAddress"; + + private static final String DEVICE_OWNER = "deviceOwner"; + + private static final String DEVICE_ID = "deviceId"; + + private static final String IP_SUBNET_ID = "ipSubnetId"; + + private static final String IP_ADDRESS = "10.0.0.1"; + + private static final boolean ADMIN_STATE_UP = true; + + private static final String SEC_GROUP = "secGroup"; + + private static final String ID = "testId"; + + /** + * JSON with read only attributes. + */ + private static final String PORT_JSON = "{" + + " \"port\" : {" + + " \"id\" : \"" + ID + "\"," + + " \"status\" : \"" + STATUS + "\"" + + " }" + + "}"; + + private ObjectMapper objectMapper; + + private String serializedPort; + + @Before + public void setUp() throws Exception { + objectMapper = new ObjectMapper(); + objectMapper.setSerializationInclusion(Inclusion.NON_NULL); + objectMapper.enable(SerializationConfig.Feature.INDENT_OUTPUT); + objectMapper.enable(SerializationConfig.Feature.WRAP_ROOT_VALUE); + objectMapper.enable(DeserializationConfig.Feature.UNWRAP_ROOT_VALUE); + objectMapper.enable(DeserializationConfig.Feature.ACCEPT_SINGLE_VALUE_AS_ARRAY); + } + + @Test + public void testSerialization() throws Exception { + Port port = new Port(); + port.setId(ID); + port.setAdminStateUp(ADMIN_STATE_UP); + port.setSecurityGroups(Arrays.asList(SEC_GROUP)); + port.setDeviceId(DEVICE_ID); + port.setDeviceOwner(DEVICE_OWNER); + port.setMacAddress(MAC_ADDRESS); + port.setName(NAME); + port.setNetworkId(NETWORK_ID); + port.setStatus(STATUS); + port.setTenantId(TENANT_ID); + + List ips = new ArrayList(); + Ip ip = new Ip(); + ip.setAddress(IP_ADDRESS); + ip.setSubnetId(IP_SUBNET_ID); + ips.add(ip); + port.setList(ips); + + serializedPort = objectMapper.writeValueAsString(port); + assertThat(serializedPort, not(containsString(ID))); + assertThat(serializedPort, not(containsString(STATUS))); + assertThat(serializedPort, containsString("\"admin_state_up\" : " + ADMIN_STATE_UP)); + assertThat(serializedPort, containsString(SEC_GROUP)); + assertThat(serializedPort, containsString(IP_ADDRESS)); + assertThat(serializedPort, containsString(DEVICE_ID)); + assertThat(serializedPort, containsString(DEVICE_OWNER)); + assertThat(serializedPort, containsString(MAC_ADDRESS)); + assertThat(serializedPort, containsString(NAME)); + assertThat(serializedPort, containsString(NETWORK_ID)); + assertThat(serializedPort, containsString(TENANT_ID)); + } + + @Test + public void testDeserializationReadOnlyFields() throws Exception { + Port port = objectMapper.readValue(PORT_JSON, Port.class); + + assertThat(port.getId(), is(equalTo(ID))); + assertThat(port.getStatus(), is(equalTo(STATUS))); + } + + @Test + public void testDeserializationAfterSerialization() throws Exception { + testSerialization(); + Port port = objectMapper.readValue(serializedPort, Port.class); + + assertThat(port.getAdminStateUp(), is(equalTo(ADMIN_STATE_UP))); + assertThat(port.getDeviceId(), is(equalTo(DEVICE_ID))); + assertThat(port.getDeviceOwner(), is(equalTo(DEVICE_OWNER))); + assertThat(port.getMacAddress(), is(equalTo(MAC_ADDRESS))); + assertThat(port.getName(), is(equalTo(NAME))); + assertThat(port.getNetworkId(), is(equalTo(NETWORK_ID))); + assertThat(port.getTenantId(), is(equalTo(TENANT_ID))); + + assertThat(port.getSecurityGroups(), hasItem(equalTo(SEC_GROUP))); + assertThat(port.getList(), hasItem(new IpMatcher())); + } + + private final class IpMatcher extends BaseMatcher { + @Override + public boolean matches(Object item) { + assertThat(item, is(Ip.class)); + Ip ip = (Ip) item; + return IP_ADDRESS.equals(ip.getAddress()) && IP_SUBNET_ID.equals(ip.getSubnetId()); + } + + @Override + public void describeTo(Description description) { + description.appendText("an Ip object with address "); + description.appendValue(IP_ADDRESS); + description.appendText(" and subnet id "); + description.appendValue(IP_SUBNET_ID); + } + } +} From 055bcbd8d3ccdd70f2bc52977cf741395aabc63d Mon Sep 17 00:00:00 2001 From: Mike Kolesnik Date: Mon, 17 Feb 2014 12:39:47 +0200 Subject: [PATCH 069/144] neutron: Format Subnet class Signed-off-by: Mike Kolesnik --- .../openstack/quantum/model/Subnet.java | 483 +++++++++--------- 1 file changed, 244 insertions(+), 239 deletions(-) diff --git a/quantum-model/src/main/java/com/woorea/openstack/quantum/model/Subnet.java b/quantum-model/src/main/java/com/woorea/openstack/quantum/model/Subnet.java index a4df31694..8209874b1 100644 --- a/quantum-model/src/main/java/com/woorea/openstack/quantum/model/Subnet.java +++ b/quantum-model/src/main/java/com/woorea/openstack/quantum/model/Subnet.java @@ -4,251 +4,256 @@ import java.util.List; import org.codehaus.jackson.annotate.JsonCreator; +import org.codehaus.jackson.annotate.JsonIgnore; import org.codehaus.jackson.annotate.JsonIgnoreProperties; import org.codehaus.jackson.annotate.JsonProperty; import org.codehaus.jackson.annotate.JsonValue; import org.codehaus.jackson.map.annotate.JsonRootName; +@SuppressWarnings("serial") @JsonRootName("subnet") @JsonIgnoreProperties(ignoreUnknown = true) -public class Subnet implements Serializable{ - - private String name; - @JsonProperty("enable_dhcp") - private boolean enableDHCP; - @JsonProperty("network_id") - private String networkId; - @JsonProperty("tenant_id") - private String tenantId; - @JsonProperty("dns_nameservers") - private List dnsNames; - @JsonProperty("allocation_pools") - private List list; - @JsonProperty("host_routes") - private List hostRoutes; - @JsonProperty("ip_version") - private IpVersion ipversion; - @JsonProperty("gateway_ip") - private String gw; - private String cidr; - private String id; - - public static enum IpVersion implements Serializable { - IPV4(4), IPV6(6); - private int code; - - IpVersion(int code) { - this.code = code; - } - - @JsonValue - public int code() { - return code; - } - - @JsonCreator - public static IpVersion valueOf(int value) { - for (IpVersion ipVersion : IpVersion.values()) { - if (ipVersion.code() == value) { - return ipVersion; - } - } - return IPV4; - } - - @Override - public String toString() { - return String.valueOf(code); - } - } - - - /** - * @return the name - */ - public String getName() { - return name; - } - - - /** - * @param name the name to set - */ - public void setName(String name) { - this.name = name; - } - - - /** - * @return the enableDHCP - */ - public boolean isEnableDHCP() { - return enableDHCP; - } - - - /** - * @param enableDHCP the enableDHCP to set - */ - public void setEnableDHCP(boolean enableDHCP) { - this.enableDHCP = enableDHCP; - } - - - /** - * @return the networkId - */ - public String getNetworkId() { - return networkId; - } - - - /** - * @param networkId the networkId to set - */ - public void setNetworkId(String networkId) { - this.networkId = networkId; - } - - - /** - * @return the tenantId - */ - public String getTenantId() { - return tenantId; - } - - - /** - * @param tenantId the tenantId to set - */ - public void setTenantId(String tenantId) { - this.tenantId = tenantId; - } - - - /** - * @return the dnsNames - */ - public List getDnsNames() { - return dnsNames; - } - - - /** - * @param dnsNames the dnsNames to set - */ - public void setDnsNames(List dnsNames) { - this.dnsNames = dnsNames; - } - - - /** - * @return the list - */ - public List getList() { - return list; - } - - - /** - * @param list the list to set - */ - public void setList(List list) { - this.list = list; - } - - - /** - * @return the hostRoutes - */ - public List getHostRoutes() { - return hostRoutes; - } - - - /** - * @param hostRoutes the hostRoutes to set - */ - public void setHostRoutes(List hostRoutes) { - this.hostRoutes = hostRoutes; - } - - - /** - * @return the ipversion - */ - public IpVersion getIpversion() { - return ipversion; - } - - - /** - * @param ipversion the ipversion to set - */ - public void setIpversion(IpVersion ipversion) { - this.ipversion = ipversion; - } - - - /** - * @return the gw - */ - public String getGw() { - return gw; - } - - - /** - * @param gw the gw to set - */ - public void setGw(String gw) { - this.gw = gw; - } - - - /** - * @return the cidr - */ - public String getCidr() { - return cidr; - } - - - /** - * @param cidr the cidr to set - */ - public void setCidr(String cidr) { - this.cidr = cidr; - } - - - /** - * @return the id - */ - public String getId() { - return id; - } - - - /** - * @param id the id to set - */ - public void setId(String id) { - this.id = id; - } - - - /* (non-Javadoc) - * @see java.lang.Object#toString() - */ - @Override - public String toString() { - return "Subnet [id=" + id + ", name=" + name + ", network_id=" - + networkId + ", tenant_id=" + tenantId + ", allocation_pools=" + list - + ", gateway_ip=" + gw + ", ip_version=" + ipversion - + ", cidr=" + cidr + ", enable_dhcp=" + enableDHCP + ", dns_nameservers=" - + dnsNames + ", host_routes=" + hostRoutes + "]"; - } +public class Subnet implements Serializable { + + private String name; + + @JsonProperty("enable_dhcp") + private boolean enableDHCP; + + @JsonProperty("network_id") + private String networkId; + + @JsonProperty("tenant_id") + private String tenantId; + + @JsonProperty("dns_nameservers") + private List dnsNames; + + @JsonProperty("allocation_pools") + private List list; + + @JsonProperty("host_routes") + private List hostRoutes; + + @JsonProperty("ip_version") + private IpVersion ipversion; + + @JsonProperty("gateway_ip") + private String gw; + + private String cidr; + + private String id; + + public static enum IpVersion implements Serializable { + IPV4(4), + IPV6(6); + private int code; + + IpVersion(int code) { + this.code = code; + } + + @JsonValue + public int code() { + return code; + } + + @JsonCreator + public static IpVersion valueOf(int value) { + for (IpVersion ipVersion : IpVersion.values()) { + if (ipVersion.code() == value) { + return ipVersion; + } + } + return IPV4; + } + + @Override + public String toString() { + return String.valueOf(code); + } + } + + /** + * @return the name + */ + public String getName() { + return name; + } + + /** + * @param name + * the name to set + */ + public void setName(String name) { + this.name = name; + } + + /** + * @return the enableDHCP + */ + public boolean isEnableDHCP() { + return enableDHCP; + } + + /** + * @param enableDHCP + * the enableDHCP to set + */ + public void setEnableDHCP(boolean enableDHCP) { + this.enableDHCP = enableDHCP; + } + + /** + * @return the networkId + */ + public String getNetworkId() { + return networkId; + } + + /** + * @param networkId + * the networkId to set + */ + public void setNetworkId(String networkId) { + this.networkId = networkId; + } + + /** + * @return the tenantId + */ + public String getTenantId() { + return tenantId; + } + + /** + * @param tenantId + * the tenantId to set + */ + public void setTenantId(String tenantId) { + this.tenantId = tenantId; + } + + /** + * @return the dnsNames + */ + public List getDnsNames() { + return dnsNames; + } + + /** + * @param dnsNames + * the dnsNames to set + */ + public void setDnsNames(List dnsNames) { + this.dnsNames = dnsNames; + } + + /** + * @return the list + */ + public List getList() { + return list; + } + + /** + * @param list + * the list to set + */ + public void setList(List list) { + this.list = list; + } + + /** + * @return the hostRoutes + */ + public List getHostRoutes() { + return hostRoutes; + } + + /** + * @param hostRoutes + * the hostRoutes to set + */ + public void setHostRoutes(List hostRoutes) { + this.hostRoutes = hostRoutes; + } + + /** + * @return the ipversion + */ + public IpVersion getIpversion() { + return ipversion; + } + + /** + * @param ipversion + * the ipversion to set + */ + public void setIpversion(IpVersion ipversion) { + this.ipversion = ipversion; + } + + /** + * @return the gw + */ + public String getGw() { + return gw; + } + + /** + * @param gw + * the gw to set + */ + public void setGw(String gw) { + this.gw = gw; + } + + /** + * @return the cidr + */ + public String getCidr() { + return cidr; + } + + /** + * @param cidr + * the cidr to set + */ + public void setCidr(String cidr) { + this.cidr = cidr; + } + + /** + * @return the id + */ + @JsonIgnore + public String getId() { + return id; + } + + /** + * @param id + * the id to set + */ + @JsonProperty + public void setId(String id) { + this.id = id; + } + + /* + * (non-Javadoc) + * + * @see java.lang.Object#toString() + */ + @Override + public String toString() { + return "Subnet [id=" + id + ", name=" + name + ", network_id=" + + networkId + ", tenant_id=" + tenantId + ", allocation_pools=" + list + + ", gateway_ip=" + gw + ", ip_version=" + ipversion + + ", cidr=" + cidr + ", enable_dhcp=" + enableDHCP + ", dns_nameservers=" + + dnsNames + ", host_routes=" + hostRoutes + "]"; + } } From 1b838b883bf647498d9fea5a8e7794008928f6d4 Mon Sep 17 00:00:00 2001 From: Mike Kolesnik Date: Sun, 23 Feb 2014 14:49:59 +0200 Subject: [PATCH 070/144] neutron: Unify Subnet entity Unified subnet entity with SubnetForCreate, deprecating the later as it's no longer necessary. Signed-off-by: Mike Kolesnik --- .../quantum/api/SubnetsResource.java | 5 +- .../quantum/model/SubnetForCreate.java | 113 +++----------- .../openstack/quantum/model/PortTest.java | 17 ++- .../openstack/quantum/model/SubnetTest.java | 140 ++++++++++++++++++ 4 files changed, 173 insertions(+), 102 deletions(-) create mode 100644 quantum-model/src/test/java/com/woorea/openstack/quantum/model/SubnetTest.java diff --git a/quantum-client/src/main/java/com/woorea/openstack/quantum/api/SubnetsResource.java b/quantum-client/src/main/java/com/woorea/openstack/quantum/api/SubnetsResource.java index d2d3e157f..ff889a979 100644 --- a/quantum-client/src/main/java/com/woorea/openstack/quantum/api/SubnetsResource.java +++ b/quantum-client/src/main/java/com/woorea/openstack/quantum/api/SubnetsResource.java @@ -6,7 +6,6 @@ import com.woorea.openstack.base.client.OpenStackClient; import com.woorea.openstack.base.client.OpenStackRequest; import com.woorea.openstack.quantum.model.Subnet; -import com.woorea.openstack.quantum.model.SubnetForCreate; import com.woorea.openstack.quantum.model.Subnets; public class SubnetsResource { @@ -21,7 +20,7 @@ public List list() { return new List(); } - public Create create(SubnetForCreate net){ + public Create create(Subnet net) { return new Create(net); } @@ -53,7 +52,7 @@ public Query(Subnet subnet) { public class Create extends OpenStackRequest { - public Create(SubnetForCreate subnet){ + public Create(Subnet subnet) { super(CLIENT, HttpMethod.POST, "subnets", Entity.json(subnet), Subnet.class); } } diff --git a/quantum-model/src/main/java/com/woorea/openstack/quantum/model/SubnetForCreate.java b/quantum-model/src/main/java/com/woorea/openstack/quantum/model/SubnetForCreate.java index 649c495b3..2c07ab255 100644 --- a/quantum-model/src/main/java/com/woorea/openstack/quantum/model/SubnetForCreate.java +++ b/quantum-model/src/main/java/com/woorea/openstack/quantum/model/SubnetForCreate.java @@ -1,107 +1,34 @@ package com.woorea.openstack.quantum.model; -import java.io.Serializable; -import java.util.List; - -import org.codehaus.jackson.annotate.JsonProperty; +import org.codehaus.jackson.annotate.JsonIgnore; import org.codehaus.jackson.map.annotate.JsonRootName; +/** + * Please use {@link Subnet} directly. + */ +@SuppressWarnings("serial") @JsonRootName("subnet") - -public class SubnetForCreate implements Serializable{ - - private String name; - @JsonProperty("network_id") - private String networkId; - @JsonProperty("ip_version") - private int ipVersion; - private String cidr; - @JsonProperty("allocation_pools") - private List list; - @JsonProperty("tenant_id") - private String tenantId; - - /** - * @param name the name to set - */ - public void setName(String name) { - this.name = name; - } - - /** - * @return the name - */ - public String getName() { - return name; - } - /** - * @return the id - */ - public String getNetworkId() { - return networkId; - } - - /** - * @param id the id to set - */ - public void setNetworkId(String id) { - this.networkId = id; - } - - - /** - * @return the ipVersion - */ - public int getIpVersion() { - return ipVersion; - } - - /** - * @param ipVersion the ipVersion to set - */ - public void setIpVersion(int ipVersion) { - this.ipVersion = ipVersion; - } - - /** - * @return the cidr - */ - public String getCidr() { - return cidr; - } - - /** - * @param cidr the cidr to set - */ - public void setCidr(String cidr) { - this.cidr = cidr; - } - - /** - * @return the list - */ - public List getList() { - return list; - } - - /** - * @param list the list to set - */ - public void setList(List list) { - this.list = list; - } +@Deprecated +public class SubnetForCreate extends Subnet { /** - * @return the tenantId + * @return the ipVersion + * @deprecated */ - public String getTenantId() { - return tenantId; + @Deprecated + @JsonIgnore + public int getIpVersion() { + return getIpversion().code(); } /** - * @param tenantId the tenantId to set + * @param ipVersion + * the ipVersion to set + * @deprecated */ - public void setTenantId(String tenantId) { - this.tenantId = tenantId; + @Deprecated + @JsonIgnore + public void setIpVersion(int ipVersion) { + setIpversion(IpVersion.valueOf(ipVersion)); } } diff --git a/quantum-model/src/test/java/com/woorea/openstack/quantum/model/PortTest.java b/quantum-model/src/test/java/com/woorea/openstack/quantum/model/PortTest.java index 0112805af..4255585d9 100644 --- a/quantum-model/src/test/java/com/woorea/openstack/quantum/model/PortTest.java +++ b/quantum-model/src/test/java/com/woorea/openstack/quantum/model/PortTest.java @@ -64,12 +64,17 @@ public class PortTest { @Before public void setUp() throws Exception { - objectMapper = new ObjectMapper(); - objectMapper.setSerializationInclusion(Inclusion.NON_NULL); - objectMapper.enable(SerializationConfig.Feature.INDENT_OUTPUT); - objectMapper.enable(SerializationConfig.Feature.WRAP_ROOT_VALUE); - objectMapper.enable(DeserializationConfig.Feature.UNWRAP_ROOT_VALUE); - objectMapper.enable(DeserializationConfig.Feature.ACCEPT_SINGLE_VALUE_AS_ARRAY); + objectMapper = initializeObjectMapper(); + } + + public static ObjectMapper initializeObjectMapper() { + ObjectMapper objectMapper = new ObjectMapper(); + objectMapper.setSerializationInclusion(Inclusion.NON_NULL) + .enable(SerializationConfig.Feature.INDENT_OUTPUT) + .enable(SerializationConfig.Feature.WRAP_ROOT_VALUE) + .enable(DeserializationConfig.Feature.UNWRAP_ROOT_VALUE) + .enable(DeserializationConfig.Feature.ACCEPT_SINGLE_VALUE_AS_ARRAY); + return objectMapper; } @Test diff --git a/quantum-model/src/test/java/com/woorea/openstack/quantum/model/SubnetTest.java b/quantum-model/src/test/java/com/woorea/openstack/quantum/model/SubnetTest.java new file mode 100644 index 000000000..1c3ded602 --- /dev/null +++ b/quantum-model/src/test/java/com/woorea/openstack/quantum/model/SubnetTest.java @@ -0,0 +1,140 @@ +package com.woorea.openstack.quantum.model; + +import static org.hamcrest.CoreMatchers.equalTo; +import static org.hamcrest.CoreMatchers.is; +import static org.hamcrest.CoreMatchers.not; +import static org.junit.Assert.assertThat; +import static org.junit.matchers.JUnitMatchers.containsString; +import static org.junit.matchers.JUnitMatchers.hasItem; + +import java.util.Arrays; + +import org.codehaus.jackson.map.ObjectMapper; +import org.hamcrest.BaseMatcher; +import org.hamcrest.Description; +import org.junit.Before; +import org.junit.Test; + +import com.woorea.openstack.quantum.model.Subnet.IpVersion; + +public class SubnetTest { + + private static final String POOL_END = "poolEnd"; + + private static final String POOL_START = "poolStart"; + + private static final String TENANT_ID = "tenantId"; + + private static final String NETWORK_ID = "networkId"; + + private static final String NAME = "name"; + + private static final String HOST_ROUTE = "hostRoute"; + + private static final String GATEWAY = "gw"; + + private static final boolean ENABLE_DHCP = true; + + private static final String ID = "testId"; + + private static final String CIDR = "10.0.0.0/8"; + + private static final String DNS_SERVER = "dnsServer"; + + private static final IpVersion IP_VERSION = IpVersion.IPV4; + + /** + * JSON with read only attributes. + */ + private static final String SUBNET_JSON = "{" + + " \"subnet\" : {" + + " \"id\" : \"" + ID + "\"" + + " }" + + "}"; + + private ObjectMapper objectMapper; + + private String serializedSubnet; + + @Before + public void setUp() throws Exception { + objectMapper = PortTest.initializeObjectMapper(); + } + + @Test + public void testSerialization() throws Exception { + Subnet subnet = new Subnet(); + subnet.setId(ID); + subnet.setCidr(CIDR); + subnet.setDnsNames(Arrays.asList(DNS_SERVER)); + subnet.setEnableDHCP(ENABLE_DHCP); + subnet.setIpversion(IP_VERSION); + subnet.setGw(GATEWAY); + subnet.setHostRoutes(Arrays.asList(HOST_ROUTE)); + subnet.setName(NAME); + subnet.setNetworkId(NETWORK_ID); + subnet.setTenantId(TENANT_ID); + + Pool pool = new Pool(); + pool.setStart(POOL_START); + pool.setEnd(POOL_END); + subnet.setList(Arrays.asList(pool)); + + serializedSubnet = objectMapper.writeValueAsString(subnet); + assertThat(serializedSubnet, not(containsString(ID))); + assertThat(serializedSubnet, containsString(CIDR)); + assertThat(serializedSubnet, containsString(DNS_SERVER)); + assertThat(serializedSubnet, containsString("\"enable_dhcp\" : " + ENABLE_DHCP)); + assertThat(serializedSubnet, containsString(Integer.toString(IP_VERSION.code()))); + assertThat(serializedSubnet, containsString(GATEWAY)); + assertThat(serializedSubnet, containsString(HOST_ROUTE)); + assertThat(serializedSubnet, containsString(NAME)); + assertThat(serializedSubnet, containsString(NETWORK_ID)); + assertThat(serializedSubnet, containsString(TENANT_ID)); + assertThat(serializedSubnet, containsString(POOL_START)); + assertThat(serializedSubnet, containsString(POOL_END)); + } + + @Test + public void testDeserializationReadOnlyFields() throws Exception { + Subnet subnet = objectMapper.readValue(SUBNET_JSON, Subnet.class); + + assertThat(subnet.getId(), is(equalTo(ID))); + } + + @Test + public void testDeserializationAfterSerialization() throws Exception { + testSerialization(); + Subnet subnet = objectMapper.readValue(serializedSubnet, Subnet.class); + + assertThat(subnet.getCidr(), is(equalTo(CIDR))); + assertThat(subnet.getDnsNames(), hasItem(equalTo(DNS_SERVER))); + assertThat(subnet.isEnableDHCP(), is(equalTo(ENABLE_DHCP))); + assertThat(subnet.getIpversion(), is(equalTo(IP_VERSION))); + assertThat(subnet.getGw(), is(equalTo(GATEWAY))); + assertThat(subnet.getHostRoutes(), hasItem(equalTo(HOST_ROUTE))); + assertThat(subnet.getName(), is(equalTo(NAME))); + assertThat(subnet.getNetworkId(), is(equalTo(NETWORK_ID))); + assertThat(subnet.getTenantId(), is(equalTo(TENANT_ID))); + assertThat(subnet.getList(), hasItem(new PoolMatcher())); + } + + private class PoolMatcher extends BaseMatcher { + + @Override + public void describeTo(Description description) { + description.appendText("a Pool object with start "); + description.appendValue(POOL_START); + description.appendText(" and end "); + description.appendValue(POOL_END); + } + + @Override + public boolean matches(Object item) { + assertThat(item, is(Pool.class)); + Pool pool = (Pool) item; + return POOL_START.equals(pool.getStart()) && POOL_END.equals(pool.getEnd()); + } + + } +} From 6188a6684b16e6605575db96509b573cab58755a Mon Sep 17 00:00:00 2001 From: Mike Kolesnik Date: Sun, 23 Feb 2014 16:08:49 +0200 Subject: [PATCH 071/144] neutron: Format Network class Signed-off-by: Mike Kolesnik --- .../openstack/quantum/model/Network.java | 440 +++++++++--------- 1 file changed, 209 insertions(+), 231 deletions(-) diff --git a/quantum-model/src/main/java/com/woorea/openstack/quantum/model/Network.java b/quantum-model/src/main/java/com/woorea/openstack/quantum/model/Network.java index b89ecc33c..683d6af75 100644 --- a/quantum-model/src/main/java/com/woorea/openstack/quantum/model/Network.java +++ b/quantum-model/src/main/java/com/woorea/openstack/quantum/model/Network.java @@ -7,237 +7,215 @@ import org.codehaus.jackson.annotate.JsonProperty; import org.codehaus.jackson.map.annotate.JsonRootName; +@SuppressWarnings("serial") @JsonRootName("network") @JsonIgnoreProperties(ignoreUnknown = true) -public class Network implements Serializable{ - - private String status; - private List subnets; - private String name; - @JsonProperty("provider:physical_network") - private String providerPhyNet; - @JsonProperty("admin_state_up") - private boolean adminStateUp; - @JsonProperty("tenant_id") - private String tenantId; - @JsonProperty("provider:network_type") - private String netType; - @JsonProperty("router:external") - private String routerExternal; - private String id; - private String shared; - @JsonProperty("provider:segmentation_id") - private String providerSegID; - - - - /** - * @return the status - */ - public String getStatus() { - return status; - } - - - - /** - * @param status the status to set - */ - public void setStatus(String status) { - this.status = status; - } - - - - /** - * @return the subnets - */ - public List getSubnets() { - return subnets; - } - - - - /** - * @param subnets the subnets to set - */ - public void setSubnets(List subnets) { - this.subnets = subnets; - } - - - - /** - * @return the name - */ - public String getName() { - return name; - } - - - - /** - * @param name the name to set - */ - public void setName(String name) { - this.name = name; - } - - - - /** - * @return the providerPhyNet - */ - public String getProviderPhyNet() { - return providerPhyNet; - } - - - - /** - * @param providerPhyNet the providerPhyNet to set - */ - public void setProviderPhyNet(String providerPhyNet) { - this.providerPhyNet = providerPhyNet; - } - - - - /** - * @return the adminStateUp - */ - public boolean isAdminStateUp() { - return adminStateUp; - } - - - - /** - * @param adminStateUp the adminStateUp to set - */ - public void setAdminStateUp(boolean adminStateUp) { - this.adminStateUp = adminStateUp; - } - - - - /** - * @return the tenantId - */ - public String getTenantId() { - return tenantId; - } - - - - /** - * @param tenantId the tenantId to set - */ - public void setTenantId(String tenantId) { - this.tenantId = tenantId; - } - - - - /** - * @return the netType - */ - public String getNetType() { - return netType; - } - - - - /** - * @param netType the netType to set - */ - public void setNetType(String netType) { - this.netType = netType; - } - - - - /** - * @return the routerExternal - */ - public String getRouterExternal() { - return routerExternal; - } - - - - /** - * @param routerExternal the routerExternal to set - */ - public void setRouterExternal(String routerExternal) { - this.routerExternal = routerExternal; - } - - - - /** - * @return the id - */ - public String getId() { - return id; - } - - - - /** - * @param id the id to set - */ - public void setId(String id) { - this.id = id; - } - - - - /** - * @return the shared - */ - public String getShared() { - return shared; - } - - - - /** - * @param shared the shared to set - */ - public void setShared(String shared) { - this.shared = shared; - } - - - - /** - * @return the providerSegID - */ - public String getProviderSegID() { - return providerSegID; - } - - - - /** - * @param providerSegID the providerSegID to set - */ - public void setProviderSegID(String providerSegID) { - this.providerSegID = providerSegID; - } - - - - /* (non-Javadoc) - * @see java.lang.Object#toString() - */ - @Override - public String toString() { - return "Network [id=" + id + ", name=" + name + ", subnets=" - + subnets + ", status=" + status + ", admin_state_up=" + adminStateUp + ", tenant_id=" + - tenantId + ", shared=" + shared + ", provider:physical_network=" + providerPhyNet + - ", provider:network_type=" + netType + ", router:external=" + routerExternal + - ", provider:segmentation_id=" + providerSegID + "]"; - } +public class Network implements Serializable { + + private String status; + + private List subnets; + + private String name; + + @JsonProperty("admin_state_up") + private boolean adminStateUp; + + @JsonProperty("tenant_id") + private String tenantId; + + @JsonProperty("provider:physical_network") + private String providerPhyNet; + + @JsonProperty("provider:network_type") + private String netType; + + @JsonProperty("provider:segmentation_id") + private String providerSegID; + + @JsonProperty("router:external") + private String routerExternal; + + private String id; + + private String shared; + + /** + * @return the status + */ + public String getStatus() { + return status; + } + + /** + * @param status + * the status to set + */ + public void setStatus(String status) { + this.status = status; + } + + /** + * @return the subnets + */ + public List getSubnets() { + return subnets; + } + + /** + * @param subnets + * the subnets to set + */ + public void setSubnets(List subnets) { + this.subnets = subnets; + } + + /** + * @return the name + */ + public String getName() { + return name; + } + + /** + * @param name + * the name to set + */ + public void setName(String name) { + this.name = name; + } + + /** + * @return the providerPhyNet + */ + public String getProviderPhyNet() { + return providerPhyNet; + } + + /** + * @param providerPhyNet + * the providerPhyNet to set + */ + public void setProviderPhyNet(String providerPhyNet) { + this.providerPhyNet = providerPhyNet; + } + + /** + * @return the adminStateUp + */ + public boolean isAdminStateUp() { + return adminStateUp; + } + + /** + * @param adminStateUp + * the adminStateUp to set + */ + public void setAdminStateUp(boolean adminStateUp) { + this.adminStateUp = adminStateUp; + } + + /** + * @return the tenantId + */ + public String getTenantId() { + return tenantId; + } + + /** + * @param tenantId + * the tenantId to set + */ + public void setTenantId(String tenantId) { + this.tenantId = tenantId; + } + + /** + * @return the netType + */ + public String getNetType() { + return netType; + } + + /** + * @param netType + * the netType to set + */ + public void setNetType(String netType) { + this.netType = netType; + } + + /** + * @return the routerExternal + */ + public String getRouterExternal() { + return routerExternal; + } + + /** + * @param routerExternal + * the routerExternal to set + */ + public void setRouterExternal(String routerExternal) { + this.routerExternal = routerExternal; + } + + /** + * @return the id + */ + public String getId() { + return id; + } + + /** + * @param id + * the id to set + */ + public void setId(String id) { + this.id = id; + } + + /** + * @return the shared + */ + public String getShared() { + return shared; + } + + /** + * @param shared + * the shared to set + */ + public void setShared(String shared) { + this.shared = shared; + } + + /** + * @return the providerSegID + */ + public String getProviderSegID() { + return providerSegID; + } + + /** + * @param providerSegID + * the providerSegID to set + */ + public void setProviderSegID(String providerSegID) { + this.providerSegID = providerSegID; + } + + /* + * (non-Javadoc) + * + * @see java.lang.Object#toString() + */ + @Override + public String toString() { + return "Network [id=" + id + ", name=" + name + ", subnets=" + + subnets + ", status=" + status + ", admin_state_up=" + adminStateUp + ", tenant_id=" + + tenantId + ", shared=" + shared + ", provider:physical_network=" + providerPhyNet + + ", provider:network_type=" + netType + ", router:external=" + routerExternal + + ", provider:segmentation_id=" + providerSegID + "]"; + } } From 8e65ebb62e11c518191ff523da01fcef6ba02d79 Mon Sep 17 00:00:00 2001 From: Mike Kolesnik Date: Sun, 23 Feb 2014 17:42:19 +0200 Subject: [PATCH 072/144] neutron: Unify Network entity Unified network entity with NetworkForCreate, deprecating the later as it's no longer necessary. Signed-off-by: Mike Kolesnik --- .../openstack/quantum/model/Network.java | 73 ++++++++++-- .../quantum/model/NetworkForCreate.java | 80 +------------ .../openstack/quantum/model/NetworkTest.java | 111 ++++++++++++++++++ 3 files changed, 175 insertions(+), 89 deletions(-) create mode 100644 quantum-model/src/test/java/com/woorea/openstack/quantum/model/NetworkTest.java diff --git a/quantum-model/src/main/java/com/woorea/openstack/quantum/model/Network.java b/quantum-model/src/main/java/com/woorea/openstack/quantum/model/Network.java index 683d6af75..88c98dd27 100644 --- a/quantum-model/src/main/java/com/woorea/openstack/quantum/model/Network.java +++ b/quantum-model/src/main/java/com/woorea/openstack/quantum/model/Network.java @@ -3,6 +3,7 @@ import java.io.Serializable; import java.util.List; +import org.codehaus.jackson.annotate.JsonIgnore; import org.codehaus.jackson.annotate.JsonIgnoreProperties; import org.codehaus.jackson.annotate.JsonProperty; import org.codehaus.jackson.map.annotate.JsonRootName; @@ -25,13 +26,13 @@ public class Network implements Serializable { private String tenantId; @JsonProperty("provider:physical_network") - private String providerPhyNet; + private String providerPhysicalNetwork; @JsonProperty("provider:network_type") - private String netType; + private String providerNetworkType; @JsonProperty("provider:segmentation_id") - private String providerSegID; + private Integer providerSegmentationId; @JsonProperty("router:external") private String routerExternal; @@ -43,6 +44,7 @@ public class Network implements Serializable { /** * @return the status */ + @JsonIgnore public String getStatus() { return status; } @@ -51,6 +53,7 @@ public String getStatus() { * @param status * the status to set */ + @JsonProperty public void setStatus(String status) { this.status = status; } @@ -58,6 +61,7 @@ public void setStatus(String status) { /** * @return the subnets */ + @JsonIgnore public List getSubnets() { return subnets; } @@ -66,6 +70,7 @@ public List getSubnets() { * @param subnets * the subnets to set */ + @JsonProperty public void setSubnets(List subnets) { this.subnets = subnets; } @@ -87,17 +92,23 @@ public void setName(String name) { /** * @return the providerPhyNet + * @deprecated */ + @Deprecated + @JsonIgnore public String getProviderPhyNet() { - return providerPhyNet; + return getProviderPhysicalNetwork(); } /** * @param providerPhyNet * the providerPhyNet to set + * @deprecated */ + @Deprecated + @JsonIgnore public void setProviderPhyNet(String providerPhyNet) { - this.providerPhyNet = providerPhyNet; + setProviderPhysicalNetwork(providerPhyNet); } /** @@ -132,17 +143,23 @@ public void setTenantId(String tenantId) { /** * @return the netType + * @deprecated */ + @Deprecated + @JsonIgnore public String getNetType() { - return netType; + return getProviderNetworkType(); } /** * @param netType * the netType to set + * @deprecated */ + @Deprecated + @JsonIgnore public void setNetType(String netType) { - this.netType = netType; + setProviderNetworkType(netType); } /** @@ -163,6 +180,7 @@ public void setRouterExternal(String routerExternal) { /** * @return the id */ + @JsonIgnore public String getId() { return id; } @@ -171,6 +189,7 @@ public String getId() { * @param id * the id to set */ + @JsonProperty public void setId(String id) { this.id = id; } @@ -192,17 +211,47 @@ public void setShared(String shared) { /** * @return the providerSegID + * @deprecated */ + @Deprecated + @JsonIgnore public String getProviderSegID() { - return providerSegID; + return getProviderSegmentationId() == null ? null : Integer.toString(getProviderSegmentationId()); } /** * @param providerSegID * the providerSegID to set + * @deprecated */ + @Deprecated + @JsonIgnore public void setProviderSegID(String providerSegID) { - this.providerSegID = providerSegID; + setProviderSegmentationId(providerSegID == null ? null : Integer.parseInt(providerSegID)); + } + + public String getProviderNetworkType() { + return providerNetworkType; + } + + public void setProviderNetworkType(String providerNetworkType) { + this.providerNetworkType = providerNetworkType; + } + + public String getProviderPhysicalNetwork() { + return providerPhysicalNetwork; + } + + public void setProviderPhysicalNetwork(String providerPhysicalNetwork) { + this.providerPhysicalNetwork = providerPhysicalNetwork; + } + + public Integer getProviderSegmentationId() { + return providerSegmentationId; + } + + public void setProviderSegmentationId(Integer providerSegmentationId) { + this.providerSegmentationId = providerSegmentationId; } /* @@ -214,8 +263,8 @@ public void setProviderSegID(String providerSegID) { public String toString() { return "Network [id=" + id + ", name=" + name + ", subnets=" + subnets + ", status=" + status + ", admin_state_up=" + adminStateUp + ", tenant_id=" + - tenantId + ", shared=" + shared + ", provider:physical_network=" + providerPhyNet + - ", provider:network_type=" + netType + ", router:external=" + routerExternal + - ", provider:segmentation_id=" + providerSegID + "]"; + tenantId + ", shared=" + shared + ", provider:physical_network=" + providerPhysicalNetwork + + ", provider:network_type=" + providerNetworkType + ", router:external=" + routerExternal + + ", provider:segmentation_id=" + providerSegmentationId + "]"; } } diff --git a/quantum-model/src/main/java/com/woorea/openstack/quantum/model/NetworkForCreate.java b/quantum-model/src/main/java/com/woorea/openstack/quantum/model/NetworkForCreate.java index a06d9d7f2..507e39b05 100644 --- a/quantum-model/src/main/java/com/woorea/openstack/quantum/model/NetworkForCreate.java +++ b/quantum-model/src/main/java/com/woorea/openstack/quantum/model/NetworkForCreate.java @@ -1,83 +1,9 @@ package com.woorea.openstack.quantum.model; -import java.io.Serializable; - -import org.codehaus.jackson.annotate.JsonProperty; import org.codehaus.jackson.map.annotate.JsonRootName; +@SuppressWarnings("serial") @JsonRootName("network") -public class NetworkForCreate implements Serializable{ - - private String name; - @JsonProperty("admin_state_up") - private boolean adminStateUp; - - @JsonProperty("provider:network_type") - private String providerNetworkType; - - @JsonProperty("provider:physical_network") - private String providerPhysicalNetwork; - - @JsonProperty("provider:segmentation_id") - private Integer providerSegmentationId; - - @JsonProperty("tenant_id") - private String tenantId; - - /** - * @return the name - */ - public String getName() { - return name; - } - /** - * @param name the name to set - */ - public void setName(String name) { - this.name = name; - } - /** - * @return the adminStateUp - */ - public boolean isAdminStateUp() { - return adminStateUp; - } - /** - * @param adminStateUp the adminStateUp to set - */ - public void setAdminStateUp(boolean adminStateUp) { - this.adminStateUp = adminStateUp; - } - - public String getProviderNetworkType() { - return providerNetworkType; - } - - public void setProviderNetworkType(String providerNetworkType) { - this.providerNetworkType = providerNetworkType; - } - - public String getProviderPhysicalNetwork() { - return providerPhysicalNetwork; - } - - public void setProviderPhysicalNetwork(String providerPhysicalNetwork) { - this.providerPhysicalNetwork = providerPhysicalNetwork; - } - - public Integer getProviderSegmentationId() { - return providerSegmentationId; - } - - public void setProviderSegmentationId(Integer providerSegmentationId) { - this.providerSegmentationId = providerSegmentationId; - } - - public String getTenantId() { - return tenantId; - } - - public void setTenantId(String tenantId) { - this.tenantId = tenantId; - } +@Deprecated +public class NetworkForCreate extends Network { } diff --git a/quantum-model/src/test/java/com/woorea/openstack/quantum/model/NetworkTest.java b/quantum-model/src/test/java/com/woorea/openstack/quantum/model/NetworkTest.java new file mode 100644 index 000000000..af1a3f155 --- /dev/null +++ b/quantum-model/src/test/java/com/woorea/openstack/quantum/model/NetworkTest.java @@ -0,0 +1,111 @@ +package com.woorea.openstack.quantum.model; + +import static org.hamcrest.CoreMatchers.equalTo; +import static org.hamcrest.CoreMatchers.is; +import static org.hamcrest.CoreMatchers.not; +import static org.junit.Assert.assertThat; +import static org.junit.matchers.JUnitMatchers.containsString; +import static org.junit.matchers.JUnitMatchers.hasItem; + +import java.util.Arrays; + +import org.codehaus.jackson.map.ObjectMapper; +import org.junit.Before; +import org.junit.Test; + +public class NetworkTest { + + private static final String ID = "testId"; + + private static final boolean ADMIN_STATE_UP = true; + + private static final String NAME = "name"; + + private static final String TENANT_ID = "tenantId"; + + private static final String SHARED = "shared"; + + private static final String STATUS = "status"; + + private static final String SUBNET = "subnet"; + + private static final String PROVIDER_NETWORK_TYPE = "vlan"; + + private static final String PROVIDER_PHYSICAL_NETWORK = "physicalNetwork"; + + private static final int PROVIDER_SEGMENTATION_ID = 100; + + private static final String ROUTER_EXTERNAL = "routerExternal"; + + /** + * JSON with read only attributes. + */ + private static final String NETWORK_JSON = "{" + + " \"network\" : {" + + " \"id\" : \"" + ID + "\"," + + " \"status\" : \"" + STATUS + "\"," + + " \"subnets\" : [ \"" + SUBNET + "\" ]" + + " }" + + "}"; + + private ObjectMapper objectMapper; + + private String serializedNetwork; + + @Before + public void setUp() throws Exception { + objectMapper = PortTest.initializeObjectMapper(); + } + + @Test + public void testSerialization() throws Exception { + Network network = new Network(); + network.setId(ID); + network.setProviderNetworkType(PROVIDER_NETWORK_TYPE); + network.setProviderPhysicalNetwork(PROVIDER_PHYSICAL_NETWORK); + network.setProviderSegmentationId(PROVIDER_SEGMENTATION_ID); + network.setAdminStateUp(ADMIN_STATE_UP); + network.setSubnets(Arrays.asList(SUBNET)); + network.setRouterExternal(ROUTER_EXTERNAL); + network.setName(NAME); + network.setShared(SHARED); + network.setTenantId(TENANT_ID); + + serializedNetwork = objectMapper.writeValueAsString(network); + assertThat(serializedNetwork, not(containsString(ID))); + assertThat(serializedNetwork, not(containsString(STATUS))); + assertThat(serializedNetwork, not(containsString(SUBNET))); + assertThat(serializedNetwork, containsString("\"admin_state_up\" : " + ADMIN_STATE_UP)); + assertThat(serializedNetwork, containsString(NAME)); + assertThat(serializedNetwork, containsString(SHARED)); + assertThat(serializedNetwork, containsString(TENANT_ID)); + assertThat(serializedNetwork, containsString(ROUTER_EXTERNAL)); + assertThat(serializedNetwork, containsString(PROVIDER_NETWORK_TYPE)); + assertThat(serializedNetwork, containsString(PROVIDER_PHYSICAL_NETWORK)); + assertThat(serializedNetwork, containsString(Integer.toString(PROVIDER_SEGMENTATION_ID))); + } + + @Test + public void testDeserializationReadOnlyFields() throws Exception { + Network network = objectMapper.readValue(NETWORK_JSON, Network.class); + + assertThat(network.getId(), is(equalTo(ID))); + assertThat(network.getSubnets(), hasItem(equalTo(SUBNET))); + assertThat(network.getStatus(), is(equalTo(STATUS))); + } + + @Test + public void testDeserialization() throws Exception { + testSerialization(); + Network network = objectMapper.readValue(serializedNetwork, Network.class); + + assertThat(network.getName(), is(equalTo(NAME))); + assertThat(network.isAdminStateUp(), is(equalTo(ADMIN_STATE_UP))); + assertThat(network.getShared(), is(equalTo(SHARED))); + assertThat(network.getTenantId(), is(equalTo(TENANT_ID))); + assertThat(network.getRouterExternal(), is(equalTo(ROUTER_EXTERNAL))); + assertThat(network.getProviderNetworkType(), is(equalTo(PROVIDER_NETWORK_TYPE))); + assertThat(network.getProviderPhysicalNetwork(), is(equalTo(PROVIDER_PHYSICAL_NETWORK))); + assertThat(network.getProviderSegmentationId(), is(equalTo(PROVIDER_SEGMENTATION_ID))); + } +} From 27b3cbadd42a8b3c220617206e8a77b1a2253741 Mon Sep 17 00:00:00 2001 From: Mike Kolesnik Date: Sun, 23 Feb 2014 17:42:19 +0200 Subject: [PATCH 073/144] neutron: Unify Network entity Unified network entity with NetworkForCreate, deprecating the later as it's no longer necessary. Signed-off-by: Mike Kolesnik --- .../com/woorea/openstack/quantum/api/NetworksResource.java | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/quantum-client/src/main/java/com/woorea/openstack/quantum/api/NetworksResource.java b/quantum-client/src/main/java/com/woorea/openstack/quantum/api/NetworksResource.java index 3c79eb026..a42068c23 100644 --- a/quantum-client/src/main/java/com/woorea/openstack/quantum/api/NetworksResource.java +++ b/quantum-client/src/main/java/com/woorea/openstack/quantum/api/NetworksResource.java @@ -6,7 +6,6 @@ import com.woorea.openstack.base.client.OpenStackClient; import com.woorea.openstack.base.client.OpenStackRequest; import com.woorea.openstack.quantum.model.Network; -import com.woorea.openstack.quantum.model.NetworkForCreate; import com.woorea.openstack.quantum.model.Networks; public class NetworksResource { @@ -21,7 +20,7 @@ public List list() { return new List(); } - public Create create(NetworkForCreate net){ + public Create create(Network net) { return new Create(net); } @@ -53,7 +52,7 @@ public Query(Network network) { public class Create extends OpenStackRequest { - public Create(NetworkForCreate net){ + public Create(Network net) { super(CLIENT, HttpMethod.POST, "networks", Entity.json(net), Network.class); } } From 37ef4434e7b7fa1f48456826421a7cc4eef04e1c Mon Sep 17 00:00:00 2001 From: Mike Kolesnik Date: Sun, 23 Feb 2014 20:27:51 +0200 Subject: [PATCH 074/144] neutron: Allow Subnet update Signed-off-by: Mike Kolesnik --- .../woorea/openstack/quantum/api/SubnetsResource.java | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/quantum-client/src/main/java/com/woorea/openstack/quantum/api/SubnetsResource.java b/quantum-client/src/main/java/com/woorea/openstack/quantum/api/SubnetsResource.java index ff889a979..1864604b2 100644 --- a/quantum-client/src/main/java/com/woorea/openstack/quantum/api/SubnetsResource.java +++ b/quantum-client/src/main/java/com/woorea/openstack/quantum/api/SubnetsResource.java @@ -24,6 +24,10 @@ public Create create(Subnet net) { return new Create(net); } + public Update update(Subnet net) { + return new Update(net); + } + public Delete delete(String netId){ return new Delete(netId); } @@ -57,6 +61,13 @@ public Create(Subnet subnet) { } } + public class Update extends OpenStackRequest { + + public Update(Subnet subnet) { + super(CLIENT, HttpMethod.PUT, buildPath("subnets/", subnet.getId()), Entity.json(subnet), Subnet.class); + } + } + public class Show extends OpenStackRequest { public Show(String id) { From 5116298c4e30a843b4ea0c8c09256944070a157f Mon Sep 17 00:00:00 2001 From: Mike Kolesnik Date: Sun, 23 Feb 2014 20:31:01 +0200 Subject: [PATCH 075/144] neutron: Allow Network update Signed-off-by: Mike Kolesnik --- .../openstack/quantum/api/NetworksResource.java | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/quantum-client/src/main/java/com/woorea/openstack/quantum/api/NetworksResource.java b/quantum-client/src/main/java/com/woorea/openstack/quantum/api/NetworksResource.java index a42068c23..97a919aba 100644 --- a/quantum-client/src/main/java/com/woorea/openstack/quantum/api/NetworksResource.java +++ b/quantum-client/src/main/java/com/woorea/openstack/quantum/api/NetworksResource.java @@ -24,6 +24,10 @@ public Create create(Network net) { return new Create(net); } + public Update update(Network net) { + return new Update(net); + } + public Delete delete(String netId){ return new Delete(netId); } @@ -57,6 +61,13 @@ public Create(Network net) { } } + public class Update extends OpenStackRequest { + + public Update(Network net) { + super(CLIENT, HttpMethod.PUT, buildPath("networks/", net.getId()), Entity.json(net), Network.class); + } + } + public class Show extends OpenStackRequest { public Show(String id) { From b6d54610614457407f0b0cf80e793052e222d907 Mon Sep 17 00:00:00 2001 From: Mike Kolesnik Date: Mon, 24 Feb 2014 11:48:26 +0200 Subject: [PATCH 076/144] neutron: Don't use primitives in entities Primitives are auto initialized to false, instead use boxed types to represent values that need to be serialized. Signed-off-by: Mike Kolesnik --- .../java/com/woorea/openstack/quantum/model/Network.java | 9 +++++++-- .../java/com/woorea/openstack/quantum/model/Subnet.java | 9 +++++++-- 2 files changed, 14 insertions(+), 4 deletions(-) diff --git a/quantum-model/src/main/java/com/woorea/openstack/quantum/model/Network.java b/quantum-model/src/main/java/com/woorea/openstack/quantum/model/Network.java index 88c98dd27..4490911e2 100644 --- a/quantum-model/src/main/java/com/woorea/openstack/quantum/model/Network.java +++ b/quantum-model/src/main/java/com/woorea/openstack/quantum/model/Network.java @@ -20,7 +20,7 @@ public class Network implements Serializable { private String name; @JsonProperty("admin_state_up") - private boolean adminStateUp; + private Boolean adminStateUp; @JsonProperty("tenant_id") private String tenantId; @@ -114,15 +114,20 @@ public void setProviderPhyNet(String providerPhyNet) { /** * @return the adminStateUp */ + @JsonIgnore public boolean isAdminStateUp() { return adminStateUp; } + public Boolean getAdminStateUp() { + return adminStateUp; + } + /** * @param adminStateUp * the adminStateUp to set */ - public void setAdminStateUp(boolean adminStateUp) { + public void setAdminStateUp(Boolean adminStateUp) { this.adminStateUp = adminStateUp; } diff --git a/quantum-model/src/main/java/com/woorea/openstack/quantum/model/Subnet.java b/quantum-model/src/main/java/com/woorea/openstack/quantum/model/Subnet.java index 8209874b1..73015146b 100644 --- a/quantum-model/src/main/java/com/woorea/openstack/quantum/model/Subnet.java +++ b/quantum-model/src/main/java/com/woorea/openstack/quantum/model/Subnet.java @@ -18,7 +18,7 @@ public class Subnet implements Serializable { private String name; @JsonProperty("enable_dhcp") - private boolean enableDHCP; + private Boolean enableDHCP; @JsonProperty("network_id") private String networkId; @@ -93,15 +93,20 @@ public void setName(String name) { /** * @return the enableDHCP */ + @JsonIgnore public boolean isEnableDHCP() { return enableDHCP; } + public Boolean getEnableDHCP() { + return enableDHCP; + } + /** * @param enableDHCP * the enableDHCP to set */ - public void setEnableDHCP(boolean enableDHCP) { + public void setEnableDHCP(Boolean enableDHCP) { this.enableDHCP = enableDHCP; } From 3d2f09e853e8eb8bb6049edcf7b794e442b98bf0 Mon Sep 17 00:00:00 2001 From: Mike Kolesnik Date: Mon, 24 Feb 2014 12:20:04 +0200 Subject: [PATCH 077/144] neutron: Test empty serialization of entities To avoid further confusion with fields having default values, added test for the serialization of an empty Port/Subnet/Network. Signed-off-by: Mike Kolesnik --- .../com/woorea/openstack/quantum/model/NetworkTest.java | 8 ++++++++ .../java/com/woorea/openstack/quantum/model/PortTest.java | 8 ++++++++ .../com/woorea/openstack/quantum/model/SubnetTest.java | 8 ++++++++ 3 files changed, 24 insertions(+) diff --git a/quantum-model/src/test/java/com/woorea/openstack/quantum/model/NetworkTest.java b/quantum-model/src/test/java/com/woorea/openstack/quantum/model/NetworkTest.java index af1a3f155..7bee7049f 100644 --- a/quantum-model/src/test/java/com/woorea/openstack/quantum/model/NetworkTest.java +++ b/quantum-model/src/test/java/com/woorea/openstack/quantum/model/NetworkTest.java @@ -85,6 +85,14 @@ public void testSerialization() throws Exception { assertThat(serializedNetwork, containsString(Integer.toString(PROVIDER_SEGMENTATION_ID))); } + @Test + public void testSerializationEmpty() throws Exception { + Network network = new Network(); + serializedNetwork = objectMapper.writeValueAsString(network); + + assertThat(serializedNetwork, containsString("\"network\" : { }")); + } + @Test public void testDeserializationReadOnlyFields() throws Exception { Network network = objectMapper.readValue(NETWORK_JSON, Network.class); diff --git a/quantum-model/src/test/java/com/woorea/openstack/quantum/model/PortTest.java b/quantum-model/src/test/java/com/woorea/openstack/quantum/model/PortTest.java index 4255585d9..04b2e9650 100644 --- a/quantum-model/src/test/java/com/woorea/openstack/quantum/model/PortTest.java +++ b/quantum-model/src/test/java/com/woorea/openstack/quantum/model/PortTest.java @@ -112,6 +112,14 @@ public void testSerialization() throws Exception { assertThat(serializedPort, containsString(TENANT_ID)); } + @Test + public void testSerializationEmpty() throws Exception { + Port port = new Port(); + serializedPort = objectMapper.writeValueAsString(port); + + assertThat(serializedPort, containsString("\"port\" : { }")); + } + @Test public void testDeserializationReadOnlyFields() throws Exception { Port port = objectMapper.readValue(PORT_JSON, Port.class); diff --git a/quantum-model/src/test/java/com/woorea/openstack/quantum/model/SubnetTest.java b/quantum-model/src/test/java/com/woorea/openstack/quantum/model/SubnetTest.java index 1c3ded602..aa8651406 100644 --- a/quantum-model/src/test/java/com/woorea/openstack/quantum/model/SubnetTest.java +++ b/quantum-model/src/test/java/com/woorea/openstack/quantum/model/SubnetTest.java @@ -95,6 +95,14 @@ public void testSerialization() throws Exception { assertThat(serializedSubnet, containsString(POOL_END)); } + @Test + public void testSerializationEmpty() throws Exception { + Subnet subnet = new Subnet(); + serializedSubnet = objectMapper.writeValueAsString(subnet); + + assertThat(serializedSubnet, containsString("\"subnet\" : { }")); + } + @Test public void testDeserializationReadOnlyFields() throws Exception { Subnet subnet = objectMapper.readValue(SUBNET_JSON, Subnet.class); From 92f4f37355157905513c341fe5ac205c2348214c Mon Sep 17 00:00:00 2001 From: OIKAWA Tetsuya Date: Tue, 25 Feb 2014 14:14:39 +0900 Subject: [PATCH 078/144] Added API to delete metadata on a running server --- .../woorea/openstack/nova/api/ServersResource.java | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/nova-client/src/main/java/com/woorea/openstack/nova/api/ServersResource.java b/nova-client/src/main/java/com/woorea/openstack/nova/api/ServersResource.java index 9ba01b68a..ab5466e23 100644 --- a/nova-client/src/main/java/com/woorea/openstack/nova/api/ServersResource.java +++ b/nova-client/src/main/java/com/woorea/openstack/nova/api/ServersResource.java @@ -66,7 +66,9 @@ public CreateOrUpdateMetadata createOrUpdateMetadata(String id,Metadata metadata public ReplaceMetadata replaceMetadata(String id,Metadata metadata) { return new ReplaceMetadata(id,metadata); } - + public DeleteMetadata deleteMetadata(String id, String key) { + return new DeleteMetadata(id,key); + } public Delete delete(String id) { return new Delete(id); @@ -122,6 +124,14 @@ public ReplaceMetadata(String id,Metadata metadata) { } + public class DeleteMetadata extends OpenStackRequest { + + public DeleteMetadata(String id,String key) { + super(CLIENT, HttpMethod.DELETE, new StringBuilder("/servers/").append(id).append("/metadata/").append(key), null, Void.class); + } + + } + public class Delete extends OpenStackRequest { From 2c07398fb014bb0e13abd6fdbff555e571858bed Mon Sep 17 00:00:00 2001 From: Daniel Kuffner Date: Sun, 2 Mar 2014 14:37:23 +0100 Subject: [PATCH 079/144] initial heat implementation --- heat-client/pom.xml | 24 ++++ .../java/com/woorea/openstack/heat/Heat.java | 25 ++++ .../woorea/openstack/heat/StackResource.java | 61 ++++++++++ heat-model/pom.xml | 11 ++ .../heat/model/CreateStackParam.java | 100 +++++++++++++++ .../openstack/heat/model/Explanation.java | 28 +++++ .../com/woorea/openstack/heat/model/Link.java | 35 ++++++ .../woorea/openstack/heat/model/Stack.java | 115 ++++++++++++++++++ .../woorea/openstack/heat/model/Stacks.java | 17 +++ openstack-examples/pom.xml | 5 + .../examples/heat/HeatListStacks.java | 92 ++++++++++++++ pom.xml | 2 + 12 files changed, 515 insertions(+) create mode 100644 heat-client/pom.xml create mode 100644 heat-client/src/main/java/com/woorea/openstack/heat/Heat.java create mode 100644 heat-client/src/main/java/com/woorea/openstack/heat/StackResource.java create mode 100644 heat-model/pom.xml create mode 100644 heat-model/src/main/java/com/woorea/openstack/heat/model/CreateStackParam.java create mode 100644 heat-model/src/main/java/com/woorea/openstack/heat/model/Explanation.java create mode 100644 heat-model/src/main/java/com/woorea/openstack/heat/model/Link.java create mode 100644 heat-model/src/main/java/com/woorea/openstack/heat/model/Stack.java create mode 100644 heat-model/src/main/java/com/woorea/openstack/heat/model/Stacks.java create mode 100644 openstack-examples/src/main/java/com/woorea/openstack/examples/heat/HeatListStacks.java diff --git a/heat-client/pom.xml b/heat-client/pom.xml new file mode 100644 index 000000000..7c63daf12 --- /dev/null +++ b/heat-client/pom.xml @@ -0,0 +1,24 @@ + + 4.0.0 + + com.woorea + openstack-java-sdk + 3.2.2-SNAPSHOT + + heat-client + OpenStack Heat Client + OpenStack Heat Client + + + com.woorea + openstack-client + 3.2.2-SNAPSHOT + + + + com.woorea + heat-model + 3.2.2-SNAPSHOT + + + \ No newline at end of file diff --git a/heat-client/src/main/java/com/woorea/openstack/heat/Heat.java b/heat-client/src/main/java/com/woorea/openstack/heat/Heat.java new file mode 100644 index 000000000..b389eb6bb --- /dev/null +++ b/heat-client/src/main/java/com/woorea/openstack/heat/Heat.java @@ -0,0 +1,25 @@ +package com.woorea.openstack.heat; + +import com.woorea.openstack.base.client.OpenStackClient; +import com.woorea.openstack.base.client.OpenStackClientConnector; + +/** + * Reference: http://api.openstack.org/api-ref-orchestration.html + */ +public class Heat extends OpenStackClient { + + private final StackResource stacks; + + public Heat(String endpoint, OpenStackClientConnector connector) { + super(endpoint, connector); + stacks = new StackResource(this); + } + + public Heat(String endpoint) { + this(endpoint, null); + } + + public StackResource getStacks() { + return stacks; + } +} diff --git a/heat-client/src/main/java/com/woorea/openstack/heat/StackResource.java b/heat-client/src/main/java/com/woorea/openstack/heat/StackResource.java new file mode 100644 index 000000000..de4577d3c --- /dev/null +++ b/heat-client/src/main/java/com/woorea/openstack/heat/StackResource.java @@ -0,0 +1,61 @@ +package com.woorea.openstack.heat; + +import com.woorea.openstack.base.client.Entity; +import com.woorea.openstack.base.client.HttpMethod; +import com.woorea.openstack.base.client.OpenStackClient; +import com.woorea.openstack.base.client.OpenStackRequest; +import com.woorea.openstack.heat.model.CreateStackParam; +import com.woorea.openstack.heat.model.Stack; +import com.woorea.openstack.heat.model.Stacks; + +public class StackResource { + + private final OpenStackClient client; + + public StackResource(OpenStackClient client) { + this.client = client; + } + + public CreateStack create(CreateStackParam param) { + return new CreateStack(param); + } + + public List list() { + return new List(); + } + + public GetStack byName(String name) { + return new GetStack(name); + } + + public DeleteStack deleteByName(String name) { + return new DeleteStack(name); + } + + public class CreateStack extends OpenStackRequest { + public CreateStack(CreateStackParam params) { + super(client, HttpMethod.POST, "/stacks", Entity.json(params), Stack.class); + } + } + + public class DeleteStack extends OpenStackRequest { + public DeleteStack(String name) { + super(client, HttpMethod.DELETE, "/stacks/" + name, null, Void.class); + } + } + + + public class GetStack extends OpenStackRequest { + public GetStack(String name) { + super(client, HttpMethod.GET, "/stacks/" + name, null, Stack.class); + } + } + + public class List extends OpenStackRequest { + public List() { + super(client, HttpMethod.GET, "/stacks", null, Stacks.class); + } + } + + +} diff --git a/heat-model/pom.xml b/heat-model/pom.xml new file mode 100644 index 000000000..d7fb92148 --- /dev/null +++ b/heat-model/pom.xml @@ -0,0 +1,11 @@ + + 4.0.0 + + com.woorea + openstack-java-sdk + 3.2.2-SNAPSHOT + + heat-model + OpenStack Heat Model + OpenStack Heat Model + \ No newline at end of file diff --git a/heat-model/src/main/java/com/woorea/openstack/heat/model/CreateStackParam.java b/heat-model/src/main/java/com/woorea/openstack/heat/model/CreateStackParam.java new file mode 100644 index 000000000..ebdddfa09 --- /dev/null +++ b/heat-model/src/main/java/com/woorea/openstack/heat/model/CreateStackParam.java @@ -0,0 +1,100 @@ +package com.woorea.openstack.heat.model; + +import org.codehaus.jackson.annotate.JsonProperty; + +import java.util.Map; + +public class CreateStackParam { + @JsonProperty("stack_name") + private String stackName; + + @JsonProperty("template_url") + private String templateUrl; + + @JsonProperty + private String template; + + @JsonProperty("parameters") + private Map parameters; + + @JsonProperty("timeout_mins") + private int timeoutMinutes; + + @JsonProperty("environment") + private String environment; + + public String getStackName() { + return stackName; + } + + public void setStackName(String stackName) { + this.stackName = stackName; + } + + public String getTemplateUrl() { + return templateUrl; + } + + /** + * The URL of the template to instantiate. This value is ignored if the template is supplied inline. + * + * @param templateUrl a template url. + */ + public void setTemplateUrl(String templateUrl) { + this.templateUrl = templateUrl; + } + + public Map getParameters() { + return parameters; + } + + public String getTemplate() { + return template; + } + + /** + * A JSON template to instantiate. This value takes precedence over the template URL if both are supplied. + * + * @param template a template json. + */ + public void setTemplate(String template) { + this.template = template; + } + + public void setParameters(Map parameters) { + this.parameters = parameters; + } + + public int getTimeoutMinutes() { + return timeoutMinutes; + } + + public void setTimeoutMinutes(int timeoutMinutes) { + this.timeoutMinutes = timeoutMinutes; + } + + public String getEnvironment() { + return environment; + } + + /** + * A JSON environment for the stack. + * + * @param environment a environment. + */ + public void setEnvironment(String environment) { + this.environment = environment; + } + + @Override + public String toString() { + return "CreateStackParam{" + + "stackName='" + stackName + '\'' + + ", templateUrl='" + templateUrl + '\'' + + ", template='" + template + '\'' + + ", parameters=" + parameters + + ", timeoutMinutes=" + timeoutMinutes + + ", environment='" + environment + '\'' + + '}'; + } +} diff --git a/heat-model/src/main/java/com/woorea/openstack/heat/model/Explanation.java b/heat-model/src/main/java/com/woorea/openstack/heat/model/Explanation.java new file mode 100644 index 000000000..7e255643a --- /dev/null +++ b/heat-model/src/main/java/com/woorea/openstack/heat/model/Explanation.java @@ -0,0 +1,28 @@ +package com.woorea.openstack.heat.model; + +import org.codehaus.jackson.annotate.JsonProperty; +import org.codehaus.jackson.map.annotate.JsonRootName; + +@JsonRootName("error") +public class Explanation { + @JsonProperty("explanation") + private String explanation; + + @JsonProperty("code") + private int code; + + @JsonRootName("error") + public static class Error { + @JsonProperty("message") + private String message; + + @JsonProperty("traceback") + private String traceback; + + @JsonProperty("type") + private String type; + + @JsonProperty("title") + private String title; + } +} diff --git a/heat-model/src/main/java/com/woorea/openstack/heat/model/Link.java b/heat-model/src/main/java/com/woorea/openstack/heat/model/Link.java new file mode 100644 index 000000000..ec1970fd6 --- /dev/null +++ b/heat-model/src/main/java/com/woorea/openstack/heat/model/Link.java @@ -0,0 +1,35 @@ +package com.woorea.openstack.heat.model; + +import org.codehaus.jackson.annotate.JsonProperty; + +public class Link { + @JsonProperty("href") + private String href; + + @JsonProperty("rel") + private String rel; + + public String getHref() { + return href; + } + + public void setHref(String href) { + this.href = href; + } + + public String getRel() { + return rel; + } + + public void setRel(String rel) { + this.rel = rel; + } + + @Override + public String toString() { + return "Link{" + + "href='" + href + '\'' + + ", rel='" + rel + '\'' + + '}'; + } +} diff --git a/heat-model/src/main/java/com/woorea/openstack/heat/model/Stack.java b/heat-model/src/main/java/com/woorea/openstack/heat/model/Stack.java new file mode 100644 index 000000000..9ed8f245c --- /dev/null +++ b/heat-model/src/main/java/com/woorea/openstack/heat/model/Stack.java @@ -0,0 +1,115 @@ +package com.woorea.openstack.heat.model; + +import org.codehaus.jackson.annotate.JsonIgnoreProperties; +import org.codehaus.jackson.annotate.JsonProperty; +import org.codehaus.jackson.map.annotate.JsonRootName; + +import java.util.Date; +import java.util.List; + +@JsonIgnoreProperties(ignoreUnknown = true) +@JsonRootName("stack") +public class Stack { + @JsonProperty("description") + private String description; + + @JsonProperty("links") + private List links; + + @JsonProperty("stack_status_reason") + private String stackStatusReason; + + @JsonProperty("stack_name") + private String stackName; + + @JsonProperty("updated_time") + private Date updatedTime; + + @JsonProperty("creation_time") + private Date creationTime; + + @JsonProperty("stack_status") + private String stackStatus; + + @JsonProperty("id") + private String id; + + public Date getUpdatedTime() { + return updatedTime; + } + + public void setUpdatedTime(Date updatedTime) { + this.updatedTime = updatedTime; + } + + public String getStackStatus() { + return stackStatus; + } + + public void setStackStatus(String stackStatus) { + this.stackStatus = stackStatus; + } + + public String getId() { + return id; + } + + public void setId(String id) { + this.id = id; + } + + public Date getCreationTime() { + return creationTime; + } + + public void setCreationTime(Date creationTime) { + this.creationTime = creationTime; + } + + public String getStackName() { + return stackName; + } + + public void setStackName(String stackName) { + this.stackName = stackName; + } + + public String getStackStatusReason() { + return stackStatusReason; + } + + public void setStackStatusReason(String stackStatusReason) { + this.stackStatusReason = stackStatusReason; + } + + public List getLinks() { + return links; + } + + public void setLinks(List links) { + this.links = links; + } + + + public String getDescription() { + return description; + } + + public void setDescription(String description) { + this.description = description; + } + + @Override + public String toString() { + return "Stack{" + + "description='" + description + '\'' + + ", links=" + links + + ", stackStatusReason='" + stackStatusReason + '\'' + + ", stackName='" + stackName + '\'' + + ", updatedTime=" + updatedTime + + ", creationTime=" + creationTime + + ", stackStatus='" + stackStatus + '\'' + + ", id='" + id + '\'' + + '}'; + } +} diff --git a/heat-model/src/main/java/com/woorea/openstack/heat/model/Stacks.java b/heat-model/src/main/java/com/woorea/openstack/heat/model/Stacks.java new file mode 100644 index 000000000..6f174aa1b --- /dev/null +++ b/heat-model/src/main/java/com/woorea/openstack/heat/model/Stacks.java @@ -0,0 +1,17 @@ +package com.woorea.openstack.heat.model; + +import org.codehaus.jackson.annotate.JsonProperty; + +import java.io.Serializable; +import java.util.Iterator; +import java.util.List; + +public class Stacks implements Iterable, Serializable { + @JsonProperty("stacks") + private List list; + + @Override + public Iterator iterator() { + return list.iterator(); + } +} diff --git a/openstack-examples/pom.xml b/openstack-examples/pom.xml index 812c59a89..30d401437 100644 --- a/openstack-examples/pom.xml +++ b/openstack-examples/pom.xml @@ -19,6 +19,11 @@ nova-client 3.2.2-SNAPSHOT + + com.woorea + heat-client + 3.2.2-SNAPSHOT + com.woorea swift-client diff --git a/openstack-examples/src/main/java/com/woorea/openstack/examples/heat/HeatListStacks.java b/openstack-examples/src/main/java/com/woorea/openstack/examples/heat/HeatListStacks.java new file mode 100644 index 000000000..f02e63535 --- /dev/null +++ b/openstack-examples/src/main/java/com/woorea/openstack/examples/heat/HeatListStacks.java @@ -0,0 +1,92 @@ +package com.woorea.openstack.examples.heat; + +import com.woorea.openstack.examples.ExamplesConfiguration; +import com.woorea.openstack.heat.Heat; +import com.woorea.openstack.heat.model.CreateStackParam; +import com.woorea.openstack.heat.model.Stack; +import com.woorea.openstack.keystone.model.Access; +import com.woorea.openstack.keystone.model.Access.Service; +import com.woorea.openstack.keystone.model.Access.Service.Endpoint; +import com.woorea.openstack.keystone.utils.KeystoneTokenProvider; + +import java.util.Collections; + +public class HeatListStacks { + + private static String template = "{\n" + + " \"HeatTemplateFormatVersion\": \"2012-12-12\",\n" + + " \"Parameters\": {},\n" + + " \"Mappings\": {},\n" + + " \"Resources\": {\n" + + " \"my-test-server\": {\n" + + " \"Type\": \"OS::Nova::Server\",\n" + + " \"Properties\": {\n" + + " \"flavor\": \"m1.small\",\n" + + " \"image\": \"centos:latest\"\n" + + " }\n" + + " }\n" + + " }\n" + + "}"; + + /** + * @param args + */ + public static void main(String[] args) throws InterruptedException { + KeystoneTokenProvider keystone = new KeystoneTokenProvider( + "http://10.129.184.5:35357/v2.0/", + "admin", + "aa2f03a2c4c2414c"); + + Access access = keystone.getAccessByTenant(ExamplesConfiguration.TENANT_NAME); + + Service heatService = getService(access); + + for (Endpoint endpoint : heatService.getEndpoints()) { + + Heat heat = new Heat(endpoint.getPublicURL()); + heat.setTokenProvider(keystone + .getProviderByTenant(ExamplesConfiguration.TENANT_NAME)); + + CreateStackParam param = new CreateStackParam(); + param.setStackName("helloWorld"); + param.setTimeoutMinutes(1); + param.setParameters(Collections.emptyMap()); + param.setTemplate(template); + + System.out.printf("Create: " + heat.getStacks().create(param).execute()); + Thread.sleep(3000); + + + for (Stack s : heat.getStacks().list().execute()) { + System.out.println(s.getDescription()); + System.out.println(s.getId()); + System.out.println(s.getStackName()); + System.out.println(s.getStackStatus()); + System.out.println(s.getCreationTime()); + System.out.println(s.getUpdatedTime()); + System.out.println(s.getLinks()); + + System.out.println(heat.getStacks().byName(s.getStackName()).execute()); + + System.out.println("Delete: " + heat.getStacks().deleteByName(s.getStackName()).execute()); + + } + } + } + + private static Service getService(Access access) { + Service heatService = null; + for (Service service : access.getServiceCatalog()) { + if (service.getType().equals("orchestration")) { + heatService = service; + break; + } + } + + if (heatService == null) { + throw new RuntimeException("Glance service not found"); + } + return heatService; + } + +} diff --git a/pom.xml b/pom.xml index 01e9d50e6..6a86b84ab 100644 --- a/pom.xml +++ b/pom.xml @@ -25,6 +25,7 @@ swift-client quantum-client openstack-client + heat-client nova-model glance-model keystone-model @@ -33,6 +34,7 @@ ceilometer-model ceilometer-client openstack-client-connectors + heat-model From 41dafd3b4d762765e3bcc21bf8e09ef9f99daada Mon Sep 17 00:00:00 2001 From: Daniel Kuffner Date: Tue, 4 Mar 2014 13:58:01 +0100 Subject: [PATCH 080/144] inital implementation of resources --- .../java/com/woorea/openstack/heat/Heat.java | 6 + .../openstack/heat/ResourcesResource.java | 45 +++++++ .../woorea/openstack/heat/model/Resource.java | 122 ++++++++++++++++++ .../openstack/heat/model/Resources.java | 28 ++++ pom.xml | 34 ++--- 5 files changed, 218 insertions(+), 17 deletions(-) create mode 100644 heat-client/src/main/java/com/woorea/openstack/heat/ResourcesResource.java create mode 100644 heat-model/src/main/java/com/woorea/openstack/heat/model/Resource.java create mode 100644 heat-model/src/main/java/com/woorea/openstack/heat/model/Resources.java diff --git a/heat-client/src/main/java/com/woorea/openstack/heat/Heat.java b/heat-client/src/main/java/com/woorea/openstack/heat/Heat.java index b389eb6bb..96e9cd78b 100644 --- a/heat-client/src/main/java/com/woorea/openstack/heat/Heat.java +++ b/heat-client/src/main/java/com/woorea/openstack/heat/Heat.java @@ -9,10 +9,12 @@ public class Heat extends OpenStackClient { private final StackResource stacks; + private final ResourcesResource resources; public Heat(String endpoint, OpenStackClientConnector connector) { super(endpoint, connector); stacks = new StackResource(this); + resources = new ResourcesResource(this); } public Heat(String endpoint) { @@ -22,4 +24,8 @@ public Heat(String endpoint) { public StackResource getStacks() { return stacks; } + + public ResourcesResource getResources() { + return resources; + } } diff --git a/heat-client/src/main/java/com/woorea/openstack/heat/ResourcesResource.java b/heat-client/src/main/java/com/woorea/openstack/heat/ResourcesResource.java new file mode 100644 index 000000000..18f1aef1b --- /dev/null +++ b/heat-client/src/main/java/com/woorea/openstack/heat/ResourcesResource.java @@ -0,0 +1,45 @@ +package com.woorea.openstack.heat; + +import com.woorea.openstack.base.client.HttpMethod; +import com.woorea.openstack.base.client.OpenStackClient; +import com.woorea.openstack.base.client.OpenStackRequest; +import com.woorea.openstack.heat.model.Resources; + + +/** + * v1/​{tenant_id}​/stacks/​{stack_name}​/resources + */ +public class ResourcesResource { + private final OpenStackClient client; + + public ResourcesResource(OpenStackClient client) { + this.client = client; + } + + public ListResources listResources(String name) { + return new ListResources(name); + } + + public List list(String name) { + return new List(name); + } + + /** + * v1/​{tenant_id}​/stacks/​{stack_name}​/resources + */ + public class ListResources extends OpenStackRequest { + public ListResources(String name) { + super(client, HttpMethod.GET, "/stacks/" + name + "/resources", null, Resources.class); + } + } + + /** + * v1/​{tenant_id}​/stacks/​{stack_name}​/​{stack_id}​/resources + */ + public class List extends OpenStackRequest { + public List(String name) { + super(client, HttpMethod.GET, "", null, String.class); + } + } + +} diff --git a/heat-model/src/main/java/com/woorea/openstack/heat/model/Resource.java b/heat-model/src/main/java/com/woorea/openstack/heat/model/Resource.java new file mode 100644 index 000000000..159bbcda2 --- /dev/null +++ b/heat-model/src/main/java/com/woorea/openstack/heat/model/Resource.java @@ -0,0 +1,122 @@ +package com.woorea.openstack.heat.model; + +import org.codehaus.jackson.annotate.JsonProperty; + +import java.util.Date; +import java.util.List; + +public class Resource { + @JsonProperty("resource_name") + private String name; + + @JsonProperty("links") + private List links; + + @JsonProperty("resource_status") + private String status; + + @JsonProperty("physical_resource_id") + private String physicalResourceId; + + @JsonProperty("logical_resource_id") + private String logicalResourceId; + + @JsonProperty("required_by") + private List requiredBy; + + @JsonProperty("updated_time") + private Date updatedTime; + + @JsonProperty("resource_type") + private String type; + + @JsonProperty("resource_status_reason") + private String statusReason; + + public String getStatusReason() { + return statusReason; + } + + public void setStatusReason(String statusReason) { + this.statusReason = statusReason; + } + + public String getLogicalResourceId() { + return logicalResourceId; + } + + public void setLogicalResourceId(String logicalResourceId) { + this.logicalResourceId = logicalResourceId; + } + + public String getStatus() { + return status; + } + + public void setStatus(String status) { + this.status = status; + } + + public String getPhysicalResourceId() { + return physicalResourceId; + } + + public void setPhysicalResourceId(String physicalResourceId) { + this.physicalResourceId = physicalResourceId; + } + + public List getRequiredBy() { + return requiredBy; + } + + public void setRequiredBy(List requiredBy) { + this.requiredBy = requiredBy; + } + + public Date getUpdatedTime() { + return updatedTime; + } + + public void setUpdatedTime(Date updatedTime) { + this.updatedTime = updatedTime; + } + + public String getType() { + return type; + } + + public void setType(String type) { + this.type = type; + } + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + + public List getLinks() { + return links; + } + + public void setLinks(List links) { + this.links = links; + } + + @Override + public String toString() { + return "Resource{" + + "name='" + name + '\'' + + ", links=" + links + + ", status='" + status + '\'' + + ", physicalResourceId='" + physicalResourceId + '\'' + + ", logicalResourceId='" + logicalResourceId + '\'' + + ", requiredBy=" + requiredBy + + ", updatedTime=" + updatedTime + + ", type='" + type + '\'' + + ", statusReason='" + statusReason + '\'' + + '}'; + } +} diff --git a/heat-model/src/main/java/com/woorea/openstack/heat/model/Resources.java b/heat-model/src/main/java/com/woorea/openstack/heat/model/Resources.java new file mode 100644 index 000000000..068c5e08c --- /dev/null +++ b/heat-model/src/main/java/com/woorea/openstack/heat/model/Resources.java @@ -0,0 +1,28 @@ +package com.woorea.openstack.heat.model; + +import org.codehaus.jackson.annotate.JsonProperty; + +import java.io.Serializable; +import java.util.Iterator; +import java.util.List; + +public class Resources implements Iterable, Serializable { + @JsonProperty("resources") + private List list; + + public List getList() { + return list; + } + + @Override + public Iterator iterator() { + return list.iterator(); + } + + @Override + public String toString() { + return "Resources{" + + "list=" + list + + '}'; + } +} \ No newline at end of file diff --git a/pom.xml b/pom.xml index 6a86b84ab..112038e10 100644 --- a/pom.xml +++ b/pom.xml @@ -102,23 +102,23 @@ UTF-8 - - org.apache.maven.plugins - maven-gpg-plugin - 1.4 - - ${skip.sign} - - - - sign-artifacts - verify - - sign - - - - + + + + + + + + + + + + + + + + + org.apache.maven.plugins maven-eclipse-plugin From 9b795e2e149681ddeb7c30c46bd06c8f85e33462 Mon Sep 17 00:00:00 2001 From: Daniel Kuffner Date: Sun, 9 Mar 2014 13:28:55 +0100 Subject: [PATCH 081/144] fixed example --- .../examples/heat/HeatListStacks.java | 72 +++++++------------ pom.xml | 34 ++++----- 2 files changed, 43 insertions(+), 63 deletions(-) diff --git a/openstack-examples/src/main/java/com/woorea/openstack/examples/heat/HeatListStacks.java b/openstack-examples/src/main/java/com/woorea/openstack/examples/heat/HeatListStacks.java index f02e63535..75178c886 100644 --- a/openstack-examples/src/main/java/com/woorea/openstack/examples/heat/HeatListStacks.java +++ b/openstack-examples/src/main/java/com/woorea/openstack/examples/heat/HeatListStacks.java @@ -5,15 +5,14 @@ import com.woorea.openstack.heat.model.CreateStackParam; import com.woorea.openstack.heat.model.Stack; import com.woorea.openstack.keystone.model.Access; -import com.woorea.openstack.keystone.model.Access.Service; -import com.woorea.openstack.keystone.model.Access.Service.Endpoint; import com.woorea.openstack.keystone.utils.KeystoneTokenProvider; +import com.woorea.openstack.keystone.utils.KeystoneUtils; import java.util.Collections; public class HeatListStacks { - private static String template = "{\n" + + private static String TEMPLATE = "{\n" + " \"HeatTemplateFormatVersion\": \"2012-12-12\",\n" + " \"Parameters\": {},\n" + " \"Mappings\": {},\n" + @@ -33,60 +32,41 @@ public class HeatListStacks { */ public static void main(String[] args) throws InterruptedException { KeystoneTokenProvider keystone = new KeystoneTokenProvider( - "http://10.129.184.5:35357/v2.0/", - "admin", - "aa2f03a2c4c2414c"); + ExamplesConfiguration.KEYSTONE_ENDPOINT, + ExamplesConfiguration.KEYSTONE_USERNAME, + ExamplesConfiguration.KEYSTONE_PASSWORD + ); Access access = keystone.getAccessByTenant(ExamplesConfiguration.TENANT_NAME); - Service heatService = getService(access); + String endpointURL = KeystoneUtils.findEndpointURL(access.getServiceCatalog(), "orchestration", null, "public"); - for (Endpoint endpoint : heatService.getEndpoints()) { - Heat heat = new Heat(endpoint.getPublicURL()); - heat.setTokenProvider(keystone - .getProviderByTenant(ExamplesConfiguration.TENANT_NAME)); + Heat heat = new Heat(endpointURL); + heat.setTokenProvider(keystone + .getProviderByTenant(ExamplesConfiguration.TENANT_NAME)); - CreateStackParam param = new CreateStackParam(); - param.setStackName("helloWorld"); - param.setTimeoutMinutes(1); - param.setParameters(Collections.emptyMap()); - param.setTemplate(template); + CreateStackParam param = new CreateStackParam(); + param.setStackName("helloWorld"); + param.setTimeoutMinutes(1); + param.setParameters(Collections.emptyMap()); + param.setTemplate(TEMPLATE); - System.out.printf("Create: " + heat.getStacks().create(param).execute()); - Thread.sleep(3000); + System.out.printf("Create: " + heat.getStacks().create(param).execute()); + Thread.sleep(3000); + for (Stack s : heat.getStacks().list().execute()) { + System.out.println(s.getDescription()); + System.out.println(s.getId()); + System.out.println(s.getStackName()); + System.out.println(s.getStackStatus()); + System.out.println(s.getCreationTime()); + System.out.println(s.getUpdatedTime()); + System.out.println(s.getLinks()); - for (Stack s : heat.getStacks().list().execute()) { - System.out.println(s.getDescription()); - System.out.println(s.getId()); - System.out.println(s.getStackName()); - System.out.println(s.getStackStatus()); - System.out.println(s.getCreationTime()); - System.out.println(s.getUpdatedTime()); - System.out.println(s.getLinks()); + System.out.println(heat.getStacks().byName(s.getStackName()).execute()); - System.out.println(heat.getStacks().byName(s.getStackName()).execute()); - System.out.println("Delete: " + heat.getStacks().deleteByName(s.getStackName()).execute()); - - } } } - - private static Service getService(Access access) { - Service heatService = null; - for (Service service : access.getServiceCatalog()) { - if (service.getType().equals("orchestration")) { - heatService = service; - break; - } - } - - if (heatService == null) { - throw new RuntimeException("Glance service not found"); - } - return heatService; - } - } diff --git a/pom.xml b/pom.xml index 112038e10..6a86b84ab 100644 --- a/pom.xml +++ b/pom.xml @@ -102,23 +102,23 @@ UTF-8 - - - - - - - - - - - - - - - - - + + org.apache.maven.plugins + maven-gpg-plugin + 1.4 + + ${skip.sign} + + + + sign-artifacts + verify + + sign + + + + org.apache.maven.plugins maven-eclipse-plugin From 447aa15c575963b336fe7e56915c925fdd371b8a Mon Sep 17 00:00:00 2001 From: Daniel Kuffner Date: Sun, 9 Mar 2014 13:32:30 +0100 Subject: [PATCH 082/144] Remove obsolete list resources functions --- .../woorea/openstack/heat/ResourcesResource.java | 14 -------------- 1 file changed, 14 deletions(-) diff --git a/heat-client/src/main/java/com/woorea/openstack/heat/ResourcesResource.java b/heat-client/src/main/java/com/woorea/openstack/heat/ResourcesResource.java index 18f1aef1b..c3635bcbe 100644 --- a/heat-client/src/main/java/com/woorea/openstack/heat/ResourcesResource.java +++ b/heat-client/src/main/java/com/woorea/openstack/heat/ResourcesResource.java @@ -20,10 +20,6 @@ public ListResources listResources(String name) { return new ListResources(name); } - public List list(String name) { - return new List(name); - } - /** * v1/​{tenant_id}​/stacks/​{stack_name}​/resources */ @@ -32,14 +28,4 @@ public ListResources(String name) { super(client, HttpMethod.GET, "/stacks/" + name + "/resources", null, Resources.class); } } - - /** - * v1/​{tenant_id}​/stacks/​{stack_name}​/​{stack_id}​/resources - */ - public class List extends OpenStackRequest { - public List(String name) { - super(client, HttpMethod.GET, "", null, String.class); - } - } - } From 41e11885ac02b6453de638f6b03328e994913efb Mon Sep 17 00:00:00 2001 From: Luis Gervaso Date: Thu, 13 Mar 2014 10:09:33 +0100 Subject: [PATCH 083/144] jersey 2.6 + keystone v3 + nova missing utility methods for server actions --- .../openstack/keystone/api/Authenticate.java | 53 --- .../openstack/keystone/v3/Keystone.java | 66 ++++ .../keystone/v3/api/CredentialsResources.java | 13 + .../v3/api/DomainGroupRolesResource.java | 13 + .../v3/api/DomainUserRolesResource.java | 13 + .../keystone/v3/api/DomainsResource.java | 21 ++ .../keystone/v3/api/EndpointsResource.java | 13 + .../keystone/v3/api/GenericResource.java | 44 +++ .../keystone/v3/api/GroupUsersResource.java | 13 + .../keystone/v3/api/GroupsResource.java | 17 + .../keystone/v3/api/PoliciesResource.java | 13 + .../v3/api/ProjectGroupRolesResource.java | 34 ++ .../keystone/v3/api/ProjectRolesResource.java | 27 ++ .../v3/api/ProjectUserRolesResource.java | 13 + .../keystone/v3/api/ProjectsResource.java | 27 ++ .../keystone/v3/api/RolesResource.java | 19 ++ .../keystone/v3/api/ServicesResource.java | 13 + .../keystone/v3/api/TokensResource.java | 38 +++ .../keystone/v3/api/UsersResource.java | 27 ++ .../keystone/v3/model/Authentication.java | 222 +++++++++++++ .../openstack/keystone/v3/model/Token.java | 120 +++++++ .../openstack/nova/api/ServersResource.java | 64 +++- .../jersey2-connector/pom.xml | 4 +- .../openstack/connector/JaxRs20Connector.java | 4 +- .../connector/Jersey2LoggingFilter.java | 301 ------------------ .../woorea/openstack/connector/OpenStack.java | 1 - .../base/client/OpenStackClient.java | 4 + .../base/client/OpenStackRequest.java | 4 + .../examples/ExamplesConfiguration.java | 4 +- .../hpcloud/Keystone3Authentication.java | 34 ++ 30 files changed, 866 insertions(+), 373 deletions(-) delete mode 100644 keystone-client/src/main/java/com/woorea/openstack/keystone/api/Authenticate.java create mode 100644 keystone-client/src/main/java/com/woorea/openstack/keystone/v3/Keystone.java create mode 100644 keystone-client/src/main/java/com/woorea/openstack/keystone/v3/api/CredentialsResources.java create mode 100644 keystone-client/src/main/java/com/woorea/openstack/keystone/v3/api/DomainGroupRolesResource.java create mode 100644 keystone-client/src/main/java/com/woorea/openstack/keystone/v3/api/DomainUserRolesResource.java create mode 100644 keystone-client/src/main/java/com/woorea/openstack/keystone/v3/api/DomainsResource.java create mode 100644 keystone-client/src/main/java/com/woorea/openstack/keystone/v3/api/EndpointsResource.java create mode 100644 keystone-client/src/main/java/com/woorea/openstack/keystone/v3/api/GenericResource.java create mode 100644 keystone-client/src/main/java/com/woorea/openstack/keystone/v3/api/GroupUsersResource.java create mode 100644 keystone-client/src/main/java/com/woorea/openstack/keystone/v3/api/GroupsResource.java create mode 100644 keystone-client/src/main/java/com/woorea/openstack/keystone/v3/api/PoliciesResource.java create mode 100644 keystone-client/src/main/java/com/woorea/openstack/keystone/v3/api/ProjectGroupRolesResource.java create mode 100644 keystone-client/src/main/java/com/woorea/openstack/keystone/v3/api/ProjectRolesResource.java create mode 100644 keystone-client/src/main/java/com/woorea/openstack/keystone/v3/api/ProjectUserRolesResource.java create mode 100644 keystone-client/src/main/java/com/woorea/openstack/keystone/v3/api/ProjectsResource.java create mode 100644 keystone-client/src/main/java/com/woorea/openstack/keystone/v3/api/RolesResource.java create mode 100644 keystone-client/src/main/java/com/woorea/openstack/keystone/v3/api/ServicesResource.java create mode 100644 keystone-client/src/main/java/com/woorea/openstack/keystone/v3/api/TokensResource.java create mode 100644 keystone-client/src/main/java/com/woorea/openstack/keystone/v3/api/UsersResource.java create mode 100644 keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Authentication.java create mode 100644 keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Token.java delete mode 100644 openstack-client-connectors/jersey2-connector/src/main/java/com/woorea/openstack/connector/Jersey2LoggingFilter.java create mode 100644 openstack-examples/src/main/java/com/woorea/openstack/examples/hpcloud/Keystone3Authentication.java diff --git a/keystone-client/src/main/java/com/woorea/openstack/keystone/api/Authenticate.java b/keystone-client/src/main/java/com/woorea/openstack/keystone/api/Authenticate.java deleted file mode 100644 index 0d5d519f0..000000000 --- a/keystone-client/src/main/java/com/woorea/openstack/keystone/api/Authenticate.java +++ /dev/null @@ -1,53 +0,0 @@ -package com.woorea.openstack.keystone.api; - - -import com.woorea.openstack.base.client.HttpMethod; -import com.woorea.openstack.base.client.OpenStackRequest; -import com.woorea.openstack.keystone.model.Access; -import com.woorea.openstack.keystone.model.Authentication; -import com.woorea.openstack.keystone.model.authentication.AccessKey; -import com.woorea.openstack.keystone.model.authentication.TokenAuthentication; -import com.woorea.openstack.keystone.model.authentication.UsernamePassword; - -public class Authenticate extends OpenStackRequest { - - private Authentication authentication; - - public Authenticate(Authentication authentication) { - method(HttpMethod.POST); - path("/tokens"); - json(authentication); - header("Accept", "application/json"); - returnType(Access.class); - } - - public Authenticate withTenantId(String tenantId) { - authentication.setTenantId(tenantId); - return this; - } - - public Authenticate withTenantName(String tenantName) { - authentication.setTenantName(tenantName); - return this; - } - - public class Builder { - - public Authenticate withUsernamePassword(String username, String password) { - authentication = new UsernamePassword(username, password); - return Authenticate.this; - } - - public Authenticate withToken(String token) { - authentication = new TokenAuthentication(token); - return Authenticate.this; - } - - public Authenticate withAccessKey(String accessKey, String secretKey) { - authentication = new AccessKey(accessKey, secretKey); - return Authenticate.this; - } - - } - -} diff --git a/keystone-client/src/main/java/com/woorea/openstack/keystone/v3/Keystone.java b/keystone-client/src/main/java/com/woorea/openstack/keystone/v3/Keystone.java new file mode 100644 index 000000000..f5ea76d29 --- /dev/null +++ b/keystone-client/src/main/java/com/woorea/openstack/keystone/v3/Keystone.java @@ -0,0 +1,66 @@ +package com.woorea.openstack.keystone.v3; + +import com.woorea.openstack.keystone.v3.api.EndpointsResource; +import com.woorea.openstack.keystone.v3.api.RolesResource; +import com.woorea.openstack.keystone.v3.api.ServicesResource; +import com.woorea.openstack.keystone.v3.api.ProjectsResource; +import com.woorea.openstack.keystone.v3.api.TokensResource; +import com.woorea.openstack.keystone.v3.api.UsersResource; + +import com.woorea.openstack.base.client.OpenStackClient; +import com.woorea.openstack.base.client.OpenStackClientConnector; + +public class Keystone extends OpenStackClient { + + private final TokensResource TOKENS; + + private final ProjectsResource PROJECTS; + + private final UsersResource USERS; + + private final RolesResource ROLES; + + private final ServicesResource SERVICES; + + private final EndpointsResource ENDPOINTS; + + public Keystone(String endpoint, OpenStackClientConnector connector) { + super(endpoint, connector); + TOKENS = new TokensResource(this); + PROJECTS = new ProjectsResource(this); + USERS = new UsersResource(this); + ROLES = new RolesResource(this); + SERVICES = new ServicesResource(this); + ENDPOINTS = new EndpointsResource(this); + } + + public Keystone(String endpoint) { + this(endpoint, null); + } + + public TokensResource tokens() { + return TOKENS; + } + + public ProjectsResource projects() { + return PROJECTS; + } + + public UsersResource users() { + return USERS; + } + + public RolesResource roles() { + return ROLES; + } + + public ServicesResource services() { + return SERVICES; + } + + public EndpointsResource endpoints() { + return ENDPOINTS; + } + +} + diff --git a/keystone-client/src/main/java/com/woorea/openstack/keystone/v3/api/CredentialsResources.java b/keystone-client/src/main/java/com/woorea/openstack/keystone/v3/api/CredentialsResources.java new file mode 100644 index 000000000..9c564f2ca --- /dev/null +++ b/keystone-client/src/main/java/com/woorea/openstack/keystone/v3/api/CredentialsResources.java @@ -0,0 +1,13 @@ +package com.woorea.openstack.keystone.v3.api; + +import com.woorea.openstack.base.client.OpenStackClient; +import com.woorea.openstack.keystone.model.Endpoint; +import com.woorea.openstack.keystone.model.Endpoints; + +public class CredentialsResources extends GenericResource { + + public CredentialsResources(OpenStackClient client) { + super(client, "/credentials", Endpoint.class, Endpoints.class); + } + +} diff --git a/keystone-client/src/main/java/com/woorea/openstack/keystone/v3/api/DomainGroupRolesResource.java b/keystone-client/src/main/java/com/woorea/openstack/keystone/v3/api/DomainGroupRolesResource.java new file mode 100644 index 000000000..5c9918905 --- /dev/null +++ b/keystone-client/src/main/java/com/woorea/openstack/keystone/v3/api/DomainGroupRolesResource.java @@ -0,0 +1,13 @@ +package com.woorea.openstack.keystone.v3.api; + +import com.woorea.openstack.base.client.OpenStackClient; +import com.woorea.openstack.keystone.model.Service; +import com.woorea.openstack.keystone.model.Services; + +public class DomainGroupRolesResource extends GenericResource { + + public DomainGroupRolesResource(OpenStackClient client, String path) { + super(client, path, Service.class, Services.class); + } + +} diff --git a/keystone-client/src/main/java/com/woorea/openstack/keystone/v3/api/DomainUserRolesResource.java b/keystone-client/src/main/java/com/woorea/openstack/keystone/v3/api/DomainUserRolesResource.java new file mode 100644 index 000000000..d30d8f799 --- /dev/null +++ b/keystone-client/src/main/java/com/woorea/openstack/keystone/v3/api/DomainUserRolesResource.java @@ -0,0 +1,13 @@ +package com.woorea.openstack.keystone.v3.api; + +import com.woorea.openstack.base.client.OpenStackClient; +import com.woorea.openstack.keystone.model.Role; +import com.woorea.openstack.keystone.model.Roles; + +public class DomainUserRolesResource extends GenericResource { + + public DomainUserRolesResource(OpenStackClient client, String path) { + super(client, path, Role.class, Roles.class); + } + +} diff --git a/keystone-client/src/main/java/com/woorea/openstack/keystone/v3/api/DomainsResource.java b/keystone-client/src/main/java/com/woorea/openstack/keystone/v3/api/DomainsResource.java new file mode 100644 index 000000000..acd44ffcf --- /dev/null +++ b/keystone-client/src/main/java/com/woorea/openstack/keystone/v3/api/DomainsResource.java @@ -0,0 +1,21 @@ +package com.woorea.openstack.keystone.v3.api; + +import com.woorea.openstack.base.client.OpenStackClient; +import com.woorea.openstack.keystone.model.Service; +import com.woorea.openstack.keystone.model.Services; + +public class DomainsResource extends GenericResource { + + public DomainsResource(OpenStackClient client) { + super(client, "/domains", Service.class, Services.class); + } + + public DomainUserRolesResource userRoles(String domainId, String userId) { + return new DomainUserRolesResource(CLIENT, new StringBuilder(path).append("/").append(domainId).append("/users/").append(userId).append("/roles").toString()); + } + + public DomainUserRolesResource groupRoles(String domainId, String groupId) { + return new DomainUserRolesResource(CLIENT, new StringBuilder(path).append("/").append(domainId).append("/groups/").append(groupId).append("/roles").toString()); + } + +} diff --git a/keystone-client/src/main/java/com/woorea/openstack/keystone/v3/api/EndpointsResource.java b/keystone-client/src/main/java/com/woorea/openstack/keystone/v3/api/EndpointsResource.java new file mode 100644 index 000000000..cc9d209b7 --- /dev/null +++ b/keystone-client/src/main/java/com/woorea/openstack/keystone/v3/api/EndpointsResource.java @@ -0,0 +1,13 @@ +package com.woorea.openstack.keystone.v3.api; + +import com.woorea.openstack.base.client.OpenStackClient; +import com.woorea.openstack.keystone.model.Endpoint; +import com.woorea.openstack.keystone.model.Endpoints; + +public class EndpointsResource extends GenericResource { + + public EndpointsResource(OpenStackClient client) { + super(client, "/endpoints", Endpoint.class, Endpoints.class); + } + +} diff --git a/keystone-client/src/main/java/com/woorea/openstack/keystone/v3/api/GenericResource.java b/keystone-client/src/main/java/com/woorea/openstack/keystone/v3/api/GenericResource.java new file mode 100644 index 000000000..117e941df --- /dev/null +++ b/keystone-client/src/main/java/com/woorea/openstack/keystone/v3/api/GenericResource.java @@ -0,0 +1,44 @@ +package com.woorea.openstack.keystone.v3.api; + +import com.woorea.openstack.base.client.Entity; +import com.woorea.openstack.base.client.HttpMethod; +import com.woorea.openstack.base.client.OpenStackClient; +import com.woorea.openstack.base.client.OpenStackRequest; + +public class GenericResource { + + protected final OpenStackClient CLIENT; + + protected CharSequence path; + + protected Class oneClass; + protected Class manyClass; + + public GenericResource(OpenStackClient client, CharSequence path, Class oneClass, Class manyClass) { + CLIENT = client; + this.path = path; + this.oneClass = oneClass; + this.manyClass = manyClass; + } + + public OpenStackRequest list() { + return new OpenStackRequest(CLIENT, HttpMethod.GET, path, null, manyClass); + } + + public OpenStackRequest create(One one) { + return new OpenStackRequest(CLIENT, HttpMethod.POST, path, Entity.json(one), oneClass); + } + + public OpenStackRequest show(String id) { + return new OpenStackRequest(CLIENT, HttpMethod.GET, new StringBuilder(path).append("/").append(id).toString(), null, oneClass); + } + + public OpenStackRequest update(String id, One one) { + return new OpenStackRequest(CLIENT, HttpMethod.PATCH, new StringBuilder(path).append("/").append(id).toString(), Entity.json(one), oneClass); + } + + public OpenStackRequest delete(String id) { + return new OpenStackRequest(CLIENT, HttpMethod.DELETE, new StringBuilder(path).append("/").append(id).toString(), null, oneClass); + } + +} diff --git a/keystone-client/src/main/java/com/woorea/openstack/keystone/v3/api/GroupUsersResource.java b/keystone-client/src/main/java/com/woorea/openstack/keystone/v3/api/GroupUsersResource.java new file mode 100644 index 000000000..bf7c9b300 --- /dev/null +++ b/keystone-client/src/main/java/com/woorea/openstack/keystone/v3/api/GroupUsersResource.java @@ -0,0 +1,13 @@ +package com.woorea.openstack.keystone.v3.api; + +import com.woorea.openstack.base.client.OpenStackClient; +import com.woorea.openstack.keystone.model.User; +import com.woorea.openstack.keystone.model.Users; + +public class GroupUsersResource extends GenericResource { + + public GroupUsersResource(OpenStackClient client, String path) { + super(client, path, User.class, Users.class); + } + +} diff --git a/keystone-client/src/main/java/com/woorea/openstack/keystone/v3/api/GroupsResource.java b/keystone-client/src/main/java/com/woorea/openstack/keystone/v3/api/GroupsResource.java new file mode 100644 index 000000000..413f6f36b --- /dev/null +++ b/keystone-client/src/main/java/com/woorea/openstack/keystone/v3/api/GroupsResource.java @@ -0,0 +1,17 @@ +package com.woorea.openstack.keystone.v3.api; + +import com.woorea.openstack.base.client.OpenStackClient; +import com.woorea.openstack.keystone.model.Service; +import com.woorea.openstack.keystone.model.Services; + +public class GroupsResource extends GenericResource { + + public GroupsResource(OpenStackClient client) { + super(client, "/domains", Service.class, Services.class); + } + + public DomainUserRolesResource userRoles(String domainId, String userId) { + return new DomainUserRolesResource(CLIENT, new StringBuilder(path).append("/").append(domainId).append("/users/").append(userId).append("/roles").toString()); + } + +} diff --git a/keystone-client/src/main/java/com/woorea/openstack/keystone/v3/api/PoliciesResource.java b/keystone-client/src/main/java/com/woorea/openstack/keystone/v3/api/PoliciesResource.java new file mode 100644 index 000000000..d6dcd7f7b --- /dev/null +++ b/keystone-client/src/main/java/com/woorea/openstack/keystone/v3/api/PoliciesResource.java @@ -0,0 +1,13 @@ +package com.woorea.openstack.keystone.v3.api; + +import com.woorea.openstack.base.client.OpenStackClient; +import com.woorea.openstack.keystone.model.Role; +import com.woorea.openstack.keystone.model.Roles; + +public class PoliciesResource extends GenericResource { + + public PoliciesResource(OpenStackClient client) { + super(client, "/policies", Role.class, Roles.class); + } + +} diff --git a/keystone-client/src/main/java/com/woorea/openstack/keystone/v3/api/ProjectGroupRolesResource.java b/keystone-client/src/main/java/com/woorea/openstack/keystone/v3/api/ProjectGroupRolesResource.java new file mode 100644 index 000000000..caed8acd7 --- /dev/null +++ b/keystone-client/src/main/java/com/woorea/openstack/keystone/v3/api/ProjectGroupRolesResource.java @@ -0,0 +1,34 @@ +package com.woorea.openstack.keystone.v3.api; + +import com.woorea.openstack.base.client.OpenStackClient; +import com.woorea.openstack.base.client.OpenStackRequest; +import com.woorea.openstack.keystone.model.Role; +import com.woorea.openstack.keystone.model.Roles; + +public class ProjectGroupRolesResource extends GenericResource { + + public ProjectGroupRolesResource(OpenStackClient client, String path) { + super(client, path, Role.class, Roles.class); + } + + @Override + public OpenStackRequest create(Role one) { + throw new UnsupportedOperationException(); + } + + @Override + public OpenStackRequest show(String id) { + throw new UnsupportedOperationException(); + } + + @Override + public OpenStackRequest update(String id, Role one) { + throw new UnsupportedOperationException(); + } + + @Override + public OpenStackRequest delete(String id) { + throw new UnsupportedOperationException(); + } + +} diff --git a/keystone-client/src/main/java/com/woorea/openstack/keystone/v3/api/ProjectRolesResource.java b/keystone-client/src/main/java/com/woorea/openstack/keystone/v3/api/ProjectRolesResource.java new file mode 100644 index 000000000..7e7e2fa30 --- /dev/null +++ b/keystone-client/src/main/java/com/woorea/openstack/keystone/v3/api/ProjectRolesResource.java @@ -0,0 +1,27 @@ +package com.woorea.openstack.keystone.v3.api; + +import com.woorea.openstack.base.client.Entity; +import com.woorea.openstack.base.client.HttpMethod; +import com.woorea.openstack.base.client.OpenStackClient; +import com.woorea.openstack.base.client.OpenStackRequest; + +public class ProjectRolesResource { + + private final OpenStackClient CLIENT; + + private final String PATH; + + public ProjectRolesResource(OpenStackClient client, String path) { + this.CLIENT = client; + this.PATH = path; + } + + public OpenStackRequest add(String roleId) { + return new OpenStackRequest(CLIENT, HttpMethod.PUT, new StringBuilder(PATH).append("/").append(roleId).toString(), Entity.json(""), Void.class); + } + + public OpenStackRequest remove(String roleId) { + return new OpenStackRequest(CLIENT, HttpMethod.DELETE, new StringBuilder(PATH).append("/").append(roleId).toString(), null, Void.class); + } + +} diff --git a/keystone-client/src/main/java/com/woorea/openstack/keystone/v3/api/ProjectUserRolesResource.java b/keystone-client/src/main/java/com/woorea/openstack/keystone/v3/api/ProjectUserRolesResource.java new file mode 100644 index 000000000..9e314b937 --- /dev/null +++ b/keystone-client/src/main/java/com/woorea/openstack/keystone/v3/api/ProjectUserRolesResource.java @@ -0,0 +1,13 @@ +package com.woorea.openstack.keystone.v3.api; + +import com.woorea.openstack.base.client.OpenStackClient; +import com.woorea.openstack.keystone.model.Role; +import com.woorea.openstack.keystone.model.Roles; + +public class ProjectUserRolesResource extends GenericResource { + + public ProjectUserRolesResource(OpenStackClient client, String path) { + super(client, path, Role.class, Roles.class); + } + +} diff --git a/keystone-client/src/main/java/com/woorea/openstack/keystone/v3/api/ProjectsResource.java b/keystone-client/src/main/java/com/woorea/openstack/keystone/v3/api/ProjectsResource.java new file mode 100644 index 000000000..d0b5af9dc --- /dev/null +++ b/keystone-client/src/main/java/com/woorea/openstack/keystone/v3/api/ProjectsResource.java @@ -0,0 +1,27 @@ +package com.woorea.openstack.keystone.v3.api; + +import com.woorea.openstack.base.client.OpenStackClient; +import com.woorea.openstack.base.client.OpenStackRequest; +import com.woorea.openstack.keystone.model.Service; +import com.woorea.openstack.keystone.model.Services; +import com.woorea.openstack.keystone.model.Users; + +public class ProjectsResource extends GenericResource { + + public ProjectsResource(OpenStackClient client) { + super(client, "/projects", Service.class, Services.class); + } + + public OpenStackRequest users(String projectId) { + return CLIENT.get(new StringBuilder(path).append("/").append(projectId).append("/users/").toString(), Users.class); + } + + public DomainUserRolesResource userRoles(String projectId, String userId) { + return new DomainUserRolesResource(CLIENT, new StringBuilder(path).append("/").append(projectId).append("/users/").append(userId).append("/roles").toString()); + } + + public DomainUserRolesResource groupRoles(String projectId, String groupId) { + return new DomainUserRolesResource(CLIENT, new StringBuilder(path).append("/").append(projectId).append("/groups/").append(groupId).append("/roles").toString()); + } + +} diff --git a/keystone-client/src/main/java/com/woorea/openstack/keystone/v3/api/RolesResource.java b/keystone-client/src/main/java/com/woorea/openstack/keystone/v3/api/RolesResource.java new file mode 100644 index 000000000..a8e5de6cc --- /dev/null +++ b/keystone-client/src/main/java/com/woorea/openstack/keystone/v3/api/RolesResource.java @@ -0,0 +1,19 @@ +package com.woorea.openstack.keystone.v3.api; + +import com.woorea.openstack.base.client.OpenStackClient; +import com.woorea.openstack.base.client.OpenStackRequest; +import com.woorea.openstack.keystone.model.Role; +import com.woorea.openstack.keystone.model.Roles; +import com.woorea.openstack.keystone.model.Users; + +public class RolesResource extends GenericResource { + + public RolesResource(OpenStackClient client) { + super(client, "/roles", Role.class, Roles.class); + } + + public OpenStackRequest users(String domainId, String userId) { + return CLIENT.get(new StringBuilder(path).append("/").append(domainId).append("/users/").append(userId).append("/roles").toString(), Users.class); + } + +} diff --git a/keystone-client/src/main/java/com/woorea/openstack/keystone/v3/api/ServicesResource.java b/keystone-client/src/main/java/com/woorea/openstack/keystone/v3/api/ServicesResource.java new file mode 100644 index 000000000..4742a2f04 --- /dev/null +++ b/keystone-client/src/main/java/com/woorea/openstack/keystone/v3/api/ServicesResource.java @@ -0,0 +1,13 @@ +package com.woorea.openstack.keystone.v3.api; + +import com.woorea.openstack.base.client.OpenStackClient; +import com.woorea.openstack.keystone.model.Service; +import com.woorea.openstack.keystone.model.Services; + +public class ServicesResource extends GenericResource { + + public ServicesResource(OpenStackClient client) { + super(client, "/services", Service.class, Services.class); + } + +} diff --git a/keystone-client/src/main/java/com/woorea/openstack/keystone/v3/api/TokensResource.java b/keystone-client/src/main/java/com/woorea/openstack/keystone/v3/api/TokensResource.java new file mode 100644 index 000000000..048fad695 --- /dev/null +++ b/keystone-client/src/main/java/com/woorea/openstack/keystone/v3/api/TokensResource.java @@ -0,0 +1,38 @@ +package com.woorea.openstack.keystone.v3.api; + +import com.woorea.openstack.base.client.Entity; +import com.woorea.openstack.base.client.HttpMethod; +import com.woorea.openstack.base.client.OpenStackClient; +import com.woorea.openstack.base.client.OpenStackRequest; +import com.woorea.openstack.keystone.v3.model.Authentication; +import com.woorea.openstack.keystone.v3.model.Token; + +public class TokensResource { + + private final OpenStackClient CLIENT; + + public TokensResource(OpenStackClient client) { + CLIENT = client; + } + + public Authenticate authenticate(Authentication authentication) { + return new Authenticate(authentication); + } + + public class Authenticate extends OpenStackRequest { + + private Authentication authentication; + + public Authenticate() { + + } + + public Authenticate(Authentication authentication) { + super(CLIENT, HttpMethod.POST, "/auth/tokens", Entity.json(authentication), Token.class); + this.authentication = authentication; + } + + } + +} + diff --git a/keystone-client/src/main/java/com/woorea/openstack/keystone/v3/api/UsersResource.java b/keystone-client/src/main/java/com/woorea/openstack/keystone/v3/api/UsersResource.java new file mode 100644 index 000000000..d0c07dbec --- /dev/null +++ b/keystone-client/src/main/java/com/woorea/openstack/keystone/v3/api/UsersResource.java @@ -0,0 +1,27 @@ +package com.woorea.openstack.keystone.v3.api; + +import com.woorea.openstack.base.client.OpenStackClient; +import com.woorea.openstack.base.client.OpenStackRequest; +import com.woorea.openstack.keystone.model.Services; +import com.woorea.openstack.keystone.model.User; +import com.woorea.openstack.keystone.model.Users; + +public class UsersResource extends GenericResource { + + public UsersResource(OpenStackClient client) { + super(client, "/users", User.class, Users.class); + } + + public OpenStackRequest groups(String userId) { + return CLIENT.get(new StringBuilder(path).append("/").append(userId).append("/groups").toString(), Services.class); + } + + public OpenStackRequest projects(String userId) { + return CLIENT.get(new StringBuilder(path).append("/").append(userId).append("/projects").toString(), Services.class); + } + + public OpenStackRequest roles(String userId) { + return CLIENT.get(new StringBuilder(path).append("/").append(userId).append("/roles").toString(), Services.class); + } + +} diff --git a/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Authentication.java b/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Authentication.java new file mode 100644 index 000000000..f4e71f18b --- /dev/null +++ b/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Authentication.java @@ -0,0 +1,222 @@ +package com.woorea.openstack.keystone.v3.model; + +import java.io.Serializable; +import java.util.ArrayList; +import java.util.List; + +import org.codehaus.jackson.map.annotate.JsonRootName; + +@JsonRootName("auth") +public class Authentication implements Serializable { + + public static final class Identity { + + public static final Identity password(String name, String password) { + Identity identity = new Identity(); + identity.getMethods().add("password"); + Password method = new Password(); + method.getUser().setName(name); + method.getUser().setPassword(password); + identity.setPassword(method); + return identity; + } + + private List methods = new ArrayList(); + + public static final class Password { + + public static final class User { + + public static final class Domain { + + private String id; + + private String name; + + public String getId() { + return id; + } + + public void setId(String id) { + this.id = id; + } + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + } + + private Domain domain; + + private String id; + + private String name; + + private String password; + + public Domain getDomain() { + return domain; + } + + public void setDomain(Domain domain) { + this.domain = domain; + } + + public String getId() { + return id; + } + + public void setId(String id) { + this.id = id; + } + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + + public String getPassword() { + return password; + } + + public void setPassword(String password) { + this.password = password; + } + + } + + private User user = new User(); + + public User getUser() { + return user; + } + + public void setUser(User user) { + this.user = user; + } + + } + + private Password password; + + public static final class Token { + + private String id; + + public String getId() { + return id; + } + + public void setId(String id) { + this.id = id; + } + + } + + private Token token; + + public List getMethods() { + return methods; + } + + public void setMethods(List methods) { + this.methods = methods; + } + + public Password getPassword() { + return password; + } + + public void setPassword(Password password) { + this.password = password; + } + + public Token getToken() { + return token; + } + + public void setToken(Token token) { + this.token = token; + } + + } + + private Identity identity; + + public static final class Scope { + + public static final class Project { + + public static final class Domain { + + private String id; + + private String name; + + public String getId() { + return id; + } + + public void setId(String id) { + this.id = id; + } + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + } + + private String id; + + private String name; + + public String getId() { + return id; + } + + public void setId(String id) { + this.id = id; + } + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + + } + + } + + private Scope scope; + + public Identity getIdentity() { + return identity; + } + + public void setIdentity(Identity identity) { + this.identity = identity; + } + + public Scope getScope() { + return scope; + } + + public void setScope(Scope scope) { + this.scope = scope; + } + +} diff --git a/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Token.java b/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Token.java new file mode 100644 index 000000000..0f3bbf289 --- /dev/null +++ b/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Token.java @@ -0,0 +1,120 @@ +package com.woorea.openstack.keystone.v3.model; + +import java.io.Serializable; +import java.util.Calendar; +import java.util.List; + +import org.codehaus.jackson.annotate.JsonIgnoreProperties; +import org.codehaus.jackson.annotate.JsonProperty; +import org.codehaus.jackson.map.annotate.JsonRootName; + +@JsonRootName("token") +@JsonIgnoreProperties(ignoreUnknown=true) +public class Token implements Serializable { + + private String id; + + @JsonProperty("expires_at") + private Calendar expiresAt; + + @JsonProperty("issued_at") + private Calendar issuedAt; + + private List methods; + + @JsonIgnoreProperties(ignoreUnknown=true) + private static final class Domain { + + private String id; + + private String name; + + } + + @JsonIgnoreProperties(ignoreUnknown=true) + public static final class User { + + @JsonIgnoreProperties(ignoreUnknown=true) + private static final class Domain { + + private String id; + + private String name; + + } + + private String id; + + private String name; + + } + + private User user; + + @JsonIgnoreProperties(ignoreUnknown=true) + public static final class Role { + + private String id; + + private String name; + + } + + private List roles; + + public String getId() { + return id; + } + + public void setId(String id) { + this.id = id; + } + + public Calendar getExpiresAt() { + return expiresAt; + } + + public void setExpiresAt(Calendar expiresAt) { + this.expiresAt = expiresAt; + } + + public Calendar getIssuedAt() { + return issuedAt; + } + + public void setIssuedAt(Calendar issuedAt) { + this.issuedAt = issuedAt; + } + + public List getMethods() { + return methods; + } + + public void setMethods(List methods) { + this.methods = methods; + } + + public User getUser() { + return user; + } + + public void setUser(User user) { + this.user = user; + } + + public List getRoles() { + return roles; + } + + public void setRoles(List roles) { + this.roles = roles; + } + + @Override + public String toString() { + return "Token [id=" + id + ", expiresAt=" + expiresAt.getTime() + ", issuedAt=" + + issuedAt.getTime() + ", methods=" + methods + ", user=" + user + + ", roles=" + roles + "]"; + } + +} diff --git a/nova-client/src/main/java/com/woorea/openstack/nova/api/ServersResource.java b/nova-client/src/main/java/com/woorea/openstack/nova/api/ServersResource.java index b0fbbc6ab..ca48b6fc4 100644 --- a/nova-client/src/main/java/com/woorea/openstack/nova/api/ServersResource.java +++ b/nova-client/src/main/java/com/woorea/openstack/nova/api/ServersResource.java @@ -1,6 +1,8 @@ package com.woorea.openstack.nova.api; +import java.util.Map; + import com.woorea.openstack.base.client.Entity; import com.woorea.openstack.base.client.HttpMethod; import com.woorea.openstack.base.client.OpenStackClient; @@ -159,6 +161,14 @@ public UpdateServer(String id, Server server) { } } + + public UpdateServer update(String serverId, String name, String accessIPv4, String accessIPv6) { + Server server = new Server(); + //server.setName(name); + //server.setAccessIPv4(accessIPv4); + //server.setAccessIPv6(accessIPv6); + return new UpdateServer(serverId, server); + } public abstract class Action extends OpenStackRequest { @@ -177,6 +187,12 @@ public ChangePasswordAction(String id, ChangePassword action) { } } + + public ChangePasswordAction changePassword(String serverId, String adminPass) { + ChangePassword changePassword = new ChangePassword(); + changePassword.setAdminPass(adminPass); + return new ChangePasswordAction(serverId, changePassword); + } public class RebootAction extends Action { @@ -203,6 +219,10 @@ public RebuildAction(String id, Rebuild action) { } } + + public RebuildAction rebuild(String serverId, Rebuild rebuild) { + return new RebuildAction(serverId, rebuild); + } public class ResizeAction extends Action { @@ -213,6 +233,13 @@ public ResizeAction(String id, Resize action) { } } + + public ResizeAction resize(String serverId, String flavorId, String diskConfig) { + Resize resize = new Resize(); + resize.setFlavorRef(flavorId); + resize.setDiskConfig(diskConfig); + return new ResizeAction(serverId, resize); + } public class ConfirmResizeAction extends Action { @@ -221,14 +248,22 @@ public ConfirmResizeAction(String id) { } } + + public ConfirmResizeAction confirmResize(String serverId) { + return new ConfirmResizeAction(serverId); + } - public class ReverResizeAction extends Action { + public class RevertResizeAction extends Action { - public ReverResizeAction(String id) { + public RevertResizeAction(String id) { super(id, Entity.json(new RevertResize()), Server.class); } } + + public RevertResizeAction revertResize(String serverId) { + return new RevertResizeAction(serverId); + } public class CreateImageAction extends Action { @@ -237,6 +272,13 @@ public CreateImageAction(String id, CreateImage createImage) { } } + + public CreateImageAction createImage(String serverId, String name, Map metadata) { + CreateImage createImage = new CreateImage(); + createImage.setName(name); + createImage.setMetadata(metadata); + return new CreateImageAction(serverId, createImage); + } public class StartServer extends OpenStackRequest { @@ -261,18 +303,14 @@ public StopServer(String id) { } } - - public CreateImageAction createImage(String id, CreateImage createImage) { - return new CreateImageAction(id, createImage); - } - + public StartServer start(String id) { - return new StartServer(id); - } - - public StopServer stop(String id) { - return new StopServer(id); - } + return new StartServer(id); + } + + public StopServer stop(String id) { + return new StopServer(id); + } public class GetVncConsoleServer extends OpenStackRequest { diff --git a/openstack-client-connectors/jersey2-connector/pom.xml b/openstack-client-connectors/jersey2-connector/pom.xml index 518ceb510..1738128d4 100644 --- a/openstack-client-connectors/jersey2-connector/pom.xml +++ b/openstack-client-connectors/jersey2-connector/pom.xml @@ -17,12 +17,12 @@ org.glassfish.jersey.core jersey-client - 2.0 + 2.6 org.glassfish.jersey.media jersey-media-json-jackson - 2.0 + 2.6 com.woorea diff --git a/openstack-client-connectors/jersey2-connector/src/main/java/com/woorea/openstack/connector/JaxRs20Connector.java b/openstack-client-connectors/jersey2-connector/src/main/java/com/woorea/openstack/connector/JaxRs20Connector.java index e555046b8..2171beacf 100644 --- a/openstack-client-connectors/jersey2-connector/src/main/java/com/woorea/openstack/connector/JaxRs20Connector.java +++ b/openstack-client-connectors/jersey2-connector/src/main/java/com/woorea/openstack/connector/JaxRs20Connector.java @@ -11,6 +11,8 @@ import javax.ws.rs.client.WebTarget; import javax.ws.rs.core.MediaType; +import org.glassfish.jersey.filter.LoggingFilter; + import com.woorea.openstack.base.client.HttpMethod; import com.woorea.openstack.base.client.OpenStackClientConnector; import com.woorea.openstack.base.client.OpenStackRequest; @@ -20,7 +22,7 @@ public class JaxRs20Connector implements OpenStackClientConnector { protected Client client = OpenStack.CLIENT; - private Jersey2LoggingFilter logger = new Jersey2LoggingFilter(Logger.getLogger("os"), 10000); + private LoggingFilter logger = new LoggingFilter(Logger.getLogger("os"), 10000); @Override public OpenStackResponse request(OpenStackRequest request) { diff --git a/openstack-client-connectors/jersey2-connector/src/main/java/com/woorea/openstack/connector/Jersey2LoggingFilter.java b/openstack-client-connectors/jersey2-connector/src/main/java/com/woorea/openstack/connector/Jersey2LoggingFilter.java deleted file mode 100644 index a96213829..000000000 --- a/openstack-client-connectors/jersey2-connector/src/main/java/com/woorea/openstack/connector/Jersey2LoggingFilter.java +++ /dev/null @@ -1,301 +0,0 @@ -/* - * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER. - * - * Copyright (c) 2011-2013 Oracle and/or its affiliates. All rights reserved. - * - * The contents of this file are subject to the terms of either the GNU - * General Public License Version 2 only ("GPL") or the Common Development - * and Distribution License("CDDL") (collectively, the "License"). You - * may not use this file except in compliance with the License. You can - * obtain a copy of the License at - * http://glassfish.java.net/public/CDDL+GPL_1_1.html - * or packager/legal/LICENSE.txt. See the License for the specific - * language governing permissions and limitations under the License. - * - * When distributing the software, include this License Header Notice in each - * file and include the License file at packager/legal/LICENSE.txt. - * - * GPL Classpath Exception: - * Oracle designates this particular file as subject to the "Classpath" - * exception as provided by Oracle in the GPL Version 2 section of the License - * file that accompanied this code. - * - * Modifications: - * If applicable, add the following below the License Header, with the fields - * enclosed by brackets [] replaced by your own identifying information: - * "Portions Copyright [year] [name of copyright owner]" - * - * Contributor(s): - * If you wish your version of this file to be governed by only the CDDL or - * only the GPL Version 2, indicate your decision by adding "[Contributor] - * elects to include this software in this distribution under the [CDDL or GPL - * Version 2] license." If you don't indicate a single choice of license, a - * recipient has the option to distribute your version of this file under - * either the CDDL, the GPL Version 2 or to extend the choice of license to - * its licensees as provided above. However, if you add GPL Version 2 code - * and therefore, elected the GPL Version 2 license, then the option applies - * only if the new code is made subject to such option by the copyright - * holder. - */ -package com.woorea.openstack.connector; - -import java.io.BufferedInputStream; -import java.io.ByteArrayOutputStream; -import java.io.IOException; -import java.io.InputStream; -import java.io.OutputStream; -import java.net.URI; -import java.util.List; -import java.util.Map; -import java.util.concurrent.atomic.AtomicLong; -import java.util.logging.Logger; - -import javax.annotation.Priority; -import javax.ws.rs.WebApplicationException; -import javax.ws.rs.client.ClientRequestContext; -import javax.ws.rs.client.ClientRequestFilter; -import javax.ws.rs.client.ClientResponseContext; -import javax.ws.rs.client.ClientResponseFilter; -import javax.ws.rs.container.ContainerRequestContext; -import javax.ws.rs.container.ContainerRequestFilter; -import javax.ws.rs.container.ContainerResponseContext; -import javax.ws.rs.container.ContainerResponseFilter; -import javax.ws.rs.container.PreMatching; -import javax.ws.rs.core.MultivaluedMap; -import javax.ws.rs.ext.WriterInterceptor; -import javax.ws.rs.ext.WriterInterceptorContext; - -import org.glassfish.jersey.message.internal.HeadersFactory; - -/** - * Universal logging filter. - * - * Can be used on client or server side. Has the highest priority. - * - * @author Pavel Bucek (pavel.bucek at oracle.com) - * @author Martin Matula (martin.matula at oracle.com) - */ -@PreMatching -@Priority(Integer.MIN_VALUE) -@SuppressWarnings("ClassWithMultipleLoggers") -public class Jersey2LoggingFilter implements ContainerRequestFilter, ClientRequestFilter, ContainerResponseFilter, - ClientResponseFilter, WriterInterceptor { - - private static final Logger LOGGER = Logger.getLogger(Jersey2LoggingFilter.class.getName()); - private static final String NOTIFICATION_PREFIX = "* "; - private static final String REQUEST_PREFIX = "> "; - private static final String RESPONSE_PREFIX = "< "; - private static final String ENTITY_LOGGER_PROPERTY = Jersey2LoggingFilter.class.getName() + ".entityLogger"; - // - @SuppressWarnings("NonConstantLogger") - private final Logger logger; - private final AtomicLong _id = new AtomicLong(0); - private final boolean printEntity; - private final int maxEntitySize; - - /** - * Create a logging filter logging the request and response to a default JDK - * logger, named as the fully qualified class name of this class. Entity - * logging is turned off by default. - */ - public Jersey2LoggingFilter() { - this(LOGGER, false); - } - - /** - * Create a logging filter with custom logger and custom settings of entity - * logging. - * - * @param logger the logger to log requests and responses. - * @param printEntity if true, entity will be logged as well up to the default maxEntitySize, which is 10KB - */ - public Jersey2LoggingFilter(Logger logger, boolean printEntity) { - this.logger = logger; - this.printEntity = printEntity; - this.maxEntitySize = 10 * 1024; - } - - /** - * Creates a logging filter with custom logger and entity logging turned on, but potentially limiting the size - * of entity to be buffered and logged. - * - * @param logger the logger to log requests and responses. - * @param maxEntitySize maximum number of entity bytes to be logged (and buffered) - if the entity is larger, - * logging filter will print (and buffer in memory) only the specified number of bytes - * and print "...more..." string at the end. - */ - public Jersey2LoggingFilter(Logger logger, int maxEntitySize) { - this.logger = logger; - this.printEntity = true; - this.maxEntitySize = maxEntitySize; - } - - private void log(StringBuilder b) { - if (logger != null) { - logger.info(b.toString()); - } - } - - private StringBuilder prefixId(StringBuilder b, long id) { - b.append(Long.toString(id)).append(" "); - return b; - } - - private void printRequestLine(StringBuilder b, long id, String method, URI uri) { - prefixId(b, id).append(NOTIFICATION_PREFIX).append("LoggingFilter - Request received on thread ").append(Thread.currentThread().getName()).append("\n"); - prefixId(b, id).append(REQUEST_PREFIX).append(method).append(" "). - append(uri.toASCIIString()).append("\n"); - } - - private void printResponseLine(StringBuilder b, long id, int status) { - prefixId(b, id).append(NOTIFICATION_PREFIX). - append("LoggingFilter - Response received on thread ").append(Thread.currentThread().getName()).append("\n"); - prefixId(b, id).append(RESPONSE_PREFIX). - append(Integer.toString(status)). - append("\n"); - } - - private void printPrefixedHeaders(StringBuilder b, long id, final String prefix, MultivaluedMap headers) { - for (Map.Entry> e : headers.entrySet()) { - List val = e.getValue(); - String header = e.getKey(); - - if (val.size() == 1) { - prefixId(b, id).append(prefix).append(header).append(": ").append(val.get(0)).append("\n"); - } else { - StringBuilder sb = new StringBuilder(); - boolean add = false; - for (Object s : val) { - if (add) { - sb.append(','); - } - add = true; - sb.append(s); - } - prefixId(b, id).append(prefix).append(header).append(": ").append(sb.toString()).append("\n"); - } - } - } - - private InputStream logInboundEntity(StringBuilder b, InputStream stream) throws IOException { - if (!stream.markSupported()) { - stream = new BufferedInputStream(stream); - } - stream.mark(maxEntitySize + 1); - byte[] entity = new byte[maxEntitySize + 1]; - int entitySize = stream.read(entity); - b.append(new String(entity, 0, Math.min(entitySize, maxEntitySize))); - if (entitySize > maxEntitySize) { - b.append("...more..."); - } - b.append('\n'); - stream.reset(); - return stream; - } - - @Override - public void filter(ClientRequestContext context) throws IOException { - long id = this._id.incrementAndGet(); - StringBuilder b = new StringBuilder(); - - printRequestLine(b, id, context.getMethod(), context.getUri()); - // TODO: change to context.getStringHeaders() once the method is added to the API - printPrefixedHeaders(b, id, REQUEST_PREFIX, HeadersFactory.asStringHeaders(context.getHeaders())); - - if (printEntity && context.hasEntity()) { - OutputStream stream = new LoggingStream(b, context.getEntityStream()); - context.setEntityStream(stream); - context.setProperty(ENTITY_LOGGER_PROPERTY, stream); - // not calling log(b) here - it will be called by the interceptor - } else { - log(b); - } - } - - @Override - public void filter(ClientRequestContext requestContext, ClientResponseContext responseContext) throws IOException { - long id = this._id.incrementAndGet(); - StringBuilder b = new StringBuilder(); - - printResponseLine(b, id, responseContext.getStatus()); - printPrefixedHeaders(b, id, RESPONSE_PREFIX, responseContext.getHeaders()); - - if (printEntity && responseContext.hasEntity()) { - responseContext.setEntityStream(logInboundEntity(b, responseContext.getEntityStream())); - } - - log(b); - } - - @Override - public void filter(ContainerRequestContext context) throws IOException { - long id = this._id.incrementAndGet(); - StringBuilder b = new StringBuilder(); - - printRequestLine(b, id, context.getMethod(), context.getUriInfo().getRequestUri()); - printPrefixedHeaders(b, id, REQUEST_PREFIX, context.getHeaders()); - - if (printEntity && context.hasEntity()) { - context.setEntityStream(logInboundEntity(b, context.getEntityStream())); - } - - log(b); - } - - @Override - public void filter(ContainerRequestContext requestContext, ContainerResponseContext responseContext) throws IOException { - long id = this._id.incrementAndGet(); - StringBuilder b = new StringBuilder(); - - printResponseLine(b, id, responseContext.getStatus()); - // TODO: change to context.getStringHeaders() once the method is added to the API - printPrefixedHeaders(b, id, RESPONSE_PREFIX, HeadersFactory.asStringHeaders(responseContext.getHeaders())); - - if (printEntity && responseContext.hasEntity()) { - OutputStream stream = new LoggingStream(b, responseContext.getEntityStream()); - responseContext.setEntityStream(stream); - requestContext.setProperty(ENTITY_LOGGER_PROPERTY, stream); - // not calling log(b) here - it will be called by the interceptor - } else { - log(b); - } - } - - @Override - public void aroundWriteTo(WriterInterceptorContext writerInterceptorContext) throws IOException, WebApplicationException { - LoggingStream stream = (LoggingStream) writerInterceptorContext.getProperty(ENTITY_LOGGER_PROPERTY); - writerInterceptorContext.proceed(); - if (stream != null) { - log(stream.getStringBuilder()); - } - } - - private class LoggingStream extends OutputStream { - private static final String PASSWORD_PATTERN = "\"password\".*:.*\"(.*)\""; - private final StringBuilder b; - private final OutputStream inner; - private final ByteArrayOutputStream baos = new ByteArrayOutputStream(); - - LoggingStream(StringBuilder b, OutputStream inner) { - this.b = b; - this.inner = inner; - } - - StringBuilder getStringBuilder() { - // write entity to the builder - byte[] entity = baos.toByteArray(); - String entityString = new String(entity); - entityString = entityString.replaceAll(PASSWORD_PATTERN, "\"password\" : \"******\""); - b.append(entityString).append('\n'); - return b; - } - - @Override - public void write(int i) throws IOException { - if (baos.size() <= maxEntitySize) { - baos.write(i); - } - inner.write(i); - } - } -} diff --git a/openstack-client-connectors/jersey2-connector/src/main/java/com/woorea/openstack/connector/OpenStack.java b/openstack-client-connectors/jersey2-connector/src/main/java/com/woorea/openstack/connector/OpenStack.java index e683fb676..879ce2cdb 100644 --- a/openstack-client-connectors/jersey2-connector/src/main/java/com/woorea/openstack/connector/OpenStack.java +++ b/openstack-client-connectors/jersey2-connector/src/main/java/com/woorea/openstack/connector/OpenStack.java @@ -15,7 +15,6 @@ import org.codehaus.jackson.map.annotate.JsonRootName; import org.codehaus.jackson.map.annotate.JsonSerialize.Inclusion; import org.glassfish.jersey.SslConfigurator; -import org.glassfish.jersey.client.ClientProperties; import org.glassfish.jersey.jackson.JacksonFeature; public class OpenStack { diff --git a/openstack-client/src/main/java/com/woorea/openstack/base/client/OpenStackClient.java b/openstack-client/src/main/java/com/woorea/openstack/base/client/OpenStackClient.java index e0a180d3f..3c8b6cac3 100644 --- a/openstack-client/src/main/java/com/woorea/openstack/base/client/OpenStackClient.java +++ b/openstack-client/src/main/java/com/woorea/openstack/base/client/OpenStackClient.java @@ -79,4 +79,8 @@ public void token(String token) { setTokenProvider(new OpenStackSimpleTokenProvider(token)); } + public OpenStackRequest get(String path, Class returnType) { + return new OpenStackRequest(this, HttpMethod.GET, path, null, returnType); + } + } diff --git a/openstack-client/src/main/java/com/woorea/openstack/base/client/OpenStackRequest.java b/openstack-client/src/main/java/com/woorea/openstack/base/client/OpenStackRequest.java index 156f55537..94a545f11 100644 --- a/openstack-client/src/main/java/com/woorea/openstack/base/client/OpenStackRequest.java +++ b/openstack-client/src/main/java/com/woorea/openstack/base/client/OpenStackRequest.java @@ -97,6 +97,10 @@ public Class returnType() { public R execute() { return client.execute(this); } + + public OpenStackResponse request() { + return client.request(this); + } /* (non-Javadoc) * @see java.lang.Object#toString() diff --git a/openstack-examples/src/main/java/com/woorea/openstack/examples/ExamplesConfiguration.java b/openstack-examples/src/main/java/com/woorea/openstack/examples/ExamplesConfiguration.java index 621c4aadb..056eae52b 100644 --- a/openstack-examples/src/main/java/com/woorea/openstack/examples/ExamplesConfiguration.java +++ b/openstack-examples/src/main/java/com/woorea/openstack/examples/ExamplesConfiguration.java @@ -7,13 +7,13 @@ public class ExamplesConfiguration { - public static final String KEYSTONE_AUTH_URL = "http://identity/v2.0"; + public static final String KEYSTONE_AUTH_URL = "https://region-a.geo-1.identity.hpcloudsvc.com:35357/v3"; public static final String KEYSTONE_USERNAME = ""; public static final String KEYSTONE_PASSWORD = ""; - public static final String KEYSTONE_ENDPOINT = "http://keystone/v2.0"; + public static final String KEYSTONE_ENDPOINT = "https://region-a.geo-1.identity.hpcloudsvc.com:35357/v3"; public static final String TENANT_NAME = "admin"; diff --git a/openstack-examples/src/main/java/com/woorea/openstack/examples/hpcloud/Keystone3Authentication.java b/openstack-examples/src/main/java/com/woorea/openstack/examples/hpcloud/Keystone3Authentication.java new file mode 100644 index 000000000..5481a154a --- /dev/null +++ b/openstack-examples/src/main/java/com/woorea/openstack/examples/hpcloud/Keystone3Authentication.java @@ -0,0 +1,34 @@ +package com.woorea.openstack.examples.hpcloud; + + +import com.woorea.openstack.base.client.OpenStackResponse; +import com.woorea.openstack.examples.ExamplesConfiguration; +import com.woorea.openstack.keystone.v3.model.Authentication; +import com.woorea.openstack.keystone.v3.model.Authentication.Identity; +import com.woorea.openstack.keystone.v3.Keystone; +import com.woorea.openstack.keystone.v3.model.Token; + +public class Keystone3Authentication { + + /** + * @param args + */ + public static void main(String[] args) { + Keystone keystone = new Keystone(ExamplesConfiguration.KEYSTONE_AUTH_URL); + + Authentication auth = new Authentication(); + auth.setIdentity(Identity.password(ExamplesConfiguration.KEYSTONE_USERNAME, ExamplesConfiguration.KEYSTONE_PASSWORD)); + + OpenStackResponse response = keystone.tokens().authenticate(auth).request(); + + String tokenId = response.header("X-Subject-Token"); + + Token token = response.getEntity(Token.class); + + System.out.println(tokenId); + + System.out.println(token); + + } + +} From fbdf3209010d1c148190ecb7e312a5dd58c08ed0 Mon Sep 17 00:00:00 2001 From: Luis Gervaso Date: Thu, 13 Mar 2014 11:02:28 +0100 Subject: [PATCH 084/144] added keystone v3 model --- .../keystone/v3/api/CredentialsResources.java | 8 +-- .../v3/api/DomainGroupRolesResource.java | 8 +-- .../keystone/v3/api/DomainsResource.java | 8 +-- .../keystone/v3/api/EndpointsResource.java | 4 +- .../keystone/v3/api/GroupUsersResource.java | 5 +- .../keystone/v3/api/GroupsResource.java | 8 +-- .../keystone/v3/api/PoliciesResource.java | 6 +- .../keystone/v3/api/ProjectsResource.java | 8 +-- .../keystone/v3/model/Credential.java | 58 ++++++++++++++++ .../keystone/v3/model/Credentials.java | 34 ++++++++++ .../openstack/keystone/v3/model/Domain.java | 45 +++++++++++++ .../openstack/keystone/v3/model/Domains.java | 34 ++++++++++ .../openstack/keystone/v3/model/Endpoint.java | 49 ++++++++++++++ .../keystone/v3/model/Endpoints.java | 34 ++++++++++ .../openstack/keystone/v3/model/Group.java | 48 +++++++++++++ .../openstack/keystone/v3/model/Groups.java | 34 ++++++++++ .../openstack/keystone/v3/model/Policies.java | 34 ++++++++++ .../openstack/keystone/v3/model/Policy.java | 58 ++++++++++++++++ .../openstack/keystone/v3/model/Project.java | 48 +++++++++++++ .../openstack/keystone/v3/model/Projects.java | 34 ++++++++++ .../openstack/keystone/v3/model/Role.java | 67 +++++++++++++++++++ .../openstack/keystone/v3/model/Roles.java | 34 ++++++++++ .../openstack/keystone/v3/model/Service.java | 45 +++++++++++++ .../openstack/keystone/v3/model/Services.java | 36 ++++++++++ .../openstack/keystone/v3/model/User.java | 55 +++++++++++++++ .../openstack/keystone/v3/model/Users.java | 36 ++++++++++ 26 files changed, 812 insertions(+), 26 deletions(-) create mode 100644 keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Credential.java create mode 100644 keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Credentials.java create mode 100644 keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Domain.java create mode 100644 keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Domains.java create mode 100644 keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Endpoint.java create mode 100644 keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Endpoints.java create mode 100644 keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Group.java create mode 100644 keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Groups.java create mode 100644 keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Policies.java create mode 100644 keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Policy.java create mode 100644 keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Project.java create mode 100644 keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Projects.java create mode 100644 keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Role.java create mode 100644 keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Roles.java create mode 100644 keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Service.java create mode 100644 keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Services.java create mode 100644 keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/User.java create mode 100644 keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Users.java diff --git a/keystone-client/src/main/java/com/woorea/openstack/keystone/v3/api/CredentialsResources.java b/keystone-client/src/main/java/com/woorea/openstack/keystone/v3/api/CredentialsResources.java index 9c564f2ca..7be2620da 100644 --- a/keystone-client/src/main/java/com/woorea/openstack/keystone/v3/api/CredentialsResources.java +++ b/keystone-client/src/main/java/com/woorea/openstack/keystone/v3/api/CredentialsResources.java @@ -1,13 +1,13 @@ package com.woorea.openstack.keystone.v3.api; import com.woorea.openstack.base.client.OpenStackClient; -import com.woorea.openstack.keystone.model.Endpoint; -import com.woorea.openstack.keystone.model.Endpoints; +import com.woorea.openstack.keystone.v3.model.Credential; +import com.woorea.openstack.keystone.v3.model.Credentials; -public class CredentialsResources extends GenericResource { +public class CredentialsResources extends GenericResource { public CredentialsResources(OpenStackClient client) { - super(client, "/credentials", Endpoint.class, Endpoints.class); + super(client, "/credentials", Credential.class, Credentials.class); } } diff --git a/keystone-client/src/main/java/com/woorea/openstack/keystone/v3/api/DomainGroupRolesResource.java b/keystone-client/src/main/java/com/woorea/openstack/keystone/v3/api/DomainGroupRolesResource.java index 5c9918905..a041ba20b 100644 --- a/keystone-client/src/main/java/com/woorea/openstack/keystone/v3/api/DomainGroupRolesResource.java +++ b/keystone-client/src/main/java/com/woorea/openstack/keystone/v3/api/DomainGroupRolesResource.java @@ -1,13 +1,13 @@ package com.woorea.openstack.keystone.v3.api; import com.woorea.openstack.base.client.OpenStackClient; -import com.woorea.openstack.keystone.model.Service; -import com.woorea.openstack.keystone.model.Services; +import com.woorea.openstack.keystone.v3.model.Role; +import com.woorea.openstack.keystone.v3.model.Roles; -public class DomainGroupRolesResource extends GenericResource { +public class DomainGroupRolesResource extends GenericResource { public DomainGroupRolesResource(OpenStackClient client, String path) { - super(client, path, Service.class, Services.class); + super(client, path, Role.class, Roles.class); } } diff --git a/keystone-client/src/main/java/com/woorea/openstack/keystone/v3/api/DomainsResource.java b/keystone-client/src/main/java/com/woorea/openstack/keystone/v3/api/DomainsResource.java index acd44ffcf..28015eec4 100644 --- a/keystone-client/src/main/java/com/woorea/openstack/keystone/v3/api/DomainsResource.java +++ b/keystone-client/src/main/java/com/woorea/openstack/keystone/v3/api/DomainsResource.java @@ -1,13 +1,13 @@ package com.woorea.openstack.keystone.v3.api; import com.woorea.openstack.base.client.OpenStackClient; -import com.woorea.openstack.keystone.model.Service; -import com.woorea.openstack.keystone.model.Services; +import com.woorea.openstack.keystone.v3.model.Domain; +import com.woorea.openstack.keystone.v3.model.Domains; -public class DomainsResource extends GenericResource { +public class DomainsResource extends GenericResource { public DomainsResource(OpenStackClient client) { - super(client, "/domains", Service.class, Services.class); + super(client, "/domains", Domain.class, Domains.class); } public DomainUserRolesResource userRoles(String domainId, String userId) { diff --git a/keystone-client/src/main/java/com/woorea/openstack/keystone/v3/api/EndpointsResource.java b/keystone-client/src/main/java/com/woorea/openstack/keystone/v3/api/EndpointsResource.java index cc9d209b7..d1db88a14 100644 --- a/keystone-client/src/main/java/com/woorea/openstack/keystone/v3/api/EndpointsResource.java +++ b/keystone-client/src/main/java/com/woorea/openstack/keystone/v3/api/EndpointsResource.java @@ -1,8 +1,8 @@ package com.woorea.openstack.keystone.v3.api; import com.woorea.openstack.base.client.OpenStackClient; -import com.woorea.openstack.keystone.model.Endpoint; -import com.woorea.openstack.keystone.model.Endpoints; +import com.woorea.openstack.keystone.v3.model.Endpoint; +import com.woorea.openstack.keystone.v3.model.Endpoints; public class EndpointsResource extends GenericResource { diff --git a/keystone-client/src/main/java/com/woorea/openstack/keystone/v3/api/GroupUsersResource.java b/keystone-client/src/main/java/com/woorea/openstack/keystone/v3/api/GroupUsersResource.java index bf7c9b300..60cce41c4 100644 --- a/keystone-client/src/main/java/com/woorea/openstack/keystone/v3/api/GroupUsersResource.java +++ b/keystone-client/src/main/java/com/woorea/openstack/keystone/v3/api/GroupUsersResource.java @@ -1,8 +1,9 @@ package com.woorea.openstack.keystone.v3.api; import com.woorea.openstack.base.client.OpenStackClient; -import com.woorea.openstack.keystone.model.User; -import com.woorea.openstack.keystone.model.Users; +import com.woorea.openstack.keystone.v3.model.User; +import com.woorea.openstack.keystone.v3.model.Users; + public class GroupUsersResource extends GenericResource { diff --git a/keystone-client/src/main/java/com/woorea/openstack/keystone/v3/api/GroupsResource.java b/keystone-client/src/main/java/com/woorea/openstack/keystone/v3/api/GroupsResource.java index 413f6f36b..be380cc87 100644 --- a/keystone-client/src/main/java/com/woorea/openstack/keystone/v3/api/GroupsResource.java +++ b/keystone-client/src/main/java/com/woorea/openstack/keystone/v3/api/GroupsResource.java @@ -1,13 +1,13 @@ package com.woorea.openstack.keystone.v3.api; import com.woorea.openstack.base.client.OpenStackClient; -import com.woorea.openstack.keystone.model.Service; -import com.woorea.openstack.keystone.model.Services; +import com.woorea.openstack.keystone.v3.model.Group; +import com.woorea.openstack.keystone.v3.model.Groups; -public class GroupsResource extends GenericResource { +public class GroupsResource extends GenericResource { public GroupsResource(OpenStackClient client) { - super(client, "/domains", Service.class, Services.class); + super(client, "/groups", Group.class, Groups.class); } public DomainUserRolesResource userRoles(String domainId, String userId) { diff --git a/keystone-client/src/main/java/com/woorea/openstack/keystone/v3/api/PoliciesResource.java b/keystone-client/src/main/java/com/woorea/openstack/keystone/v3/api/PoliciesResource.java index d6dcd7f7b..ba16a4657 100644 --- a/keystone-client/src/main/java/com/woorea/openstack/keystone/v3/api/PoliciesResource.java +++ b/keystone-client/src/main/java/com/woorea/openstack/keystone/v3/api/PoliciesResource.java @@ -3,11 +3,13 @@ import com.woorea.openstack.base.client.OpenStackClient; import com.woorea.openstack.keystone.model.Role; import com.woorea.openstack.keystone.model.Roles; +import com.woorea.openstack.keystone.v3.model.Policies; +import com.woorea.openstack.keystone.v3.model.Policy; -public class PoliciesResource extends GenericResource { +public class PoliciesResource extends GenericResource { public PoliciesResource(OpenStackClient client) { - super(client, "/policies", Role.class, Roles.class); + super(client, "/policies", Policy.class, Policies.class); } } diff --git a/keystone-client/src/main/java/com/woorea/openstack/keystone/v3/api/ProjectsResource.java b/keystone-client/src/main/java/com/woorea/openstack/keystone/v3/api/ProjectsResource.java index d0b5af9dc..9e23563e4 100644 --- a/keystone-client/src/main/java/com/woorea/openstack/keystone/v3/api/ProjectsResource.java +++ b/keystone-client/src/main/java/com/woorea/openstack/keystone/v3/api/ProjectsResource.java @@ -2,14 +2,14 @@ import com.woorea.openstack.base.client.OpenStackClient; import com.woorea.openstack.base.client.OpenStackRequest; -import com.woorea.openstack.keystone.model.Service; -import com.woorea.openstack.keystone.model.Services; import com.woorea.openstack.keystone.model.Users; +import com.woorea.openstack.keystone.v3.model.Project; +import com.woorea.openstack.keystone.v3.model.Projects; -public class ProjectsResource extends GenericResource { +public class ProjectsResource extends GenericResource { public ProjectsResource(OpenStackClient client) { - super(client, "/projects", Service.class, Services.class); + super(client, "/projects", Project.class, Projects.class); } public OpenStackRequest users(String projectId) { diff --git a/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Credential.java b/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Credential.java new file mode 100644 index 000000000..121cef7ce --- /dev/null +++ b/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Credential.java @@ -0,0 +1,58 @@ +package com.woorea.openstack.keystone.v3.model; + +import java.util.HashMap; +import java.util.Map; + +public class Credential { + + private String id; + + private String projectId; + + private String type; + + private String userId; + + private Map blob = new HashMap(); + + public String getId() { + return id; + } + + public void setId(String id) { + this.id = id; + } + + public String getProjectId() { + return projectId; + } + + public void setProjectId(String projectId) { + this.projectId = projectId; + } + + public String getType() { + return type; + } + + public void setType(String type) { + this.type = type; + } + + public String getUserId() { + return userId; + } + + public void setUserId(String userId) { + this.userId = userId; + } + + public Map getBlob() { + return blob; + } + + public void setBlob(Map blob) { + this.blob = blob; + } + +} diff --git a/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Credentials.java b/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Credentials.java new file mode 100644 index 000000000..36eeda6ea --- /dev/null +++ b/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Credentials.java @@ -0,0 +1,34 @@ +package com.woorea.openstack.keystone.v3.model; + +import java.io.Serializable; +import java.util.Iterator; +import java.util.List; + +import org.codehaus.jackson.annotate.JsonProperty; + +public class Credentials implements Iterable, Serializable { + + @JsonProperty("credentials") + private List list; + + /** + * @return the list + */ + public List getList() { + return list; + } + + /* (non-Javadoc) + * @see java.lang.Object#toString() + */ + @Override + public String toString() { + return "Credentials [list=" + list + "]"; + } + + @Override + public Iterator iterator() { + return list.iterator(); + } + +} diff --git a/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Domain.java b/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Domain.java new file mode 100644 index 000000000..0504468ea --- /dev/null +++ b/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Domain.java @@ -0,0 +1,45 @@ +package com.woorea.openstack.keystone.v3.model; + +public class Domain { + + private String id; + + private String name; + + private String description; + + private Boolean enabled; + + public String getId() { + return id; + } + + public void setId(String id) { + this.id = id; + } + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + + public String getDescription() { + return description; + } + + public void setDescription(String description) { + this.description = description; + } + + public Boolean getEnabled() { + return enabled; + } + + public void setEnabled(Boolean enabled) { + this.enabled = enabled; + } + +} diff --git a/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Domains.java b/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Domains.java new file mode 100644 index 000000000..e42a6c495 --- /dev/null +++ b/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Domains.java @@ -0,0 +1,34 @@ +package com.woorea.openstack.keystone.v3.model; + +import java.io.Serializable; +import java.util.Iterator; +import java.util.List; + +import org.codehaus.jackson.annotate.JsonProperty; + +public class Domains implements Iterable, Serializable { + + @JsonProperty("domains") + private List list; + + /** + * @return the list + */ + public List getList() { + return list; + } + + /* (non-Javadoc) + * @see java.lang.Object#toString() + */ + @Override + public String toString() { + return "Domains [list=" + list + "]"; + } + + @Override + public Iterator iterator() { + return list.iterator(); + } + +} diff --git a/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Endpoint.java b/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Endpoint.java new file mode 100644 index 000000000..e415d43cb --- /dev/null +++ b/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Endpoint.java @@ -0,0 +1,49 @@ +package com.woorea.openstack.keystone.v3.model; + +import org.codehaus.jackson.annotate.JsonProperty; + +public class Endpoint { + + private String id; + + @JsonProperty("interface") + private String iface; + + private String name; + + @JsonProperty("service_id") + private String serviceId; + + public String getId() { + return id; + } + + public void setId(String id) { + this.id = id; + } + + public String getInterface() { + return iface; + } + + public void setInterface(String iface) { + this.iface = iface; + } + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + + public String getServiceId() { + return serviceId; + } + + public void setServiceId(String serviceId) { + this.serviceId = serviceId; + } + +} diff --git a/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Endpoints.java b/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Endpoints.java new file mode 100644 index 000000000..146e88b5b --- /dev/null +++ b/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Endpoints.java @@ -0,0 +1,34 @@ +package com.woorea.openstack.keystone.v3.model; + +import java.io.Serializable; +import java.util.Iterator; +import java.util.List; + +import org.codehaus.jackson.annotate.JsonProperty; + +public class Endpoints implements Iterable, Serializable { + + @JsonProperty("endpoints") + private List list; + + /** + * @return the list + */ + public List getList() { + return list; + } + + /* (non-Javadoc) + * @see java.lang.Object#toString() + */ + @Override + public String toString() { + return "Endpoints [list=" + list + "]"; + } + + @Override + public Iterator iterator() { + return list.iterator(); + } + +} diff --git a/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Group.java b/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Group.java new file mode 100644 index 000000000..31907bb26 --- /dev/null +++ b/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Group.java @@ -0,0 +1,48 @@ +package com.woorea.openstack.keystone.v3.model; + +import org.codehaus.jackson.annotate.JsonProperty; + +public class Group { + + private String id; + + @JsonProperty("domain_id") + private String domainId; + + private String name; + + private String description; + + public String getId() { + return id; + } + + public void setId(String id) { + this.id = id; + } + + public String getDomainId() { + return domainId; + } + + public void setDomainId(String domainId) { + this.domainId = domainId; + } + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + + public String getDescription() { + return description; + } + + public void setDescription(String description) { + this.description = description; + } + +} diff --git a/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Groups.java b/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Groups.java new file mode 100644 index 000000000..cc7b276fa --- /dev/null +++ b/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Groups.java @@ -0,0 +1,34 @@ +package com.woorea.openstack.keystone.v3.model; + +import java.io.Serializable; +import java.util.Iterator; +import java.util.List; + +import org.codehaus.jackson.annotate.JsonProperty; + +public class Groups implements Iterable, Serializable { + + @JsonProperty("groups") + private List list; + + /** + * @return the list + */ + public List getList() { + return list; + } + + /* (non-Javadoc) + * @see java.lang.Object#toString() + */ + @Override + public String toString() { + return "Groups [list=" + list + "]"; + } + + @Override + public Iterator iterator() { + return list.iterator(); + } + +} diff --git a/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Policies.java b/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Policies.java new file mode 100644 index 000000000..42da856d5 --- /dev/null +++ b/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Policies.java @@ -0,0 +1,34 @@ +package com.woorea.openstack.keystone.v3.model; + +import java.io.Serializable; +import java.util.Iterator; +import java.util.List; + +import org.codehaus.jackson.annotate.JsonProperty; + +public class Policies implements Iterable, Serializable { + + @JsonProperty("policies") + private List list; + + /** + * @return the list + */ + public List getList() { + return list; + } + + /* (non-Javadoc) + * @see java.lang.Object#toString() + */ + @Override + public String toString() { + return "Policies [list=" + list + "]"; + } + + @Override + public Iterator iterator() { + return list.iterator(); + } + +} diff --git a/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Policy.java b/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Policy.java new file mode 100644 index 000000000..2e673c9f6 --- /dev/null +++ b/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Policy.java @@ -0,0 +1,58 @@ +package com.woorea.openstack.keystone.v3.model; + +import java.util.HashMap; +import java.util.Map; + +public class Policy { + + private String id; + + private String projectId; + + private String type; + + private String userId; + + private Map blob = new HashMap(); + + public String getId() { + return id; + } + + public void setId(String id) { + this.id = id; + } + + public String getProjectId() { + return projectId; + } + + public void setProjectId(String projectId) { + this.projectId = projectId; + } + + public String getType() { + return type; + } + + public void setType(String type) { + this.type = type; + } + + public String getUserId() { + return userId; + } + + public void setUserId(String userId) { + this.userId = userId; + } + + public Map getBlob() { + return blob; + } + + public void setBlob(Map blob) { + this.blob = blob; + } + +} diff --git a/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Project.java b/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Project.java new file mode 100644 index 000000000..802207b8c --- /dev/null +++ b/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Project.java @@ -0,0 +1,48 @@ +package com.woorea.openstack.keystone.v3.model; + +import org.codehaus.jackson.annotate.JsonProperty; + +public class Project { + + private String id; + + @JsonProperty("domain_id") + private String domainId; + + private String name; + + private Boolean enabled; + + public String getId() { + return id; + } + + public void setId(String id) { + this.id = id; + } + + public String getDomainId() { + return domainId; + } + + public void setDomainId(String domainId) { + this.domainId = domainId; + } + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + + public Boolean getEnabled() { + return enabled; + } + + public void setEnabled(Boolean enabled) { + this.enabled = enabled; + } + +} diff --git a/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Projects.java b/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Projects.java new file mode 100644 index 000000000..fa390644a --- /dev/null +++ b/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Projects.java @@ -0,0 +1,34 @@ +package com.woorea.openstack.keystone.v3.model; + +import java.io.Serializable; +import java.util.Iterator; +import java.util.List; + +import org.codehaus.jackson.annotate.JsonProperty; + +public class Projects implements Iterable, Serializable { + + @JsonProperty("projects") + private List list; + + /** + * @return the list + */ + public List getList() { + return list; + } + + /* (non-Javadoc) + * @see java.lang.Object#toString() + */ + @Override + public String toString() { + return "Projects [list=" + list + "]"; + } + + @Override + public Iterator iterator() { + return list.iterator(); + } + +} diff --git a/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Role.java b/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Role.java new file mode 100644 index 000000000..09d47a110 --- /dev/null +++ b/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Role.java @@ -0,0 +1,67 @@ +package com.woorea.openstack.keystone.v3.model; + +import java.io.Serializable; + +import org.codehaus.jackson.map.annotate.JsonRootName; + +@JsonRootName("role") +public class Role implements Serializable { + + private String id; + + private String name; + + private String description; + + private String enabled; + + /** + * @return the id + */ + public String getId() { + return id; + } + + /** + * @return the name + */ + public String getName() { + return name; + } + + /** + * @param name the name to set + */ + public void setName(String name) { + this.name = name; + } + + /** + * @return the description + */ + public String getDescription() { + return description; + } + + /** + * @param description the description to set + */ + public void setDescription(String description) { + this.description = description; + } + + /** + * @return the enabled + */ + public String getEnabled() { + return enabled; + } + + /** + * @param enabled the enabled to set + */ + public void setEnabled(String enabled) { + this.enabled = enabled; + } + +} diff --git a/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Roles.java b/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Roles.java new file mode 100644 index 000000000..5a4e3b41f --- /dev/null +++ b/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Roles.java @@ -0,0 +1,34 @@ +package com.woorea.openstack.keystone.v3.model; + +import java.io.Serializable; +import java.util.Iterator; +import java.util.List; + +import org.codehaus.jackson.annotate.JsonProperty; + +public class Roles implements Iterable, Serializable { + + @JsonProperty("roles") + private List list; + + /** + * @return the list + */ + public List getList() { + return list; + } + + /* (non-Javadoc) + * @see java.lang.Object#toString() + */ + @Override + public String toString() { + return "Roles [list=" + list + "]"; + } + + @Override + public Iterator iterator() { + return list.iterator(); + } + +} diff --git a/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Service.java b/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Service.java new file mode 100644 index 000000000..24a5af57c --- /dev/null +++ b/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Service.java @@ -0,0 +1,45 @@ +package com.woorea.openstack.keystone.v3.model; + +public class Service { + + private String id; + + private String type; + + private String name; + + private String description; + + public String getId() { + return id; + } + + public void setId(String id) { + this.id = id; + } + + public String getType() { + return type; + } + + public void setType(String type) { + this.type = type; + } + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + + public String getDescription() { + return description; + } + + public void setDescription(String description) { + this.description = description; + } + +} diff --git a/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Services.java b/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Services.java new file mode 100644 index 000000000..4383aeca2 --- /dev/null +++ b/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Services.java @@ -0,0 +1,36 @@ +package com.woorea.openstack.keystone.v3.model; + +import java.io.Serializable; +import java.util.Iterator; +import java.util.List; + +import org.codehaus.jackson.annotate.JsonProperty; + +import com.woorea.openstack.keystone.model.Service; + +public class Services implements Iterable, Serializable { + + @JsonProperty("services") + private List list; + + /** + * @return the list + */ + public List getList() { + return list; + } + + /* (non-Javadoc) + * @see java.lang.Object#toString() + */ + @Override + public String toString() { + return "Services [list=" + list + "]"; + } + + @Override + public Iterator iterator() { + return list.iterator(); + } + +} diff --git a/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/User.java b/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/User.java new file mode 100644 index 000000000..b318b5ebd --- /dev/null +++ b/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/User.java @@ -0,0 +1,55 @@ +package com.woorea.openstack.keystone.v3.model; + +import org.codehaus.jackson.annotate.JsonProperty; + +public class User { + + private String id; + + @JsonProperty("domain_id") + private String domainId; + + @JsonProperty("default_project_id") + private String defaultProjectId; + + private String name; + + private String email; + + private String description; + + private Boolean enabled; + + public String getId() { + return id; + } + + public void setId(String id) { + this.id = id; + } + + public String getDomainId() { + return domainId; + } + + public void setDomainId(String domainId) { + this.domainId = domainId; + } + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + + public Boolean getEnabled() { + return enabled; + } + + public void setEnabled(Boolean enabled) { + this.enabled = enabled; + } + +} diff --git a/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Users.java b/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Users.java new file mode 100644 index 000000000..fa3c6d4ac --- /dev/null +++ b/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Users.java @@ -0,0 +1,36 @@ +package com.woorea.openstack.keystone.v3.model; + +import java.io.Serializable; +import java.util.Iterator; +import java.util.List; + +import org.codehaus.jackson.annotate.JsonProperty; + +import com.woorea.openstack.keystone.model.User; + +public class Users implements Iterable, Serializable { + + @JsonProperty("users") + private List list; + + /** + * @return the list + */ + public List getList() { + return list; + } + + /* (non-Javadoc) + * @see java.lang.Object#toString() + */ + @Override + public String toString() { + return "Users [list=" + list + "]"; + } + + @Override + public Iterator iterator() { + return list.iterator(); + } + +} From 23065c454fae2792a1fbc8e6110d46d245571e38 Mon Sep 17 00:00:00 2001 From: Luis Gervaso Date: Thu, 13 Mar 2014 11:29:37 +0100 Subject: [PATCH 085/144] added missing properties --- .../keystone/v3/model/Authentication.java | 42 +++++++++++++++++++ 1 file changed, 42 insertions(+) diff --git a/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Authentication.java b/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Authentication.java index f4e71f18b..1f59c4e1c 100644 --- a/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Authentication.java +++ b/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Authentication.java @@ -6,6 +6,8 @@ import org.codehaus.jackson.map.annotate.JsonRootName; +import com.woorea.openstack.keystone.v3.model.Authentication.Scope; + @JsonRootName("auth") public class Authentication implements Serializable { @@ -152,6 +154,25 @@ public void setToken(Token token) { public static final class Scope { + public static Scope project(String projectId) { + Scope scope = new Scope(); + Project project = new Project(); + project.setId(projectId); + scope.setProject(project); + return scope; + } + + public static Scope project(String domainName, String projectName) { + Scope scope = new Scope(); + com.woorea.openstack.keystone.v3.model.Authentication.Scope.Project.Domain domain = new com.woorea.openstack.keystone.v3.model.Authentication.Scope.Project.Domain(); + domain.setName(domainName); + Project project = new Project(); + project.setDomain(domain); + project.setName(projectName); + scope.setProject(project); + return scope; + } + public static final class Project { public static final class Domain { @@ -179,7 +200,10 @@ public void setName(String name) { private String id; + private Domain domain; + private String name; + public String getId() { return id; @@ -189,6 +213,14 @@ public void setId(String id) { this.id = id; } + public Domain getDomain() { + return domain; + } + + public void setDomain(Domain domain) { + this.domain = domain; + } + public String getName() { return name; } @@ -199,6 +231,16 @@ public void setName(String name) { } + private Project project; + + public Project getProject() { + return project; + } + + public void setProject(Project project) { + this.project = project; + } + } private Scope scope; From 9ec65c7e8b5a3b22dd5d90dbdf61463c65ab1eb7 Mon Sep 17 00:00:00 2001 From: Luis Gervaso Date: Fri, 14 Mar 2014 05:09:32 +0100 Subject: [PATCH 086/144] added missing properties --- .../openstack/keystone/v3/Keystone.java | 9 +- .../v3/api/DomainUserRolesResource.java | 11 ++ .../keystone/v3/api/RolesResource.java | 6 +- .../keystone/v3/api/TokensResource.java | 4 + .../keystone/v3/api/UsersResource.java | 4 +- .../keystone/v3/model/Authentication.java | 30 ++++- .../keystone/v3/model/Credential.java | 3 + .../openstack/keystone/v3/model/Domain.java | 3 + .../openstack/keystone/v3/model/Endpoint.java | 2 + .../openstack/keystone/v3/model/Group.java | 2 + .../openstack/keystone/v3/model/Policy.java | 3 + .../openstack/keystone/v3/model/Project.java | 2 + .../openstack/keystone/v3/model/Service.java | 3 + .../openstack/keystone/v3/model/Token.java | 114 +++++++++++++++++- .../openstack/keystone/v3/model/User.java | 38 +++++- 15 files changed, 222 insertions(+), 12 deletions(-) diff --git a/keystone-client/src/main/java/com/woorea/openstack/keystone/v3/Keystone.java b/keystone-client/src/main/java/com/woorea/openstack/keystone/v3/Keystone.java index f5ea76d29..6ff889cb5 100644 --- a/keystone-client/src/main/java/com/woorea/openstack/keystone/v3/Keystone.java +++ b/keystone-client/src/main/java/com/woorea/openstack/keystone/v3/Keystone.java @@ -1,12 +1,12 @@ package com.woorea.openstack.keystone.v3; +import com.woorea.openstack.keystone.v3.api.DomainsResource; import com.woorea.openstack.keystone.v3.api.EndpointsResource; import com.woorea.openstack.keystone.v3.api.RolesResource; import com.woorea.openstack.keystone.v3.api.ServicesResource; import com.woorea.openstack.keystone.v3.api.ProjectsResource; import com.woorea.openstack.keystone.v3.api.TokensResource; import com.woorea.openstack.keystone.v3.api.UsersResource; - import com.woorea.openstack.base.client.OpenStackClient; import com.woorea.openstack.base.client.OpenStackClientConnector; @@ -14,6 +14,8 @@ public class Keystone extends OpenStackClient { private final TokensResource TOKENS; + private final DomainsResource DOMAINS; + private final ProjectsResource PROJECTS; private final UsersResource USERS; @@ -27,6 +29,7 @@ public class Keystone extends OpenStackClient { public Keystone(String endpoint, OpenStackClientConnector connector) { super(endpoint, connector); TOKENS = new TokensResource(this); + DOMAINS = new DomainsResource(this); PROJECTS = new ProjectsResource(this); USERS = new UsersResource(this); ROLES = new RolesResource(this); @@ -42,6 +45,10 @@ public TokensResource tokens() { return TOKENS; } + public DomainsResource domains() { + return DOMAINS; + } + public ProjectsResource projects() { return PROJECTS; } diff --git a/keystone-client/src/main/java/com/woorea/openstack/keystone/v3/api/DomainUserRolesResource.java b/keystone-client/src/main/java/com/woorea/openstack/keystone/v3/api/DomainUserRolesResource.java index d30d8f799..9a6e8e566 100644 --- a/keystone-client/src/main/java/com/woorea/openstack/keystone/v3/api/DomainUserRolesResource.java +++ b/keystone-client/src/main/java/com/woorea/openstack/keystone/v3/api/DomainUserRolesResource.java @@ -1,6 +1,9 @@ package com.woorea.openstack.keystone.v3.api; +import com.woorea.openstack.base.client.Entity; +import com.woorea.openstack.base.client.HttpMethod; import com.woorea.openstack.base.client.OpenStackClient; +import com.woorea.openstack.base.client.OpenStackRequest; import com.woorea.openstack.keystone.model.Role; import com.woorea.openstack.keystone.model.Roles; @@ -10,4 +13,12 @@ public DomainUserRolesResource(OpenStackClient client, String path) { super(client, path, Role.class, Roles.class); } + public OpenStackRequest add(String roleId) { + return new OpenStackRequest(CLIENT, HttpMethod.PUT, new StringBuilder(path).append("/").append(roleId).toString(), Entity.json(""), Void.class); + } + + public OpenStackRequest remove(String roleId) { + return new OpenStackRequest(CLIENT, HttpMethod.DELETE, new StringBuilder(path).append("/").append(roleId).toString(), null, Void.class); + } + } diff --git a/keystone-client/src/main/java/com/woorea/openstack/keystone/v3/api/RolesResource.java b/keystone-client/src/main/java/com/woorea/openstack/keystone/v3/api/RolesResource.java index a8e5de6cc..2c28a1bfa 100644 --- a/keystone-client/src/main/java/com/woorea/openstack/keystone/v3/api/RolesResource.java +++ b/keystone-client/src/main/java/com/woorea/openstack/keystone/v3/api/RolesResource.java @@ -2,9 +2,9 @@ import com.woorea.openstack.base.client.OpenStackClient; import com.woorea.openstack.base.client.OpenStackRequest; -import com.woorea.openstack.keystone.model.Role; -import com.woorea.openstack.keystone.model.Roles; -import com.woorea.openstack.keystone.model.Users; +import com.woorea.openstack.keystone.v3.model.Role; +import com.woorea.openstack.keystone.v3.model.Roles; +import com.woorea.openstack.keystone.v3.model.Users; public class RolesResource extends GenericResource { diff --git a/keystone-client/src/main/java/com/woorea/openstack/keystone/v3/api/TokensResource.java b/keystone-client/src/main/java/com/woorea/openstack/keystone/v3/api/TokensResource.java index 048fad695..c2d53b300 100644 --- a/keystone-client/src/main/java/com/woorea/openstack/keystone/v3/api/TokensResource.java +++ b/keystone-client/src/main/java/com/woorea/openstack/keystone/v3/api/TokensResource.java @@ -18,6 +18,10 @@ public TokensResource(OpenStackClient client) { public Authenticate authenticate(Authentication authentication) { return new Authenticate(authentication); } + + public OpenStackRequest show() { + return CLIENT.get("/auth/tokens", Token.class); + } public class Authenticate extends OpenStackRequest { diff --git a/keystone-client/src/main/java/com/woorea/openstack/keystone/v3/api/UsersResource.java b/keystone-client/src/main/java/com/woorea/openstack/keystone/v3/api/UsersResource.java index d0c07dbec..d6a6d1400 100644 --- a/keystone-client/src/main/java/com/woorea/openstack/keystone/v3/api/UsersResource.java +++ b/keystone-client/src/main/java/com/woorea/openstack/keystone/v3/api/UsersResource.java @@ -3,8 +3,8 @@ import com.woorea.openstack.base.client.OpenStackClient; import com.woorea.openstack.base.client.OpenStackRequest; import com.woorea.openstack.keystone.model.Services; -import com.woorea.openstack.keystone.model.User; -import com.woorea.openstack.keystone.model.Users; +import com.woorea.openstack.keystone.v3.model.User; +import com.woorea.openstack.keystone.v3.model.Users; public class UsersResource extends GenericResource { diff --git a/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Authentication.java b/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Authentication.java index 1f59c4e1c..cbb6d5dd6 100644 --- a/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Authentication.java +++ b/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Authentication.java @@ -13,16 +13,38 @@ public class Authentication implements Serializable { public static final class Identity { - public static final Identity password(String name, String password) { + public static final Identity password(String userId, String password) { Identity identity = new Identity(); identity.getMethods().add("password"); Password method = new Password(); - method.getUser().setName(name); + method.getUser().setId(userId); method.getUser().setPassword(password); identity.setPassword(method); return identity; } + public static final Identity password(String domainName, String username, String password) { + Identity identity = new Identity(); + identity.getMethods().add("password"); + Password method = new Password(); + com.woorea.openstack.keystone.v3.model.Authentication.Identity.Password.User.Domain domain = new com.woorea.openstack.keystone.v3.model.Authentication.Identity.Password.User.Domain(); + domain.setName(domainName); + method.getUser().setDomain(domain); + method.getUser().setName(username); + method.getUser().setPassword(password); + identity.setPassword(method); + return identity; + } + + public static final Identity token(String token) { + Identity identity = new Identity(); + identity.getMethods().add("token"); + Token method = new Token(); + method.setId(token); + identity.setToken(method); + return identity; + } + private List methods = new ArrayList(); public static final class Password { @@ -154,10 +176,10 @@ public void setToken(Token token) { public static final class Scope { - public static Scope project(String projectId) { + public static Scope project(String id) { Scope scope = new Scope(); Project project = new Project(); - project.setId(projectId); + project.setId(id); scope.setProject(project); return scope; } diff --git a/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Credential.java b/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Credential.java index 121cef7ce..ef40a2a51 100644 --- a/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Credential.java +++ b/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Credential.java @@ -3,6 +3,9 @@ import java.util.HashMap; import java.util.Map; +import org.codehaus.jackson.map.annotate.JsonRootName; + +@JsonRootName("credential") public class Credential { private String id; diff --git a/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Domain.java b/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Domain.java index 0504468ea..9df4fe2d7 100644 --- a/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Domain.java +++ b/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Domain.java @@ -1,5 +1,8 @@ package com.woorea.openstack.keystone.v3.model; +import org.codehaus.jackson.map.annotate.JsonRootName; + +@JsonRootName("domain") public class Domain { private String id; diff --git a/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Endpoint.java b/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Endpoint.java index e415d43cb..213e6905b 100644 --- a/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Endpoint.java +++ b/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Endpoint.java @@ -1,7 +1,9 @@ package com.woorea.openstack.keystone.v3.model; import org.codehaus.jackson.annotate.JsonProperty; +import org.codehaus.jackson.map.annotate.JsonRootName; +@JsonRootName("endpoint") public class Endpoint { private String id; diff --git a/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Group.java b/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Group.java index 31907bb26..5e718b536 100644 --- a/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Group.java +++ b/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Group.java @@ -1,7 +1,9 @@ package com.woorea.openstack.keystone.v3.model; import org.codehaus.jackson.annotate.JsonProperty; +import org.codehaus.jackson.map.annotate.JsonRootName; +@JsonRootName("group") public class Group { private String id; diff --git a/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Policy.java b/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Policy.java index 2e673c9f6..5abf84440 100644 --- a/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Policy.java +++ b/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Policy.java @@ -3,6 +3,9 @@ import java.util.HashMap; import java.util.Map; +import org.codehaus.jackson.map.annotate.JsonRootName; + +@JsonRootName("policy") public class Policy { private String id; diff --git a/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Project.java b/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Project.java index 802207b8c..070336eb1 100644 --- a/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Project.java +++ b/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Project.java @@ -1,7 +1,9 @@ package com.woorea.openstack.keystone.v3.model; import org.codehaus.jackson.annotate.JsonProperty; +import org.codehaus.jackson.map.annotate.JsonRootName; +@JsonRootName("project") public class Project { private String id; diff --git a/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Service.java b/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Service.java index 24a5af57c..578f2c181 100644 --- a/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Service.java +++ b/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Service.java @@ -1,5 +1,8 @@ package com.woorea.openstack.keystone.v3.model; +import org.codehaus.jackson.map.annotate.JsonRootName; + +@JsonRootName("service") public class Service { private String id; diff --git a/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Token.java b/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Token.java index 0f3bbf289..0876f4423 100644 --- a/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Token.java +++ b/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Token.java @@ -61,6 +61,108 @@ public static final class Role { } private List roles; + + public static final class Service { + + public static final class Endpoint { + + private String id; + + private String url; + + private String region; + + private Boolean enabled; + + @JsonProperty("legacy_endpoint_id") + private String legacyEndpointId; + + @JsonProperty("interface") + private String iface; + + public String getId() { + return id; + } + + public void setId(String id) { + this.id = id; + } + + public String getUrl() { + return url; + } + + public void setUrl(String url) { + this.url = url; + } + + public String getRegion() { + return region; + } + + public void setRegion(String region) { + this.region = region; + } + + public Boolean getEnabled() { + return enabled; + } + + public void setEnabled(Boolean enabled) { + this.enabled = enabled; + } + + public String getLegacyEndpointId() { + return legacyEndpointId; + } + + public void setLegacyEndpointId(String legacyEndpointId) { + this.legacyEndpointId = legacyEndpointId; + } + + public String getInterface() { + return iface; + } + + public void setInterface(String iface) { + this.iface = iface; + } + + } + + private String id; + + private String type; + + private List endpoints; + + public String getId() { + return id; + } + + public void setId(String id) { + this.id = id; + } + + public String getType() { + return type; + } + + public void setType(String type) { + this.type = type; + } + + public List getEndpoints() { + return endpoints; + } + + public void setEndpoints(List endpoints) { + this.endpoints = endpoints; + } + + } + + public List catalog; public String getId() { return id; @@ -110,11 +212,21 @@ public void setRoles(List roles) { this.roles = roles; } + public List getCatalog() { + return catalog; + } + + public void setCatalog(List catalog) { + this.catalog = catalog; + } + @Override public String toString() { return "Token [id=" + id + ", expiresAt=" + expiresAt.getTime() + ", issuedAt=" + issuedAt.getTime() + ", methods=" + methods + ", user=" + user - + ", roles=" + roles + "]"; + + ", roles=" + roles + ", catalog=" + catalog + "]"; } + + } diff --git a/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/User.java b/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/User.java index b318b5ebd..3b1787ba3 100644 --- a/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/User.java +++ b/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/User.java @@ -1,7 +1,9 @@ package com.woorea.openstack.keystone.v3.model; import org.codehaus.jackson.annotate.JsonProperty; +import org.codehaus.jackson.map.annotate.JsonRootName; +@JsonRootName("user") public class User { private String id; @@ -14,6 +16,8 @@ public class User { private String name; + private String password; + private String email; private String description; @@ -36,6 +40,14 @@ public void setDomainId(String domainId) { this.domainId = domainId; } + public String getDefaultProjectId() { + return defaultProjectId; + } + + public void setDefaultProjectId(String defaultProjectId) { + this.defaultProjectId = defaultProjectId; + } + public String getName() { return name; } @@ -43,7 +55,31 @@ public String getName() { public void setName(String name) { this.name = name; } - + + public String getPassword() { + return password; + } + + public void setPassword(String password) { + this.password = password; + } + + public String getEmail() { + return email; + } + + public void setEmail(String email) { + this.email = email; + } + + public String getDescription() { + return description; + } + + public void setDescription(String description) { + this.description = description; + } + public Boolean getEnabled() { return enabled; } From 9ac60fb9d5df45e39a42df1e4db779289372229e Mon Sep 17 00:00:00 2001 From: Luis Gervaso Date: Sat, 15 Mar 2014 03:37:35 +0100 Subject: [PATCH 087/144] fixed type in flavor vcpus, hdd added missing properties keystonev3 --- .../keystone/v3/api/ProjectUserRolesResource.java | 11 +++++++++++ .../openstack/keystone/v3/api/ProjectsResource.java | 8 ++++---- .../openstack/keystone/v3/model/Authentication.java | 2 -- .../java/com/woorea/openstack/nova/model/Flavor.java | 12 ++++++------ 4 files changed, 21 insertions(+), 12 deletions(-) diff --git a/keystone-client/src/main/java/com/woorea/openstack/keystone/v3/api/ProjectUserRolesResource.java b/keystone-client/src/main/java/com/woorea/openstack/keystone/v3/api/ProjectUserRolesResource.java index 9e314b937..9f3dc50d2 100644 --- a/keystone-client/src/main/java/com/woorea/openstack/keystone/v3/api/ProjectUserRolesResource.java +++ b/keystone-client/src/main/java/com/woorea/openstack/keystone/v3/api/ProjectUserRolesResource.java @@ -1,6 +1,9 @@ package com.woorea.openstack.keystone.v3.api; +import com.woorea.openstack.base.client.Entity; +import com.woorea.openstack.base.client.HttpMethod; import com.woorea.openstack.base.client.OpenStackClient; +import com.woorea.openstack.base.client.OpenStackRequest; import com.woorea.openstack.keystone.model.Role; import com.woorea.openstack.keystone.model.Roles; @@ -9,5 +12,13 @@ public class ProjectUserRolesResource extends GenericResource { public ProjectUserRolesResource(OpenStackClient client, String path) { super(client, path, Role.class, Roles.class); } + + public OpenStackRequest add(String roleId) { + return new OpenStackRequest(CLIENT, HttpMethod.PUT, new StringBuilder(path).append("/").append(roleId).toString(), Entity.json(""), Void.class); + } + + public OpenStackRequest remove(String roleId) { + return new OpenStackRequest(CLIENT, HttpMethod.DELETE, new StringBuilder(path).append("/").append(roleId).toString(), null, Void.class); + } } diff --git a/keystone-client/src/main/java/com/woorea/openstack/keystone/v3/api/ProjectsResource.java b/keystone-client/src/main/java/com/woorea/openstack/keystone/v3/api/ProjectsResource.java index 9e23563e4..2e9fd9ac9 100644 --- a/keystone-client/src/main/java/com/woorea/openstack/keystone/v3/api/ProjectsResource.java +++ b/keystone-client/src/main/java/com/woorea/openstack/keystone/v3/api/ProjectsResource.java @@ -16,12 +16,12 @@ public OpenStackRequest users(String projectId) { return CLIENT.get(new StringBuilder(path).append("/").append(projectId).append("/users/").toString(), Users.class); } - public DomainUserRolesResource userRoles(String projectId, String userId) { - return new DomainUserRolesResource(CLIENT, new StringBuilder(path).append("/").append(projectId).append("/users/").append(userId).append("/roles").toString()); + public ProjectUserRolesResource userRoles(String projectId, String userId) { + return new ProjectUserRolesResource(CLIENT, new StringBuilder(path).append("/").append(projectId).append("/users/").append(userId).append("/roles").toString()); } - public DomainUserRolesResource groupRoles(String projectId, String groupId) { - return new DomainUserRolesResource(CLIENT, new StringBuilder(path).append("/").append(projectId).append("/groups/").append(groupId).append("/roles").toString()); + public ProjectUserRolesResource groupRoles(String projectId, String groupId) { + return new ProjectUserRolesResource(CLIENT, new StringBuilder(path).append("/").append(projectId).append("/groups/").append(groupId).append("/roles").toString()); } } diff --git a/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Authentication.java b/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Authentication.java index cbb6d5dd6..7caffb0b7 100644 --- a/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Authentication.java +++ b/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Authentication.java @@ -6,8 +6,6 @@ import org.codehaus.jackson.map.annotate.JsonRootName; -import com.woorea.openstack.keystone.v3.model.Authentication.Scope; - @JsonRootName("auth") public class Authentication implements Serializable { diff --git a/nova-model/src/main/java/com/woorea/openstack/nova/model/Flavor.java b/nova-model/src/main/java/com/woorea/openstack/nova/model/Flavor.java index b04472bf6..107606250 100644 --- a/nova-model/src/main/java/com/woorea/openstack/nova/model/Flavor.java +++ b/nova-model/src/main/java/com/woorea/openstack/nova/model/Flavor.java @@ -13,11 +13,11 @@ public class Flavor implements Serializable { private String name; - private String vcpus; + private Integer vcpus; private Integer ram; - private String disk; + private Integer disk; @JsonProperty("OS-FLV-EXT-DATA:ephemeral") private Integer ephemeral; @@ -72,14 +72,14 @@ public void setName(String name) { /** * @return the vcpus */ - public String getVcpus() { + public Integer getVcpus() { return vcpus; } /** * @param vcpus the vcpus to set */ - public void setVcpus(String vcpus) { + public void setVcpus(Integer vcpus) { this.vcpus = vcpus; } @@ -100,14 +100,14 @@ public void setRam(Integer ram) { /** * @return the disk */ - public String getDisk() { + public Integer getDisk() { return disk; } /** * @param disk the disk to set */ - public void setDisk(String disk) { + public void setDisk(Integer disk) { this.disk = disk; } From 96cfa66cace5843b5902a11c0e680272f72f7b68 Mon Sep 17 00:00:00 2001 From: Luis Gervaso Date: Sun, 16 Mar 2014 21:25:00 +0100 Subject: [PATCH 088/144] added getter setters --- .../openstack/keystone/v3/model/Token.java | 152 +++++++++++++++++- 1 file changed, 145 insertions(+), 7 deletions(-) diff --git a/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Token.java b/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Token.java index 0876f4423..aee6fe550 100644 --- a/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Token.java +++ b/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Token.java @@ -23,14 +23,69 @@ public class Token implements Serializable { private List methods; @JsonIgnoreProperties(ignoreUnknown=true) - private static final class Domain { + public static final class Domain { private String id; private String name; + + public String getId() { + return id; + } + + public void setId(String id) { + this.id = id; + } + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } } + private Domain domain; + + @JsonIgnoreProperties(ignoreUnknown=true) + public static final class Project { + + private Domain domain; + + private String id; + + private String name; + + public Domain getDomain() { + return domain; + } + + public void setDomain(Domain domain) { + this.domain = domain; + } + + public String getId() { + return id; + } + + public void setId(String id) { + this.id = id; + } + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + + } + + private Project project; + @JsonIgnoreProperties(ignoreUnknown=true) public static final class User { @@ -40,12 +95,44 @@ private static final class Domain { private String id; private String name; + + public String getId() { + return id; + } + + public void setId(String id) { + this.id = id; + } + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } } private String id; private String name; + + public String getId() { + return id; + } + + public void setId(String id) { + this.id = id; + } + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } } @@ -162,71 +249,122 @@ public void setEndpoints(List endpoints) { } - public List catalog; + private List catalog; + public String getId() { return id; } + + public void setId(String id) { this.id = id; } + + public Calendar getExpiresAt() { return expiresAt; } + + public void setExpiresAt(Calendar expiresAt) { this.expiresAt = expiresAt; } + + public Calendar getIssuedAt() { return issuedAt; } + + public void setIssuedAt(Calendar issuedAt) { this.issuedAt = issuedAt; } + + public List getMethods() { return methods; } + + public void setMethods(List methods) { this.methods = methods; } + + + public Domain getDomain() { + return domain; + } + + + + public void setDomain(Domain domain) { + this.domain = domain; + } + + + + public Project getProject() { + return project; + } + + + + public void setProject(Project project) { + this.project = project; + } + + + public User getUser() { return user; } + + public void setUser(User user) { this.user = user; } + + public List getRoles() { return roles; } + + public void setRoles(List roles) { this.roles = roles; } + + public List getCatalog() { return catalog; } + + public void setCatalog(List catalog) { this.catalog = catalog; } + @Override public String toString() { - return "Token [id=" + id + ", expiresAt=" + expiresAt.getTime() + ", issuedAt=" - + issuedAt.getTime() + ", methods=" + methods + ", user=" + user - + ", roles=" + roles + ", catalog=" + catalog + "]"; + return "Token [id=" + id + ", expiresAt=" + expiresAt + ", issuedAt=" + + issuedAt + ", methods=" + methods + ", domain=" + domain + + ", project=" + project + ", user=" + user + ", roles=" + + roles + ", catalog=" + catalog + "]"; } - - } From d9becc0713b6adb80ca85fcbdf022fa24e7d5c9c Mon Sep 17 00:00:00 2001 From: Luis Gervaso Date: Wed, 19 Mar 2014 16:54:46 +0100 Subject: [PATCH 089/144] java 7 --- pom.xml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pom.xml b/pom.xml index 6a86b84ab..9e02cbe39 100644 --- a/pom.xml +++ b/pom.xml @@ -95,10 +95,10 @@ org.apache.maven.plugins maven-compiler-plugin - 3.0 + 3.1 - 1.6 - 1.6 + 1.7 + 1.7 UTF-8 From a501d2fc60449f31be72ff0e2379766b75b72c1c Mon Sep 17 00:00:00 2001 From: Mike Kolesnik Date: Wed, 23 Apr 2014 14:24:13 +0300 Subject: [PATCH 090/144] neutron: update to junit 4.11 Updated to latest JUnit which also involves some necessary changes to the Pool & Ip matchers which no longer compile. Signed-off-by: Mike Kolesnik --- quantum-model/pom.xml | 2 +- .../openstack/quantum/model/NetworkTest.java | 4 +- .../openstack/quantum/model/PortTest.java | 35 +++++++----------- .../openstack/quantum/model/SubnetTest.java | 37 +++++++------------ 4 files changed, 29 insertions(+), 49 deletions(-) diff --git a/quantum-model/pom.xml b/quantum-model/pom.xml index c03038e8f..f8b7ef8d5 100644 --- a/quantum-model/pom.xml +++ b/quantum-model/pom.xml @@ -12,7 +12,7 @@ junit junit - 4.10 + 4.11 test diff --git a/quantum-model/src/test/java/com/woorea/openstack/quantum/model/NetworkTest.java b/quantum-model/src/test/java/com/woorea/openstack/quantum/model/NetworkTest.java index 7bee7049f..b6255b993 100644 --- a/quantum-model/src/test/java/com/woorea/openstack/quantum/model/NetworkTest.java +++ b/quantum-model/src/test/java/com/woorea/openstack/quantum/model/NetworkTest.java @@ -1,11 +1,11 @@ package com.woorea.openstack.quantum.model; +import static org.hamcrest.CoreMatchers.containsString; import static org.hamcrest.CoreMatchers.equalTo; +import static org.hamcrest.CoreMatchers.hasItem; import static org.hamcrest.CoreMatchers.is; import static org.hamcrest.CoreMatchers.not; import static org.junit.Assert.assertThat; -import static org.junit.matchers.JUnitMatchers.containsString; -import static org.junit.matchers.JUnitMatchers.hasItem; import java.util.Arrays; diff --git a/quantum-model/src/test/java/com/woorea/openstack/quantum/model/PortTest.java b/quantum-model/src/test/java/com/woorea/openstack/quantum/model/PortTest.java index 04b2e9650..bce504427 100644 --- a/quantum-model/src/test/java/com/woorea/openstack/quantum/model/PortTest.java +++ b/quantum-model/src/test/java/com/woorea/openstack/quantum/model/PortTest.java @@ -1,11 +1,11 @@ package com.woorea.openstack.quantum.model; +import static org.hamcrest.CoreMatchers.containsString; import static org.hamcrest.CoreMatchers.equalTo; +import static org.hamcrest.CoreMatchers.hasItem; import static org.hamcrest.CoreMatchers.is; import static org.hamcrest.CoreMatchers.not; import static org.junit.Assert.assertThat; -import static org.junit.matchers.JUnitMatchers.containsString; -import static org.junit.matchers.JUnitMatchers.hasItem; import java.util.ArrayList; import java.util.Arrays; @@ -15,8 +15,7 @@ import org.codehaus.jackson.map.ObjectMapper; import org.codehaus.jackson.map.SerializationConfig; import org.codehaus.jackson.map.annotate.JsonSerialize.Inclusion; -import org.hamcrest.BaseMatcher; -import org.hamcrest.Description; +import org.hamcrest.CustomMatcher; import org.junit.Before; import org.junit.Test; @@ -142,23 +141,15 @@ public void testDeserializationAfterSerialization() throws Exception { assertThat(port.getTenantId(), is(equalTo(TENANT_ID))); assertThat(port.getSecurityGroups(), hasItem(equalTo(SEC_GROUP))); - assertThat(port.getList(), hasItem(new IpMatcher())); - } - - private final class IpMatcher extends BaseMatcher { - @Override - public boolean matches(Object item) { - assertThat(item, is(Ip.class)); - Ip ip = (Ip) item; - return IP_ADDRESS.equals(ip.getAddress()) && IP_SUBNET_ID.equals(ip.getSubnetId()); - } - - @Override - public void describeTo(Description description) { - description.appendText("an Ip object with address "); - description.appendValue(IP_ADDRESS); - description.appendText(" and subnet id "); - description.appendValue(IP_SUBNET_ID); - } + assertThat(port.getList(), hasItem(new CustomMatcher( + "an Ip object with address " + IP_ADDRESS + " and subnet id " + IP_SUBNET_ID) { + + @Override + public boolean matches(Object ip) { + return ip instanceof Ip + && IP_ADDRESS.equals(((Ip) ip).getAddress()) + && IP_SUBNET_ID.equals(((Ip) ip).getSubnetId()); + } + })); } } diff --git a/quantum-model/src/test/java/com/woorea/openstack/quantum/model/SubnetTest.java b/quantum-model/src/test/java/com/woorea/openstack/quantum/model/SubnetTest.java index aa8651406..9136a38cc 100644 --- a/quantum-model/src/test/java/com/woorea/openstack/quantum/model/SubnetTest.java +++ b/quantum-model/src/test/java/com/woorea/openstack/quantum/model/SubnetTest.java @@ -1,17 +1,16 @@ package com.woorea.openstack.quantum.model; +import static org.hamcrest.CoreMatchers.containsString; import static org.hamcrest.CoreMatchers.equalTo; +import static org.hamcrest.CoreMatchers.hasItem; import static org.hamcrest.CoreMatchers.is; import static org.hamcrest.CoreMatchers.not; import static org.junit.Assert.assertThat; -import static org.junit.matchers.JUnitMatchers.containsString; -import static org.junit.matchers.JUnitMatchers.hasItem; import java.util.Arrays; import org.codehaus.jackson.map.ObjectMapper; -import org.hamcrest.BaseMatcher; -import org.hamcrest.Description; +import org.hamcrest.CustomMatcher; import org.junit.Before; import org.junit.Test; @@ -124,25 +123,15 @@ public void testDeserializationAfterSerialization() throws Exception { assertThat(subnet.getName(), is(equalTo(NAME))); assertThat(subnet.getNetworkId(), is(equalTo(NETWORK_ID))); assertThat(subnet.getTenantId(), is(equalTo(TENANT_ID))); - assertThat(subnet.getList(), hasItem(new PoolMatcher())); - } - - private class PoolMatcher extends BaseMatcher { - - @Override - public void describeTo(Description description) { - description.appendText("a Pool object with start "); - description.appendValue(POOL_START); - description.appendText(" and end "); - description.appendValue(POOL_END); - } - - @Override - public boolean matches(Object item) { - assertThat(item, is(Pool.class)); - Pool pool = (Pool) item; - return POOL_START.equals(pool.getStart()) && POOL_END.equals(pool.getEnd()); - } - + assertThat(subnet.getList(), hasItem(new CustomMatcher( + "a Pool object with start " + POOL_START + " and end " + POOL_END) { + + @Override + public boolean matches(Object pool) { + return pool instanceof Pool + && POOL_START.equals(((Pool) pool).getStart()) + && POOL_END.equals(((Pool) pool).getEnd()); + } + })); } } From 3d3ef1dcf087b2c3c750b68235c424ffa403adeb Mon Sep 17 00:00:00 2001 From: Federico Simoncelli Date: Wed, 23 Apr 2014 12:14:08 +0200 Subject: [PATCH 091/144] glance: add the support for virtual_size Signed-off-by: Federico Simoncelli --- .../woorea/openstack/glance/model/Image.java | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/glance-model/src/main/java/com/woorea/openstack/glance/model/Image.java b/glance-model/src/main/java/com/woorea/openstack/glance/model/Image.java index 491fde640..b8d9b7448 100644 --- a/glance-model/src/main/java/com/woorea/openstack/glance/model/Image.java +++ b/glance-model/src/main/java/com/woorea/openstack/glance/model/Image.java @@ -24,6 +24,9 @@ public class Image implements Serializable { private String containerFormat; private Long size; + + @JsonProperty("virtual_size") + private Long virtualSize; private String checksum; @@ -141,6 +144,20 @@ public void setSize(Long size) { this.size = size; } + /** + * @return the virtual size + */ + public Long getVirtualSize() { + return virtualSize; + } + + /** + * @param size the virtual size to set + */ + public void setVirtualSize(Long virtualSize) { + this.virtualSize = virtualSize; + } + /** * @return the checksum */ From 0c6d39d34de0577ca300b3bc233c4d59dfeb8f3f Mon Sep 17 00:00:00 2001 From: Federico Simoncelli Date: Wed, 23 Apr 2014 12:14:55 +0200 Subject: [PATCH 092/144] glance: ignore unknown image properties Signed-off-by: Federico Simoncelli --- .../src/main/java/com/woorea/openstack/glance/model/Image.java | 2 ++ 1 file changed, 2 insertions(+) diff --git a/glance-model/src/main/java/com/woorea/openstack/glance/model/Image.java b/glance-model/src/main/java/com/woorea/openstack/glance/model/Image.java index b8d9b7448..4bd49e0e8 100644 --- a/glance-model/src/main/java/com/woorea/openstack/glance/model/Image.java +++ b/glance-model/src/main/java/com/woorea/openstack/glance/model/Image.java @@ -5,10 +5,12 @@ import java.util.HashMap; import java.util.Map; +import org.codehaus.jackson.annotate.JsonIgnoreProperties; import org.codehaus.jackson.annotate.JsonProperty; import org.codehaus.jackson.map.annotate.JsonRootName; @JsonRootName("image") +@JsonIgnoreProperties(ignoreUnknown = true) public class Image implements Serializable { private String id; From 523aed6f168cb6fcbe43a000702095d7c9a3e193 Mon Sep 17 00:00:00 2001 From: Moti Asayag Date: Mon, 16 Jun 2014 00:25:08 +0300 Subject: [PATCH 093/144] neutron: Support ml2 port bindings In order to use the ml2 core plugin, a port bindings extension for the port should be supported. By providing the Port.hostId, the ml2 plugin detects the agent configuration on which the port is allocated and configures the port entity properly. Signed-off-by: Moti Asayag --- .../woorea/openstack/quantum/model/Port.java | 106 +++++++++++++++++- 1 file changed, 105 insertions(+), 1 deletion(-) diff --git a/quantum-model/src/main/java/com/woorea/openstack/quantum/model/Port.java b/quantum-model/src/main/java/com/woorea/openstack/quantum/model/Port.java index e878b300f..8ca74f154 100644 --- a/quantum-model/src/main/java/com/woorea/openstack/quantum/model/Port.java +++ b/quantum-model/src/main/java/com/woorea/openstack/quantum/model/Port.java @@ -2,10 +2,12 @@ import java.io.Serializable; import java.util.List; +import java.util.Map; import org.codehaus.jackson.annotate.JsonIgnore; import org.codehaus.jackson.annotate.JsonIgnoreProperties; import org.codehaus.jackson.annotate.JsonProperty; +import org.codehaus.jackson.annotate.JsonUnwrapped; import org.codehaus.jackson.map.annotate.JsonRootName; @SuppressWarnings("serial") @@ -58,6 +60,89 @@ public String toString() { } + public static final class Binding { + + /** + * The host on which the port will be allocated. + */ + @JsonProperty("binding:host_id") + private String hostId; + + /** + * The vif type for the specific port. + */ + @JsonProperty("binding:vif_type") + private String vifType; + + /** + * The type of vnic that this port should be attached to + */ + @JsonProperty("binding:vnic_type") + private String vnicType; + + /** + * A map containing additional information needed by the interface driver + */ + @JsonProperty("binding:vif_details") + private Map vifDetails; + + /** + * A map to enable applications running on the specific host to pass and receive vif port specific information + * to the plugin. + */ + @JsonProperty("binding:profile") + private Map profile; + + public String getHostId() { + return hostId; + } + + public void setHostId(String hostId) { + this.hostId = hostId; + } + + public String getVifType() { + return vifType; + } + + public void setVifType(String vifType) { + this.vifType = vifType; + } + + public String getVnicType() { + return vnicType; + } + + public void setVnicType(String vnicType) { + this.vnicType = vnicType; + } + + public Map getVifDetails() { + return vifDetails; + } + + public void setVifDetails(Map vifDetails) { + this.vifDetails = vifDetails; + } + + public Map getProfile() { + return profile; + } + + public void setProfile(Map profile) { + this.profile = profile; + } + + @Override + public String toString() { + return "Binding [hostId=" + hostId + + ", vifType=" + vifType + + ", vnicType=" + vnicType + + ", vifDetails=" + vifDetails + + ", profile=" + profile + "]"; + } + } + @JsonProperty("admin_state_up") private Boolean adminStateUp; @@ -88,6 +173,9 @@ public String toString() { @JsonProperty("security_groups") private List securityGroups; + @JsonUnwrapped + private Binding binding; + /** * @return the adminStateUp */ @@ -257,6 +345,21 @@ public void setSecurityGroups(List securityGroups) { this.securityGroups = securityGroups; } + /** + * @return the binding of the port + */ + public Binding getBinding() { + return binding; + } + + /** + * @param binding + * The port bindings by which the port is bind to network on host + */ + public void setBinding(Binding binding) { + this.binding = binding; + } + @Override public String toString() { return "Port [id=" + id + ", name=" + name + ", mac_address=" @@ -264,6 +367,7 @@ public String toString() { + ", device_owner=" + deviceOwner + ", fixed_ips=" + list + ", network_id=" + networkId + ", status=" + status + ", tenant_id=" + tenantId - + ", securityGroups=" + securityGroups + "]"; + + ", securityGroups=" + securityGroups + + ", binding=" + binding + "]"; } } From 3b770de5ed0c24d015338ddeaf1e544560a15004 Mon Sep 17 00:00:00 2001 From: meirlaker Date: Tue, 29 Jul 2014 15:46:41 -0400 Subject: [PATCH 094/144] Deserialize an empty json string to a null object MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Connectors used to throw an error deserializing an empty string, e.g., a “image” : “” returned as part of a Server description when the Server was not booted from an Image. Now, this example returns a null Image object. --- .../java/com/woorea/openstack/connector/JerseyConnector.java | 3 +++ .../main/java/com/woorea/openstack/connector/OpenStack.java | 2 ++ .../java/com/woorea/openstack/connector/RESTEasyConnector.java | 2 ++ 3 files changed, 7 insertions(+) diff --git a/openstack-client-connectors/jersey-connector/src/main/java/com/woorea/openstack/connector/JerseyConnector.java b/openstack-client-connectors/jersey-connector/src/main/java/com/woorea/openstack/connector/JerseyConnector.java index 416f5dda3..afd7a2b65 100644 --- a/openstack-client-connectors/jersey-connector/src/main/java/com/woorea/openstack/connector/JerseyConnector.java +++ b/openstack-client-connectors/jersey-connector/src/main/java/com/woorea/openstack/connector/JerseyConnector.java @@ -84,6 +84,8 @@ public static class OpenStackObjectMapper implements ContextResolver() { diff --git a/openstack-client-connectors/resteasy-connector/src/main/java/com/woorea/openstack/connector/RESTEasyConnector.java b/openstack-client-connectors/resteasy-connector/src/main/java/com/woorea/openstack/connector/RESTEasyConnector.java index c70052b9f..b2ec41570 100644 --- a/openstack-client-connectors/resteasy-connector/src/main/java/com/woorea/openstack/connector/RESTEasyConnector.java +++ b/openstack-client-connectors/resteasy-connector/src/main/java/com/woorea/openstack/connector/RESTEasyConnector.java @@ -64,6 +64,7 @@ public ObjectMapper getContext(Class type) { DEFAULT_MAPPER.enable(SerializationConfig.Feature.INDENT_OUTPUT); DEFAULT_MAPPER.enable(DeserializationConfig.Feature.ACCEPT_SINGLE_VALUE_AS_ARRAY); DEFAULT_MAPPER.disable(DeserializationConfig.Feature.FAIL_ON_UNKNOWN_PROPERTIES); + DEFAULT_MAPPER.enable(DeserializationConfig.Feature.ACCEPT_EMPTY_STRING_AS_NULL_OBJECT); WRAPPED_MAPPER = new ObjectMapper(); @@ -73,6 +74,7 @@ public ObjectMapper getContext(Class type) { WRAPPED_MAPPER.enable(DeserializationConfig.Feature.UNWRAP_ROOT_VALUE); WRAPPED_MAPPER.enable(DeserializationConfig.Feature.ACCEPT_SINGLE_VALUE_AS_ARRAY); WRAPPED_MAPPER.disable(DeserializationConfig.Feature.FAIL_ON_UNKNOWN_PROPERTIES); + WRAPPED_MAPPER.enable(DeserializationConfig.Feature.ACCEPT_EMPTY_STRING_AS_NULL_OBJECT); providerFactory = new OpenStackProviderFactory(); } From 4eaec1c99f1c263751a7d01860dbcf47bc190f60 Mon Sep 17 00:00:00 2001 From: Daniel Erez Date: Sun, 9 Nov 2014 17:21:00 +0200 Subject: [PATCH 095/144] cinder: introduce client and model Cinder - OpenStack Block Storage Service: * Added client [1] and model [2] for Volumes / Snapshots / Volume Types. * Created a basic functional tests project for verification: https://github.com/danielerez/openstack-java-sdk-cinder-tests [1] client: * VolumesExtension: - List/Create/UploadToImage/Show/ShowMetadata/ Delete/Update/Extend/InitializeConnection * SnapshotsExtension: - List/Create/Show/Delete/Update/ShowMetadata/UpdateMetadata * VolumeTypesExtension: - List/Create/Show/Delete * LimitsExtension: List absolute limits. [2] model: * Volumes/Volume/VolumeForCreate/VolumeForExtend/VolumeForUpdate/ VolumeForImageCreate/ConnectionForInitialize/ConnectionInfo * Snapshots/Snapshot/SnapshotForCreate/SnapshotForUpdate * VolumeTypes/VolumeType/VolumeTypeForCreate * Limits --- cinder-client/pom.xml | 24 ++ .../com/woorea/openstack/cinder/Cinder.java | 43 +++ .../openstack/cinder/LimitsExtension.java | 28 ++ .../openstack/cinder/SnapshotsExtension.java | 111 ++++++++ .../cinder/VolumeTypesExtension.java | 70 +++++ .../openstack/cinder/VolumesExtension.java | 149 +++++++++++ cinder-model/pom.xml | 11 + .../cinder/model/ConnectionForInitialize.java | 41 +++ .../cinder/model/ConnectionInfo.java | 58 +++++ .../woorea/openstack/cinder/model/Limits.java | 246 ++++++++++++++++++ .../openstack/cinder/model/Metadata.java | 35 +++ .../openstack/cinder/model/Snapshot.java | 99 +++++++ .../cinder/model/SnapshotForCreate.java | 91 +++++++ .../cinder/model/SnapshotForUpdate.java | 54 ++++ .../openstack/cinder/model/Snapshots.java | 36 +++ .../woorea/openstack/cinder/model/Volume.java | 166 ++++++++++++ .../cinder/model/VolumeForCreate.java | 211 +++++++++++++++ .../cinder/model/VolumeForExtend.java | 39 +++ .../cinder/model/VolumeForImageCreate.java | 71 +++++ .../cinder/model/VolumeForUpdate.java | 54 ++++ .../openstack/cinder/model/VolumeType.java | 50 ++++ .../cinder/model/VolumeTypeForCreate.java | 57 ++++ .../openstack/cinder/model/VolumeTypes.java | 36 +++ .../openstack/cinder/model/Volumes.java | 36 +++ pom.xml | 4 +- 25 files changed, 1819 insertions(+), 1 deletion(-) create mode 100644 cinder-client/pom.xml create mode 100644 cinder-client/src/main/java/com/woorea/openstack/cinder/Cinder.java create mode 100644 cinder-client/src/main/java/com/woorea/openstack/cinder/LimitsExtension.java create mode 100644 cinder-client/src/main/java/com/woorea/openstack/cinder/SnapshotsExtension.java create mode 100644 cinder-client/src/main/java/com/woorea/openstack/cinder/VolumeTypesExtension.java create mode 100644 cinder-client/src/main/java/com/woorea/openstack/cinder/VolumesExtension.java create mode 100644 cinder-model/pom.xml create mode 100644 cinder-model/src/main/java/com/woorea/openstack/cinder/model/ConnectionForInitialize.java create mode 100644 cinder-model/src/main/java/com/woorea/openstack/cinder/model/ConnectionInfo.java create mode 100644 cinder-model/src/main/java/com/woorea/openstack/cinder/model/Limits.java create mode 100644 cinder-model/src/main/java/com/woorea/openstack/cinder/model/Metadata.java create mode 100644 cinder-model/src/main/java/com/woorea/openstack/cinder/model/Snapshot.java create mode 100644 cinder-model/src/main/java/com/woorea/openstack/cinder/model/SnapshotForCreate.java create mode 100644 cinder-model/src/main/java/com/woorea/openstack/cinder/model/SnapshotForUpdate.java create mode 100644 cinder-model/src/main/java/com/woorea/openstack/cinder/model/Snapshots.java create mode 100644 cinder-model/src/main/java/com/woorea/openstack/cinder/model/Volume.java create mode 100644 cinder-model/src/main/java/com/woorea/openstack/cinder/model/VolumeForCreate.java create mode 100644 cinder-model/src/main/java/com/woorea/openstack/cinder/model/VolumeForExtend.java create mode 100644 cinder-model/src/main/java/com/woorea/openstack/cinder/model/VolumeForImageCreate.java create mode 100644 cinder-model/src/main/java/com/woorea/openstack/cinder/model/VolumeForUpdate.java create mode 100644 cinder-model/src/main/java/com/woorea/openstack/cinder/model/VolumeType.java create mode 100644 cinder-model/src/main/java/com/woorea/openstack/cinder/model/VolumeTypeForCreate.java create mode 100644 cinder-model/src/main/java/com/woorea/openstack/cinder/model/VolumeTypes.java create mode 100644 cinder-model/src/main/java/com/woorea/openstack/cinder/model/Volumes.java diff --git a/cinder-client/pom.xml b/cinder-client/pom.xml new file mode 100644 index 000000000..b85a04b89 --- /dev/null +++ b/cinder-client/pom.xml @@ -0,0 +1,24 @@ + + 4.0.0 + + com.woorea + openstack-java-sdk + 3.2.2-SNAPSHOT + + cinder-client + OpenStack Cinder Client + OpenStack Cinder Client + + + com.woorea + openstack-client + 3.2.2-SNAPSHOT + + + + com.woorea + cinder-model + 3.2.2-SNAPSHOT + + + \ No newline at end of file diff --git a/cinder-client/src/main/java/com/woorea/openstack/cinder/Cinder.java b/cinder-client/src/main/java/com/woorea/openstack/cinder/Cinder.java new file mode 100644 index 000000000..780e82511 --- /dev/null +++ b/cinder-client/src/main/java/com/woorea/openstack/cinder/Cinder.java @@ -0,0 +1,43 @@ +package com.woorea.openstack.cinder; + +import com.woorea.openstack.base.client.OpenStackClient; +import com.woorea.openstack.base.client.OpenStackClientConnector; + +public class Cinder extends OpenStackClient { + + private final VolumesExtension VOLUMES; + + private final SnapshotsExtension SNAPSHOTS; + + private final VolumeTypesExtension VOLUME_TYPES; + + private final LimitsExtension LIMITS; + + public Cinder(String endpoint, OpenStackClientConnector connector) { + super(endpoint, connector); + VOLUMES = new VolumesExtension(this); + SNAPSHOTS = new SnapshotsExtension(this); + VOLUME_TYPES = new VolumeTypesExtension(this); + LIMITS = new LimitsExtension(this); + } + + public Cinder(String endpoint) { + this(endpoint, null); + } + + public final VolumesExtension volumes() { + return VOLUMES; + } + + public final SnapshotsExtension snapshots() { + return SNAPSHOTS; + } + + public final VolumeTypesExtension volumeTypes() { + return VOLUME_TYPES; + } + + public final LimitsExtension limits() { + return LIMITS; + } +} diff --git a/cinder-client/src/main/java/com/woorea/openstack/cinder/LimitsExtension.java b/cinder-client/src/main/java/com/woorea/openstack/cinder/LimitsExtension.java new file mode 100644 index 000000000..0d4a78597 --- /dev/null +++ b/cinder-client/src/main/java/com/woorea/openstack/cinder/LimitsExtension.java @@ -0,0 +1,28 @@ +package com.woorea.openstack.cinder; + +import com.woorea.openstack.base.client.HttpMethod; +import com.woorea.openstack.base.client.OpenStackClient; +import com.woorea.openstack.base.client.OpenStackRequest; +import com.woorea.openstack.cinder.model.Limits; + +public class LimitsExtension { + + private final OpenStackClient CLIENT; + + public LimitsExtension(OpenStackClient client) { + CLIENT = client; + } + + public List list() { + return new List(); + } + + public class List extends OpenStackRequest { + + public List() { + super(CLIENT, HttpMethod.GET, "/limits", null, Limits.class); + } + + } + +} diff --git a/cinder-client/src/main/java/com/woorea/openstack/cinder/SnapshotsExtension.java b/cinder-client/src/main/java/com/woorea/openstack/cinder/SnapshotsExtension.java new file mode 100644 index 000000000..c5bab0743 --- /dev/null +++ b/cinder-client/src/main/java/com/woorea/openstack/cinder/SnapshotsExtension.java @@ -0,0 +1,111 @@ +package com.woorea.openstack.cinder; + +import com.woorea.openstack.base.client.Entity; +import com.woorea.openstack.base.client.HttpMethod; +import com.woorea.openstack.base.client.OpenStackClient; +import com.woorea.openstack.base.client.OpenStackRequest; +import com.woorea.openstack.cinder.model.Metadata; +import com.woorea.openstack.cinder.model.Snapshot; +import com.woorea.openstack.cinder.model.SnapshotForCreate; +import com.woorea.openstack.cinder.model.SnapshotForUpdate; +import com.woorea.openstack.cinder.model.Snapshots; + +public class SnapshotsExtension { + + private final OpenStackClient CLIENT; + + public SnapshotsExtension(OpenStackClient client) { + CLIENT = client; + } + + public List list(boolean detail) { + return new List(detail); + } + + public Create create(SnapshotForCreate snapshotForCreate) { + return new Create(snapshotForCreate); + } + + public Show show(String id) { + return new Show(id); + } + + public ShowMetadata showMetadata(String snapshotId) { + return new ShowMetadata(snapshotId); + } + + public UpdateMetadata updateMetadata(String snapshotId, Metadata metadata) { + return new UpdateMetadata(snapshotId, metadata); + } + + public Delete delete(String id) { + return new Delete(id); + } + + public Update update(String id, SnapshotForUpdate snapshot) { + return new Update(id, snapshot); + } + + public class List extends OpenStackRequest { + + public List(boolean detail) { + super(CLIENT, HttpMethod.GET, detail ? "/snapshots/detail" : "/snapshots", null, Snapshots.class); + } + + } + + public class Create extends OpenStackRequest { + + public Create(SnapshotForCreate snapshotForCreate) { + super(CLIENT, HttpMethod.POST, "/snapshots", Entity.json(snapshotForCreate), Snapshot.class); + } + + } + + public class Show extends OpenStackRequest { + + public Show(String id) { + super(CLIENT, HttpMethod.GET, new StringBuilder("/snapshots/").append(id).toString(), null, Snapshot.class); + } + + } + + public class Delete extends OpenStackRequest { + + public Delete(String id) { + super(CLIENT, HttpMethod.DELETE, new StringBuilder("/snapshots/").append(id).toString(), null, Void.class); + } + + } + + public class Update extends OpenStackRequest { + + public Update(String id, SnapshotForUpdate snapshot) { + super(CLIENT, HttpMethod.PUT, new StringBuilder("/snapshots/").append(id).toString(), + Entity.json(snapshot), Void.class); + } + + } + + public class ShowMetadata extends OpenStackRequest { + + public ShowMetadata(String id) { + super(CLIENT, + HttpMethod.GET, + new StringBuilder("/snapshots/").append(id).append("/metadata").toString(), + null, + Metadata.class); + } + + } + + public class UpdateMetadata extends OpenStackRequest { + + public UpdateMetadata(String snapshotId, Metadata metadata) { + super(CLIENT, HttpMethod.PUT, new StringBuilder("/snapshots/").append(snapshotId) + .append("/metadata") + .toString(), Entity.json(metadata), Void.class); + } + + } +} diff --git a/cinder-client/src/main/java/com/woorea/openstack/cinder/VolumeTypesExtension.java b/cinder-client/src/main/java/com/woorea/openstack/cinder/VolumeTypesExtension.java new file mode 100644 index 000000000..5951e1cfd --- /dev/null +++ b/cinder-client/src/main/java/com/woorea/openstack/cinder/VolumeTypesExtension.java @@ -0,0 +1,70 @@ +package com.woorea.openstack.cinder; + +import com.woorea.openstack.base.client.Entity; +import com.woorea.openstack.base.client.HttpMethod; +import com.woorea.openstack.base.client.OpenStackClient; +import com.woorea.openstack.base.client.OpenStackRequest; +import com.woorea.openstack.cinder.model.VolumeType; +import com.woorea.openstack.cinder.model.VolumeTypeForCreate; +import com.woorea.openstack.cinder.model.VolumeTypes; + +public class VolumeTypesExtension { + + private final OpenStackClient CLIENT; + + public VolumeTypesExtension(OpenStackClient client) { + CLIENT = client; + } + + public List list() { + return new List(); + } + + public Create create(VolumeTypeForCreate volumeTypeForCreate) { + return new Create(volumeTypeForCreate); + } + + public Show show(String id) { + return new Show(id); + } + + public Delete delete(String id) { + return new Delete(id); + } + + public class List extends OpenStackRequest { + + public List() { + super(CLIENT, HttpMethod.GET, "/types", null, VolumeTypes.class); + } + + } + + public class Create extends OpenStackRequest { + + private VolumeTypeForCreate volumeTypeForCreate; + + public Create(VolumeTypeForCreate volumeTypeForCreate) { + super(CLIENT, HttpMethod.POST, "/types", Entity.json(volumeTypeForCreate), VolumeType.class); + this.volumeTypeForCreate = volumeTypeForCreate; + } + + } + + public class Show extends OpenStackRequest { + + public Show(String id) { + super(CLIENT, HttpMethod.GET, new StringBuilder("/types/").append(id).toString(), null, VolumeType.class); + } + + } + + public class Delete extends OpenStackRequest { + + public Delete(String id) { + super(CLIENT, HttpMethod.DELETE, new StringBuilder("/types/").append(id).toString(), null, Void.class); + } + + } + +} diff --git a/cinder-client/src/main/java/com/woorea/openstack/cinder/VolumesExtension.java b/cinder-client/src/main/java/com/woorea/openstack/cinder/VolumesExtension.java new file mode 100644 index 000000000..8254ca133 --- /dev/null +++ b/cinder-client/src/main/java/com/woorea/openstack/cinder/VolumesExtension.java @@ -0,0 +1,149 @@ +package com.woorea.openstack.cinder; + +import com.woorea.openstack.base.client.Entity; +import com.woorea.openstack.base.client.HttpMethod; +import com.woorea.openstack.base.client.OpenStackClient; +import com.woorea.openstack.base.client.OpenStackRequest; +import com.woorea.openstack.cinder.model.ConnectionForInitialize; +import com.woorea.openstack.cinder.model.ConnectionInfo; +import com.woorea.openstack.cinder.model.Metadata; +import com.woorea.openstack.cinder.model.Volume; +import com.woorea.openstack.cinder.model.VolumeForCreate; +import com.woorea.openstack.cinder.model.VolumeForExtend; +import com.woorea.openstack.cinder.model.VolumeForImageCreate; +import com.woorea.openstack.cinder.model.VolumeForUpdate; +import com.woorea.openstack.cinder.model.Volumes; + +public class VolumesExtension { + + private final OpenStackClient CLIENT; + + public VolumesExtension(OpenStackClient client) { + CLIENT = client; + } + + public List list(boolean detail) { + return new List(detail); + } + + public Create create(VolumeForCreate volume) { + return new Create(volume); + } + + public UploadToImage uploadToImage(VolumeForImageCreate volumeForImage) { + return new UploadToImage(volumeForImage); + } + + public Show show(String id) { + return new Show(id); + } + + public ShowMetadata showMetadata(String id) { + return new ShowMetadata(id); + } + + public Delete delete(String id) { + return new Delete(id); + } + + public Update update(String id, VolumeForUpdate volume) { + return new Update(id, volume); + } + + public Extend extend(String id, int newSize) { + VolumeForExtend volume = new VolumeForExtend(); + volume.setSize(newSize); + return new Extend(id, volume); + } + + public InitializeConnection initializeConnection(String id, ConnectionForInitialize connectionForInitialize) { + return new InitializeConnection(id, connectionForInitialize); + } + + public class List extends OpenStackRequest { + + public List(boolean detail) { + super(CLIENT, HttpMethod.GET, detail ? "/volumes/detail" + : "/volumes", null, Volumes.class); + } + + } + + public class Create extends OpenStackRequest { + + public Create(VolumeForCreate volume) { + super(CLIENT, HttpMethod.POST, "/volumes", Entity.json(volume), + Volume.class); + } + + } + + // Upload volume to image service as image + + public class UploadToImage extends OpenStackRequest { + + public UploadToImage(VolumeForImageCreate volumeForImageCreate) { + super(CLIENT, HttpMethod.POST, new StringBuilder("/volumes/") + .append(volumeForImageCreate.getVolumeId() + "/action").toString(), + Entity.json(volumeForImageCreate), Void.class); + } + + } + + public class Show extends OpenStackRequest { + + public Show(String id) { + super(CLIENT, HttpMethod.GET, new StringBuilder("/volumes/") + .append(id).toString(), null, Volume.class); + } + + } + + public class ShowMetadata extends OpenStackRequest { + + public ShowMetadata(String id) { + super(CLIENT, HttpMethod.GET, new StringBuilder("/volumes/") + .append(id).append("/metadata").toString(), null, + Metadata.class); + } + + } + + public class Delete extends OpenStackRequest { + + public Delete(String id) { + super(CLIENT, HttpMethod.DELETE, new StringBuilder("/volumes/") + .append(id).toString(), null, Void.class); + } + + } + + public class Update extends OpenStackRequest { + + public Update(String id, VolumeForUpdate volume) { + super(CLIENT, HttpMethod.PUT, new StringBuilder("/volumes/").append(id).toString(), + Entity.json(volume), Void.class); + } + + } + + public class Extend extends OpenStackRequest { + + public Extend(String id, VolumeForExtend volume) { + super(CLIENT, HttpMethod.POST, new StringBuilder("/volumes/").append(id).append("/action").toString(), + Entity.json(volume), Void.class); + } + + } + + public class InitializeConnection extends OpenStackRequest { + + public InitializeConnection(String id, ConnectionForInitialize connectionForInitialize) { + super(CLIENT, HttpMethod.POST, new StringBuilder("/volumes/") + .append(id).append("/action").toString(), + Entity.json(connectionForInitialize), ConnectionInfo.class); + } + + } + +} diff --git a/cinder-model/pom.xml b/cinder-model/pom.xml new file mode 100644 index 000000000..c30b9cb70 --- /dev/null +++ b/cinder-model/pom.xml @@ -0,0 +1,11 @@ + + 4.0.0 + + com.woorea + openstack-java-sdk + 3.2.2-SNAPSHOT + + cinder-model + OpenStack Cinder Model + OpenStack Cinder Model + \ No newline at end of file diff --git a/cinder-model/src/main/java/com/woorea/openstack/cinder/model/ConnectionForInitialize.java b/cinder-model/src/main/java/com/woorea/openstack/cinder/model/ConnectionForInitialize.java new file mode 100644 index 000000000..f8163c336 --- /dev/null +++ b/cinder-model/src/main/java/com/woorea/openstack/cinder/model/ConnectionForInitialize.java @@ -0,0 +1,41 @@ +package com.woorea.openstack.cinder.model; + +import org.codehaus.jackson.annotate.JsonProperty; +import org.codehaus.jackson.map.annotate.JsonRootName; + +import java.io.Serializable; +import java.util.HashMap; +import java.util.Map; + +@JsonRootName("os-initialize_connection") +public class ConnectionForInitialize implements Serializable { + + @JsonProperty("connector") + private Map connector = new HashMap(); + + /** + * @return the connector + */ + public Map getConnector() { + return connector; + } + + /** + * @param connector + * the connector to set + */ + public void setConnector(Map connector) { + this.connector = connector; + } + + /* + * (non-Javadoc) + * + * @see java.lang.Object#toString() + */ + @Override + public String toString() { + return "ConnectionForInitialize [connector=" + connector + "]"; + } + +} diff --git a/cinder-model/src/main/java/com/woorea/openstack/cinder/model/ConnectionInfo.java b/cinder-model/src/main/java/com/woorea/openstack/cinder/model/ConnectionInfo.java new file mode 100644 index 000000000..039fc8088 --- /dev/null +++ b/cinder-model/src/main/java/com/woorea/openstack/cinder/model/ConnectionInfo.java @@ -0,0 +1,58 @@ +package com.woorea.openstack.cinder.model; + +import java.io.Serializable; +import java.util.Map; + +import org.codehaus.jackson.annotate.JsonProperty; +import org.codehaus.jackson.map.annotate.JsonRootName; + +@JsonRootName("connection_info") +public class ConnectionInfo implements Serializable { + + @JsonProperty("driver_volume_type") + private String driverVolumeType; + + private Map data; + + /** + * @return the driverVolumeType + */ + public String getDriverVolumeType() { + return driverVolumeType; + } + + /** + * @param driverVolumeType + * the driverVolumeType to set + */ + public void setDriverVolumeType(String driverVolumeType) { + this.driverVolumeType = driverVolumeType; + } + + /** + * @return the data + */ + public Map getData() { + return data; + } + + /** + * @param data + * the data to set + */ + public void setData(Map data) { + this.data = data; + } + + /* + * (non-Javadoc) + * + * @see java.lang.Object#toString() + */ + @Override + public String toString() { + return "ConnectionInfo [driverVolumeType=" + driverVolumeType + "," + + " data=" + data + "]"; + } + +} diff --git a/cinder-model/src/main/java/com/woorea/openstack/cinder/model/Limits.java b/cinder-model/src/main/java/com/woorea/openstack/cinder/model/Limits.java new file mode 100644 index 000000000..356b6bde7 --- /dev/null +++ b/cinder-model/src/main/java/com/woorea/openstack/cinder/model/Limits.java @@ -0,0 +1,246 @@ +package com.woorea.openstack.cinder.model; + +import org.codehaus.jackson.annotate.JsonProperty; +import org.codehaus.jackson.map.annotate.JsonRootName; + +import java.io.Serializable; +import java.util.Calendar; +import java.util.List; + +@JsonRootName("limits") +public class Limits implements Serializable { + + public static final class RateLimit implements Serializable { + + public static final class LimitEntry implements Serializable { + + @JsonProperty("next-available") + private Calendar nextAvailable; + + private String unit; + + private String verb; + + private Integer remaining; + + private Integer available; + + private Integer value; + + /** + * @return the nextAvailable + */ + public Calendar getNextAvailable() { + return nextAvailable; + } + + /** + * @return the unit + */ + public String getUnit() { + return unit; + } + + /** + * @return the verb + */ + public String getVerb() { + return verb; + } + + /** + * @return the remaining + */ + public Integer getRemaining() { + return remaining; + } + + /** + * @return the available + */ + public Integer getAvailable() { + return available; + } + + /** + * @return the value + */ + public Integer getValue() { + return value; + } + + /* + * (non-Javadoc) + * + * @see java.lang.Object#toString() + */ + @Override + public String toString() { + return "LimitEntry [nextAvailable=" + nextAvailable + ", unit=" + + unit + ", verb=" + verb + ", remaining=" + remaining + + ", available=" + available + ", value=" + value + "]"; + } + + } + + private String regex; + + private String uri; + + private List limit; + + /** + * @return the regex + */ + public String getRegex() { + return regex; + } + + /** + * @return the uri + */ + public String getUri() { + return uri; + } + + /** + * @return the limit + */ + public List getLimit() { + return limit; + } + + /* + * (non-Javadoc) + * + * @see java.lang.Object#toString() + */ + @Override + public String toString() { + return "RateLimit [regex=" + regex + ", uri=" + uri + ", limit=" + + limit + "]"; + } + + } + + public static final class AbsoluteLimit { + + private Integer maxTotalVolumes; + private Integer totalVolumesUsed; + + private Integer maxTotalSnapshots; + private Integer totalSnapshotsUsed; + + private Integer maxTotalVolumeGigabytes; + private Integer totalGigabytesUsed; + + private Integer maxTotalBackups; + private Integer totalBackupsUsed; + + private Integer maxTotalBackupGigabytes; + private Integer totalBackupGigabytesUsed; + + /** + * @return the maxTotalVolumes + */ + public Integer getMaxTotalVolumes() { + return maxTotalVolumes; + } + + /** + * @return the totalVolumesUsed + */ + public Integer getTotalVolumesUsed() { + return totalVolumesUsed; + } + + /** + * @return the maxTotalSnapshots + */ + public Integer getMaxTotalSnapshots() { + return maxTotalSnapshots; + } + + /** + * @return the totalSnapshotsUsed + */ + public Integer getTotalSnapshotsUsed() { + return totalSnapshotsUsed; + } + + /** + * @return the maxTotalVolumeGigabytes + */ + public Integer getMaxTotalVolumeGigabytes() { + return maxTotalVolumeGigabytes; + } + + /** + * @return the totalGigabytesUsed + */ + public Integer getTotalGigabytesUsed() { + return totalGigabytesUsed; + } + + /** + * @return the maxTotalBackupGigabytes + */ + public Integer getMaxTotalBackupGigabytes() { + return maxTotalBackupGigabytes; + } + + /** + * @return the totalBackupGigabytesUsed + */ + public Integer getTotalBackupGigabytesUsed() { + return totalBackupGigabytesUsed; + } + + /* + * (non-Javadoc) + * + * @see java.lang.Object#toString() + */ + @Override + public String toString() { + return "AbsoluteLimit [maxTotalVolumes=" + maxTotalVolumes + + ", totalVolumesUsed=" + totalVolumesUsed + + ", maxTotalSnapshots=" + maxTotalSnapshots + + ", totalSnapshotsUsed=" + totalSnapshotsUsed + + ", maxTotalVolumeGigabytes=" + maxTotalVolumeGigabytes + + ", totalGigabytesUsed=" + totalGigabytesUsed + + ", maxTotalBackupGigabytes=" + maxTotalBackupGigabytes + + ", totalBackupGigabytesUsed=" + totalBackupGigabytesUsed +"]"; + } + + } + + private List rate; + + private AbsoluteLimit absolute; + + /** + * @return the rate + */ + public List getRate() { + return rate; + } + + /** + * @return the absolute + */ + public AbsoluteLimit getAbsolute() { + return absolute; + } + + /* + * (non-Javadoc) + * + * @see java.lang.Object#toString() + */ + @Override + public String toString() { + return "Limits [rate=" + rate + ", absolute=" + absolute + "]"; + } + +} diff --git a/cinder-model/src/main/java/com/woorea/openstack/cinder/model/Metadata.java b/cinder-model/src/main/java/com/woorea/openstack/cinder/model/Metadata.java new file mode 100644 index 000000000..3949a853e --- /dev/null +++ b/cinder-model/src/main/java/com/woorea/openstack/cinder/model/Metadata.java @@ -0,0 +1,35 @@ +package com.woorea.openstack.cinder.model; + +import java.util.Map; + +public class Metadata { + + private Map metadata; + + /** + * @return the metadata + */ + public Map getMetadata() { + return metadata; + } + + /** + * Set the metadata + * + * @param metadata + */ + public void setMetadata(Map metadata) { + this.metadata = metadata; + } + + /* + * (non-Javadoc) + * + * @see java.lang.Object#toString() + */ + @Override + public String toString() { + return "Metadata [metadata=" + metadata + "]"; + } + +} diff --git a/cinder-model/src/main/java/com/woorea/openstack/cinder/model/Snapshot.java b/cinder-model/src/main/java/com/woorea/openstack/cinder/model/Snapshot.java new file mode 100644 index 000000000..3f45febc8 --- /dev/null +++ b/cinder-model/src/main/java/com/woorea/openstack/cinder/model/Snapshot.java @@ -0,0 +1,99 @@ +package com.woorea.openstack.cinder.model; + +import java.io.Serializable; +import java.util.Map; + +import org.codehaus.jackson.annotate.JsonProperty; +import org.codehaus.jackson.map.annotate.JsonRootName; + +@JsonRootName("snapshot") +public class Snapshot implements Serializable { + + private String id; + + private String status; + + private String name; + + private String description; + + @JsonProperty("volume_id") + private String volumeId; + + private Integer size; + + @JsonProperty("created_at") + private String createdAt; + + private Map metadata; + + /** + * @return the id + */ + public String getId() { + return id; + } + + /** + * @return the status + */ + public String getStatus() { + return status; + } + + /** + * @return the name + */ + public String getName() { + return name; + } + + /** + * @return the description + */ + public String getDescription() { + return description; + } + + /** + * @return the volumeId + */ + public String getVolumeId() { + return volumeId; + } + + /** + * @return the size + */ + public Integer getSize() { + return size; + } + + /** + * @return the createdAt + */ + public String getCreatedAt() { + return createdAt; + } + + /** + * @return the metadata + */ + public Map getMetadata() { + return metadata; + } + + /* + * (non-Javadoc) + * + * @see java.lang.Object#toString() + */ + @Override + public String toString() { + return "Snapshot [id=" + id + ", status=" + status + + ", name=" + name + ", description=" + description + + ", volumeId=" + volumeId + ", size=" + size + + ", createdAt=" + createdAt + ", metadata=" + metadata + "]"; + } + +} diff --git a/cinder-model/src/main/java/com/woorea/openstack/cinder/model/SnapshotForCreate.java b/cinder-model/src/main/java/com/woorea/openstack/cinder/model/SnapshotForCreate.java new file mode 100644 index 000000000..738b550c9 --- /dev/null +++ b/cinder-model/src/main/java/com/woorea/openstack/cinder/model/SnapshotForCreate.java @@ -0,0 +1,91 @@ +package com.woorea.openstack.cinder.model; + +import java.io.Serializable; + +import org.codehaus.jackson.annotate.JsonProperty; +import org.codehaus.jackson.map.annotate.JsonRootName; + +@JsonRootName("snapshot") +public class SnapshotForCreate implements Serializable { + + @JsonProperty("volume_id") + private String volumeId; + + private Boolean force; + + private String name; + + private String description; + + /** + * @return the volumeId + */ + public String getVolumeId() { + return volumeId; + } + + /** + * @param volumeId + * the volumeId to set + */ + public void setVolumeId(String volumeId) { + this.volumeId = volumeId; + } + + /** + * @return the force + */ + public Boolean getForce() { + return force; + } + + /** + * @param force + * the force to set + */ + public void setForce(Boolean force) { + this.force = force; + } + + /** + * @return the name + */ + public String getName() { + return name; + } + + /** + * @param name + * the name to set + */ + public void setName(String name) { + this.name = name; + } + + /** + * @return the description + */ + public String getDescription() { + return description; + } + + /** + * @param description + * the description to set + */ + public void setDescription(String description) { + this.description = description; + } + + /* + * (non-Javadoc) + * + * @see java.lang.Object#toString() + */ + @Override + public String toString() { + return "SnapshotForCreate [volumeId=" + volumeId + ", force=" + force + + ", name=" + name + ", description=" + description + "]"; + } + +} diff --git a/cinder-model/src/main/java/com/woorea/openstack/cinder/model/SnapshotForUpdate.java b/cinder-model/src/main/java/com/woorea/openstack/cinder/model/SnapshotForUpdate.java new file mode 100644 index 000000000..4dbe13366 --- /dev/null +++ b/cinder-model/src/main/java/com/woorea/openstack/cinder/model/SnapshotForUpdate.java @@ -0,0 +1,54 @@ +package com.woorea.openstack.cinder.model; + +import java.io.Serializable; + +import org.codehaus.jackson.map.annotate.JsonRootName; + +@JsonRootName("snapshot") +public class SnapshotForUpdate implements Serializable { + + private String name; + + private String description; + + /** + * @return the name + */ + public String getName() { + return name; + } + + /** + * @param name + * the name to set + */ + public void setName(String name) { + this.name = name; + } + + /** + * @return the description + */ + public String getDescription() { + return description; + } + + /** + * @param description + * the description to set + */ + public void setDescription(String description) { + this.description = description; + } + + /* + * (non-Javadoc) + * + * @see java.lang.Object#toString() + */ + @Override + public String toString() { + return "SnapshotForUpdate [name=" + name + ", description=" + description + "]"; + } + +} diff --git a/cinder-model/src/main/java/com/woorea/openstack/cinder/model/Snapshots.java b/cinder-model/src/main/java/com/woorea/openstack/cinder/model/Snapshots.java new file mode 100644 index 000000000..6ee9ddd39 --- /dev/null +++ b/cinder-model/src/main/java/com/woorea/openstack/cinder/model/Snapshots.java @@ -0,0 +1,36 @@ +package com.woorea.openstack.cinder.model; + +import java.io.Serializable; +import java.util.Iterator; +import java.util.List; + +import org.codehaus.jackson.annotate.JsonProperty; + +public class Snapshots implements Iterable, Serializable { + + @JsonProperty("snapshots") + private List list; + + /** + * @return the list + */ + public List getList() { + return list; + } + + /* + * (non-Javadoc) + * + * @see java.lang.Object#toString() + */ + @Override + public String toString() { + return "Snapshots [list=" + list + "]"; + } + + @Override + public Iterator iterator() { + return list.iterator(); + } + +} diff --git a/cinder-model/src/main/java/com/woorea/openstack/cinder/model/Volume.java b/cinder-model/src/main/java/com/woorea/openstack/cinder/model/Volume.java new file mode 100644 index 000000000..ddd2c3f1d --- /dev/null +++ b/cinder-model/src/main/java/com/woorea/openstack/cinder/model/Volume.java @@ -0,0 +1,166 @@ +package com.woorea.openstack.cinder.model; + +import org.codehaus.jackson.annotate.JsonProperty; +import org.codehaus.jackson.map.annotate.JsonRootName; + +import java.io.Serializable; +import java.util.List; +import java.util.Map; + +@JsonRootName("volume") +public class Volume implements Serializable { + + private String id; + + private String status; + + private String name; + + private String description; + + @JsonProperty("availability_zone") + private String availabilityZone; + + @JsonProperty("volume_type") + private String volumeType; + + @JsonProperty("snapshot_id") + private String snapshotId; + + @JsonProperty("source_volid") + private String sourceVolid; + + @JsonProperty("bootable") + private Boolean bootable; + + private List> attachments; + + private Map metadata; + + @JsonProperty("created_at") + private String createdAt; + + private Integer size; + + /** + * @return the id + */ + public String getId() { + return id; + } + + /** + * @return the status + */ + public String getStatus() { + return status; + } + + /** + * @return the name + */ + public String getName() { + return name; + } + + /** + * @return the description + */ + public String getDescription() { + return description; + } + + /** + * @return the availabilityZone + */ + public String getAvailabilityZone() { + return availabilityZone; + } + + /** + * @return the volumeType + */ + public String getVolumeType() { + return volumeType; + } + + /** + * @return the snapshotId + */ + public String getSnapshotId() { + return snapshotId; + } + + /** + * @return the ID of an existing volume (specify in order to create a volume from an existing volume) + */ + public String getSourceVolid() { + return sourceVolid; + } + + /** + * @param sourceVolid + * to set + */ + public void setSourceVolid(String sourceVolid) { + this.sourceVolid = sourceVolid; + } + + /** + * @param volumeType + * to set + */ + public void setVolumeType(String volumeType) { + this.volumeType = volumeType; + } + + /** + * @return the bootable flag to set + */ + public Boolean getBootable() { + return bootable; + } + + /** + * @return the attachments + */ + public List> getAttachments() { + return attachments; + } + + /** + * @return the metadata + */ + public Map getMetadata() { + return metadata; + } + + /** + * @return the createdAt + */ + public String getCreatedAt() { + return createdAt; + } + + /** + * @return the size + */ + public Integer getSize() { + return size; + } + + /* + * (non-Javadoc) + * + * @see java.lang.Object#toString() + */ + @Override + public String toString() { + return "Volume [id=" + id + ", status=" + status + + ", name=" + name + ", description=" + description + + ", availabilityZone=" + availabilityZone + ", volumeType=" + volumeType + + ", snapshotId=" + snapshotId + ", attachments=" + attachments + + ", metadata=" + metadata + ", createdAt=" + createdAt + ", size=" + size + "]"; + } + +} diff --git a/cinder-model/src/main/java/com/woorea/openstack/cinder/model/VolumeForCreate.java b/cinder-model/src/main/java/com/woorea/openstack/cinder/model/VolumeForCreate.java new file mode 100644 index 000000000..ea0b92ba0 --- /dev/null +++ b/cinder-model/src/main/java/com/woorea/openstack/cinder/model/VolumeForCreate.java @@ -0,0 +1,211 @@ +package com.woorea.openstack.cinder.model; + +import java.io.Serializable; +import java.util.Map; + +import org.codehaus.jackson.annotate.JsonProperty; +import org.codehaus.jackson.map.annotate.JsonRootName; + +@JsonRootName("volume") +public class VolumeForCreate implements Serializable { + + private Integer size; + + @JsonProperty("availability_zone") + private String availabilityZone; + + @JsonProperty("display_name") + private String name; + + @JsonProperty("display_description") + private String description; + + @JsonProperty("snapshot_id") + private String snapshotId; + + @JsonProperty("source_volid") + private String sourceVolid; + + @JsonProperty("imageRef") + private String imageRef; + + @JsonProperty("volume_type") + private String volumeType; + + @JsonProperty("bootable") + private Boolean bootable; + + private Map metadata; + + /** + * @return the size + */ + public Integer getSize() { + return size; + } + + /** + * @param size + * the size to set + */ + public void setSize(Integer size) { + this.size = size; + } + + /** + * @return the availabilityZone + */ + public String getAvailabilityZone() { + return availabilityZone; + } + + /** + * @param availabilityZone + * the availabilityZone to set + */ + public void setAvailabilityZone(String availabilityZone) { + this.availabilityZone = availabilityZone; + } + + /** + * @return the name + */ + public String getName() { + return name; + } + + /** + * @param name + * the name to set + */ + public void setName(String name) { + this.name = name; + } + + /** + * @return the description + */ + public String getDescription() { + return description; + } + + /** + * @param description + * the description to set + */ + public void setDescription(String description) { + this.description = description; + } + + /** + * @return the snapshotId + */ + public String getSnapshotId() { + return snapshotId; + } + + /** + * @param snapshotId + * the snapshotId to set + */ + public void setSnapshotId(String snapshotId) { + this.snapshotId = snapshotId; + } + + /** + * @return the ID of an existing volume (specify in order to create a volume from an existing volume) + */ + public String getSourceVolid() { + return sourceVolid; + } + + /** + * @param sourceVolid + * to set + */ + public void setSourceVolid(String sourceVolid) { + this.sourceVolid = sourceVolid; + } + + /** + * @return the ID of the image from which you want to create the volume (required to create a bootable volume) + */ + public String getImageRef() { + return imageRef; + } + + /** + * @param imageRef + * to set + */ + public void setImageRef(String imageRef) { + this.imageRef = imageRef; + } + + /** + * @return the associated volume type + */ + public String getVolumeType() { + return volumeType; + } + + /** + * @param volumeType + * to set + */ + public void setVolumeType(String volumeType) { + this.volumeType = volumeType; + } + + /** + * @return the bootable flag to set + */ + public Boolean getBootable() { + return bootable; + } + + /** + * Enables or disables the bootable attribute. You can boot an instance from a bootable volume. + * + * @param bootable + * flag + */ + public void setBootable(Boolean bootable) { + this.bootable = bootable; + } + + /** + * @return the metadata + */ + public Map getMetadata() { + return metadata; + } + + /** + * @param metadata + * the metadata to set + */ + public void setMetadata(Map metadata) { + this.metadata = metadata; + } + + /* + * (non-Javadoc) + * + * @see java.lang.Object#toString() + */ + @Override + public String toString() { + return "VolumeForCreate [size=" + size + + ", availabilityZone=" + availabilityZone + + ", name=" + name + + ", description=" + description + + ", snapshotId=" + snapshotId + + ", source_volid=" + sourceVolid + + ", imageRef=" + imageRef + + ", volume_type=" + volumeType + + ", bootable=" + bootable + + ", metadata=" + metadata + "]"; + } + +} diff --git a/cinder-model/src/main/java/com/woorea/openstack/cinder/model/VolumeForExtend.java b/cinder-model/src/main/java/com/woorea/openstack/cinder/model/VolumeForExtend.java new file mode 100644 index 000000000..7c4c3d3c6 --- /dev/null +++ b/cinder-model/src/main/java/com/woorea/openstack/cinder/model/VolumeForExtend.java @@ -0,0 +1,39 @@ +package com.woorea.openstack.cinder.model; + +import java.io.Serializable; + +import org.codehaus.jackson.annotate.JsonProperty; +import org.codehaus.jackson.map.annotate.JsonRootName; + +@JsonRootName("os-extend") +public class VolumeForExtend implements Serializable { + + @JsonProperty("new_size") + private Integer size; + + /** + * @return the size + */ + public Integer getSize() { + return size; + } + + /** + * @param size + * the size to set + */ + public void setSize(Integer size) { + this.size = size; + } + + /* + * (non-Javadoc) + * + * @see java.lang.Object#toString() + */ + @Override + public String toString() { + return "VolumeForExtend [size=" + size + "]"; + } + +} diff --git a/cinder-model/src/main/java/com/woorea/openstack/cinder/model/VolumeForImageCreate.java b/cinder-model/src/main/java/com/woorea/openstack/cinder/model/VolumeForImageCreate.java new file mode 100644 index 000000000..eb6d913a6 --- /dev/null +++ b/cinder-model/src/main/java/com/woorea/openstack/cinder/model/VolumeForImageCreate.java @@ -0,0 +1,71 @@ +package com.woorea.openstack.cinder.model; + +import java.io.Serializable; + +import org.codehaus.jackson.annotate.JsonProperty; +import org.codehaus.jackson.map.annotate.JsonRootName; + +@JsonRootName("os-volume_upload_image") +public class VolumeForImageCreate implements Serializable { + String volumeId; + String tenantId; + + public String getTenantId() { + return tenantId; + } + + public void setTenantId(String tenantId) { + this.tenantId = tenantId; + } + + @JsonProperty("force") + private Boolean force; + + public Boolean getForce() { + return force; + } + + public void setForce(Boolean force) { + this.force = force; + } + + @JsonProperty("container_format") + String container_format; + @JsonProperty("disk_format") + String disk_format; + @JsonProperty("image_name") + String image_name; + + public String getVolumeId() { + return volumeId; + } + + public void setVolumeId(String volumeId) { + this.volumeId = volumeId; + } + + public String getContainer_format() { + return container_format; + } + + public void setContainer_format(String container_format) { + this.container_format = container_format; + } + + public String getDisk_format() { + return disk_format; + } + + public void setDisk_format(String disk_format) { + this.disk_format = disk_format; + } + + public String getImage_name() { + return image_name; + } + + public void setImage_name(String image_name) { + this.image_name = image_name; + } + +} diff --git a/cinder-model/src/main/java/com/woorea/openstack/cinder/model/VolumeForUpdate.java b/cinder-model/src/main/java/com/woorea/openstack/cinder/model/VolumeForUpdate.java new file mode 100644 index 000000000..3d2c079f9 --- /dev/null +++ b/cinder-model/src/main/java/com/woorea/openstack/cinder/model/VolumeForUpdate.java @@ -0,0 +1,54 @@ +package com.woorea.openstack.cinder.model; + +import java.io.Serializable; + +import org.codehaus.jackson.map.annotate.JsonRootName; + +@JsonRootName("volume") +public class VolumeForUpdate implements Serializable { + + private String name; + + private String description; + + /** + * @return the name + */ + public String getName() { + return name; + } + + /** + * @param name + * the name to set + */ + public void setName(String name) { + this.name = name; + } + + /** + * @return the description + */ + public String getDescription() { + return description; + } + + /** + * @param description + * the description to set + */ + public void setDescription(String description) { + this.description = description; + } + + /* + * (non-Javadoc) + * + * @see java.lang.Object#toString() + */ + @Override + public String toString() { + return "VolumeForUpdate [name=" + name + ", description=" + description + "]"; + } + +} diff --git a/cinder-model/src/main/java/com/woorea/openstack/cinder/model/VolumeType.java b/cinder-model/src/main/java/com/woorea/openstack/cinder/model/VolumeType.java new file mode 100644 index 000000000..21a5556cf --- /dev/null +++ b/cinder-model/src/main/java/com/woorea/openstack/cinder/model/VolumeType.java @@ -0,0 +1,50 @@ +package com.woorea.openstack.cinder.model; + +import java.io.Serializable; +import java.util.Map; + +import org.codehaus.jackson.annotate.JsonProperty; +import org.codehaus.jackson.map.annotate.JsonRootName; + +@JsonRootName("volume_type") +public class VolumeType implements Serializable { + + private String id; + + private String name; + + @JsonProperty("extra_specs") + private Map extraSpecs; + + /** + * @return the id + */ + public String getId() { + return id; + } + + /** + * @return the name + */ + public String getName() { + return name; + } + + /** + * @return the extra_specs + */ + public Map getExtraSpecs() { + return extraSpecs; + } + + /* + * (non-Javadoc) + * + * @see java.lang.Object#toString() + */ + @Override + public String toString() { + return "VolumeType [id=" + id + ", name=" + name + ", extra_specs=" + extraSpecs + "]"; + } + +} diff --git a/cinder-model/src/main/java/com/woorea/openstack/cinder/model/VolumeTypeForCreate.java b/cinder-model/src/main/java/com/woorea/openstack/cinder/model/VolumeTypeForCreate.java new file mode 100644 index 000000000..9c7d8483f --- /dev/null +++ b/cinder-model/src/main/java/com/woorea/openstack/cinder/model/VolumeTypeForCreate.java @@ -0,0 +1,57 @@ +package com.woorea.openstack.cinder.model; + +import java.io.Serializable; +import java.util.Map; + +import org.codehaus.jackson.annotate.JsonProperty; +import org.codehaus.jackson.map.annotate.JsonRootName; + +@JsonRootName("volume_type") +public class VolumeTypeForCreate implements Serializable { + + private String name; + + @JsonProperty("extra_specs") + private Map extraSpecs; + + /** + * @return the name + */ + public String getName() { + return name; + } + + /** + * @param name + * the name to set + */ + public void setName(String name) { + this.name = name; + } + + /** + * @return the extraSpecs + */ + public Map getExtraSpecs() { + return extraSpecs; + } + + /** + * @param extraSpecs + * the extra_specs to set + */ + public void setExtraSpecs(Map extraSpecs) { + this.extraSpecs = extraSpecs; + } + + /* + * (non-Javadoc) + * + * @see java.lang.Object#toString() + */ + @Override + public String toString() { + return "VolumeForCreate [name=" + name + ", metadata=" + extraSpecs + "]"; + } + +} diff --git a/cinder-model/src/main/java/com/woorea/openstack/cinder/model/VolumeTypes.java b/cinder-model/src/main/java/com/woorea/openstack/cinder/model/VolumeTypes.java new file mode 100644 index 000000000..7a6826e11 --- /dev/null +++ b/cinder-model/src/main/java/com/woorea/openstack/cinder/model/VolumeTypes.java @@ -0,0 +1,36 @@ +package com.woorea.openstack.cinder.model; + +import java.io.Serializable; +import java.util.Iterator; +import java.util.List; + +import org.codehaus.jackson.annotate.JsonProperty; + +public class VolumeTypes implements Iterable, Serializable { + + @JsonProperty("volume_types") + private List list; + + /** + * @return the list + */ + public List getList() { + return list; + } + + /* + * (non-Javadoc) + * + * @see java.lang.Object#toString() + */ + @Override + public String toString() { + return "Volume Types [list=" + list + "]"; + } + + @Override + public Iterator iterator() { + return list.iterator(); + } + +} diff --git a/cinder-model/src/main/java/com/woorea/openstack/cinder/model/Volumes.java b/cinder-model/src/main/java/com/woorea/openstack/cinder/model/Volumes.java new file mode 100644 index 000000000..4f8781e0a --- /dev/null +++ b/cinder-model/src/main/java/com/woorea/openstack/cinder/model/Volumes.java @@ -0,0 +1,36 @@ +package com.woorea.openstack.cinder.model; + +import java.io.Serializable; +import java.util.Iterator; +import java.util.List; + +import org.codehaus.jackson.annotate.JsonProperty; + +public class Volumes implements Iterable, Serializable { + + @JsonProperty("volumes") + private List list; + + /** + * @return the list + */ + public List getList() { + return list; + } + + /* + * (non-Javadoc) + * + * @see java.lang.Object#toString() + */ + @Override + public String toString() { + return "Volumes [list=" + list + "]"; + } + + @Override + public Iterator iterator() { + return list.iterator(); + } + +} diff --git a/pom.xml b/pom.xml index 9e02cbe39..46996ba2d 100644 --- a/pom.xml +++ b/pom.xml @@ -21,6 +21,7 @@ nova-client glance-client + cinder-client keystone-client swift-client quantum-client @@ -28,6 +29,7 @@ heat-client nova-model glance-model + cinder-model keystone-model swift-model quantum-model @@ -145,4 +147,4 @@ - \ No newline at end of file + From 0e6efa8864cfee064376a1734c4879d7144f3787 Mon Sep 17 00:00:00 2001 From: ansaba Date: Thu, 19 Mar 2015 11:46:16 -0400 Subject: [PATCH 096/144] Added Java SDK for scheduler_stats api in Cinder. This extension provides two level of pool information: names only or detailed information: Pool name only: GET http://CINDER_API_ENDPOINT/v2/TENANT_ID/scheduler-stats/get_pools Detailed Pool info: GET http://CINDER_API_ENDPOINT/v2/TENANT_ID/scheduler-stats/get_pools \?detail\=True JSON Response { "pools": [ { "name": "ubuntu@lvm#backend_name", "capabilities": { "QoS_support": false, "allocated_capacity_gb": 0, "driver_version": "2.0.0", "free_capacity_gb": 7.01, "location_info": "LVMVolumeDriver:ubuntu:stack-volumes:default:0", "pool_name": "backend_name", "reserved_percentage": 0, "storage_protocol": "iSCSI", "timestamp": "2014-11-21T18:15:28.141161", "total_capacity_gb": 10.01, "vendor_name": "Open Source", "volume_backend_name": "backend_name", "extra_specs": [ { "description": "HP 3PAR Fibre Channel driver", "display_name": "HP3PARFCDriver", "namespace": "OS::Cinder::HP3PARFCDriver", "properties": { "hp3par:persona": { "default": "2", "description": "HP 3PAR Persona", "enum": { "1": "Generic", "10": "ONTAP-legacy", "11": "VMware", "12": "OpenVMS", "13": "HPUX", "15": "WindowsServer", "2": "Generic-ALUA", "6": "Generic-legacy", "7": "HPUX-legacy", "8": "AIX-legacy", "9": "EGENERA" }, "title": "persona", "type": "string" }, "hp3par:snap_cpg": { "description": "Overrides the 'hp3par_snap' setting", "title": "snap_cpg", "type": "string" } } }, { "description": "HP LeftHand iSCSI driver", "display_name": "HPLeftHandISCSIDriver", "namespace": "OS::Cinder::HPLeftHandISCSIDriver", "properties": { "hplh:provisioning": { "default": "thin", "description": "Provisioning", "enum": [ "full", "thin" ], "title": "provisioning", "type": "string" }, "hplh:vvs": { "default": "1", "description": "VVS", "title": "vvs", "type": "integer" } } } ] } } ] } --- .../com/woorea/openstack/cinder/Cinder.java | 7 + .../cinder/SchedulerStatsExtention.java | 32 ++++ .../openstack/cinder/model/Capabilities.java | 141 ++++++++++++++++++ .../woorea/openstack/cinder/model/Pool.java | 44 ++++++ .../woorea/openstack/cinder/model/Pools.java | 35 +++++ 5 files changed, 259 insertions(+) create mode 100644 cinder-client/src/main/java/com/woorea/openstack/cinder/SchedulerStatsExtention.java create mode 100644 cinder-model/src/main/java/com/woorea/openstack/cinder/model/Capabilities.java create mode 100644 cinder-model/src/main/java/com/woorea/openstack/cinder/model/Pool.java create mode 100644 cinder-model/src/main/java/com/woorea/openstack/cinder/model/Pools.java diff --git a/cinder-client/src/main/java/com/woorea/openstack/cinder/Cinder.java b/cinder-client/src/main/java/com/woorea/openstack/cinder/Cinder.java index 780e82511..89227269c 100644 --- a/cinder-client/src/main/java/com/woorea/openstack/cinder/Cinder.java +++ b/cinder-client/src/main/java/com/woorea/openstack/cinder/Cinder.java @@ -13,12 +13,15 @@ public class Cinder extends OpenStackClient { private final LimitsExtension LIMITS; + private final SchedulerStatsExtension SCHEDULERSTATS; + public Cinder(String endpoint, OpenStackClientConnector connector) { super(endpoint, connector); VOLUMES = new VolumesExtension(this); SNAPSHOTS = new SnapshotsExtension(this); VOLUME_TYPES = new VolumeTypesExtension(this); LIMITS = new LimitsExtension(this); + SCHEDULERSTATS = new SchedulerStatsExtension(this); } public Cinder(String endpoint) { @@ -40,4 +43,8 @@ public final VolumeTypesExtension volumeTypes() { public final LimitsExtension limits() { return LIMITS; } + + public final SchedulerStatsExtension schedulerStats() { + return SCHEDULERSTATS; + } } diff --git a/cinder-client/src/main/java/com/woorea/openstack/cinder/SchedulerStatsExtention.java b/cinder-client/src/main/java/com/woorea/openstack/cinder/SchedulerStatsExtention.java new file mode 100644 index 000000000..0a336a806 --- /dev/null +++ b/cinder-client/src/main/java/com/woorea/openstack/cinder/SchedulerStatsExtention.java @@ -0,0 +1,32 @@ +package com.woorea.openstack.cinder; + +import com.woorea.openstack.base.client.HttpMethod; +import com.woorea.openstack.base.client.OpenStackClient; +import com.woorea.openstack.base.client.OpenStackRequest; +import com.woorea.openstack.cinder.model.Pools; + +/** + * Cinder Scheduler Stats Management + * + * @author Ahmed Saba + */ +public class SchedulerStatsExtention { + + private final OpenStackClient CLIENT; + + public SchedulerStatsExtention(OpenStackClient client) { + this.CLIENT = client; + } + + public List list(boolean detail) { + return new List(detail); + } + + public class List extends OpenStackRequest { + + public List(boolean detail) { + super(CLIENT, HttpMethod.GET, "/scheduler-stats/get_pools" + (detail ? "?detail=True" : ""), null, Pools.class); + } + } + +} diff --git a/cinder-model/src/main/java/com/woorea/openstack/cinder/model/Capabilities.java b/cinder-model/src/main/java/com/woorea/openstack/cinder/model/Capabilities.java new file mode 100644 index 000000000..3a5ae860c --- /dev/null +++ b/cinder-model/src/main/java/com/woorea/openstack/cinder/model/Capabilities.java @@ -0,0 +1,141 @@ +package com.woorea.openstack.cinder.model; + +import java.io.Serializable; +import java.util.List; +import java.util.Map; +import org.codehaus.jackson.annotate.JsonProperty; +import org.codehaus.jackson.map.annotate.JsonRootName; + +/** + * Model for Volume + * + * @author VAL Informatique + */ +@JsonRootName("capabilities") +public class Capabilities implements Serializable { + + @JsonProperty("pool_name") + private String poolName; + @JsonProperty("QoS_support") + private boolean qosSupport; + @JsonProperty("allocated_capacity_gb") + private Long allocatedCapacityGb; + @JsonProperty("driver_version") + private String driverVersion; + @JsonProperty("free_capacity_gb") + private Long freeCapacityGb; + @JsonProperty("location_info") + private String locationInfo; + + private String timestamp; + @JsonProperty("volume_backend_name") + private String volumeBackendName; + @JsonProperty("total_capacity_gb") + private Long totalCapacityGb; + @JsonProperty("reserved_percentage") + private Integer reservedPercentage; + @JsonProperty("vendor_name") + private String vendorName; + @JsonProperty("storage_protocol") + private String storageProtocol; + @JsonProperty("extra_specs") + private Map extraSpecs; + + public String getPoolName() { + return poolName; + } + public void setPoolName(String poolName) { + this.poolName = poolName; + } + public boolean isQosSupport() { + return qosSupport; + } + public void setQosSupport(boolean qosSupport) { + this.qosSupport = qosSupport; + } + public Long getAllocatedCapacityGb() { + return allocatedCapacityGb; + } + public void setAllocatedCapacityGb(Long allocatedCapacityGb) { + this.allocatedCapacityGb = allocatedCapacityGb; + } + public String getDriverVersion() { + return driverVersion; + } + public void setDriverVersion(String driverVersion) { + this.driverVersion = driverVersion; + } + public Long getFreeCapacityGb() { + return freeCapacityGb; + } + public void setFreeCapacityGb(Long freeCapacityGb) { + this.freeCapacityGb = freeCapacityGb; + } + public String getLocationInfo() { + return locationInfo; + } + public void setLocationInfo(String locationInfo) { + this.locationInfo = locationInfo; + } + public String getTimestamp() { + return timestamp; + } + public void setTimestamp(String timestamp) { + this.timestamp = timestamp; + } + public String getVolumeBackendName() { + return volumeBackendName; + } + public void setVolumeBackendName(String volumeBackendName) { + this.volumeBackendName = volumeBackendName; + } + public Long getTotalCapacityGb() { + return totalCapacityGb; + } + public void setTotalCapacityGb(Long totalCapacityGb) { + this.totalCapacityGb = totalCapacityGb; + } + public Integer getReservedPercentage() { + return reservedPercentage; + } + public void setReservedPercentage(Integer reservedPercentage) { + this.reservedPercentage = reservedPercentage; + } + public String getVendorName() { + return vendorName; + } + public void setVendorName(String vendorName) { + this.vendorName = vendorName; + } + public String getStorageProtocol() { + return storageProtocol; + } + public void setStorageProtocol(String storageProtocol) { + this.storageProtocol = storageProtocol; + } + public Map getExtraSpecs() { + return extraSpecs; + } + public void setExtraSpecs(Map extraSpecs) { + this.extraSpecs = extraSpecs; + } + + @Override + public String toString() { + return "Capabilities{" + + "poolName='" + poolName + '\'' + + ", qosSupport='" + qosSupport + '\'' + + ", allocatedCapacityGb='" + allocatedCapacityGb + '\'' + + ", driverVersion='" + driverVersion + '\'' + + ", freeCapacityGb='" + freeCapacityGb + '\'' + + ", locationInfo='" + locationInfo + '\'' + + ", timestamp='" + timestamp + '\'' + + ", volumeBackendName='" + volumeBackendName + '\'' + + ", totalCapacityGb='" + totalCapacityGb + '\'' + + ", reservedPercentage='" + reservedPercentage + '\'' + + ", vendorName='" + vendorName + '\'' + + ", storageProtocol='" + storageProtocol + '\'' + + ", extraSpecs='" + extraSpecs + '\'' + + '}'; + } +} diff --git a/cinder-model/src/main/java/com/woorea/openstack/cinder/model/Pool.java b/cinder-model/src/main/java/com/woorea/openstack/cinder/model/Pool.java new file mode 100644 index 000000000..766085157 --- /dev/null +++ b/cinder-model/src/main/java/com/woorea/openstack/cinder/model/Pool.java @@ -0,0 +1,44 @@ +package com.woorea.openstack.cinder.model; + +import java.io.Serializable; +import java.util.List; +import java.util.Map; +import org.codehaus.jackson.annotate.JsonProperty; +import org.codehaus.jackson.map.annotate.JsonRootName; + +/** + * Model for Pool + * + * @author Ahmed Saba + */ +@JsonRootName("pool") +public class Pool implements Serializable { + + private String name; + + private Capabilities capabilities; + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + + public Capabilities getCapabilities() { + return capabilities; + } + + public void setCapabilities(Capabilities capabilities) { + this.capabilities = capabilities; + } + + @Override + public String toString() { + return "Pool{" + + "name='" + name + '\'' + + ", capabilities='" + capabilities + '\'' + + '}'; + } +} diff --git a/cinder-model/src/main/java/com/woorea/openstack/cinder/model/Pools.java b/cinder-model/src/main/java/com/woorea/openstack/cinder/model/Pools.java new file mode 100644 index 000000000..adf5fc24a --- /dev/null +++ b/cinder-model/src/main/java/com/woorea/openstack/cinder/model/Pools.java @@ -0,0 +1,35 @@ +package com.woorea.openstack.cinder.model; + +import java.io.Serializable; +import java.util.Iterator; +import java.util.List; +import org.codehaus.jackson.annotate.JsonProperty; + +/** + * Model for List of pools + * + * @author Ahmed Saba + */ +public class Pools implements Iterable, Serializable { + + @JsonProperty("pools") + private List list; + + public List getList() { + return list; + } + + public void setList(List list) { + this.list = list; + } + + @Override + public Iterator iterator() { + return list.iterator(); + } + + @Override + public String toString() { + return "Pools [list=" + list + "]"; + } +} From f4a01f2a372b01216390c49f636188fe9b3bfe6f Mon Sep 17 00:00:00 2001 From: ansaba Date: Thu, 19 Mar 2015 11:46:16 -0400 Subject: [PATCH 097/144] Added Java SDK for scheduler_stats api in Cinder. This extension provides two level of pool information: names only or detailed information: Pool name only: GET http://CINDER_API_ENDPOINT/v2/TENANT_ID/scheduler-stats/get_pools Detailed Pool info: GET http://CINDER_API_ENDPOINT/v2/TENANT_ID/scheduler-stats/get_pools \?detail\=True JSON Response { "pools": [ { "name": "ubuntu@lvm#backend_name", "capabilities": { "QoS_support": false, "allocated_capacity_gb": 0, "driver_version": "2.0.0", "free_capacity_gb": 7.01, "location_info": "LVMVolumeDriver:ubuntu:stack-volumes:default:0", "pool_name": "backend_name", "reserved_percentage": 0, "storage_protocol": "iSCSI", "timestamp": "2014-11-21T18:15:28.141161", "total_capacity_gb": 10.01, "vendor_name": "Open Source", "volume_backend_name": "backend_name", "extra_specs": [ { "description": "HP 3PAR Fibre Channel driver", "display_name": "HP3PARFCDriver", "namespace": "OS::Cinder::HP3PARFCDriver", "properties": { "hp3par:persona": { "default": "2", "description": "HP 3PAR Persona", "enum": { "1": "Generic", "10": "ONTAP-legacy", "11": "VMware", "12": "OpenVMS", "13": "HPUX", "15": "WindowsServer", "2": "Generic-ALUA", "6": "Generic-legacy", "7": "HPUX-legacy", "8": "AIX-legacy", "9": "EGENERA" }, "title": "persona", "type": "string" }, "hp3par:snap_cpg": { "description": "Overrides the 'hp3par_snap' setting", "title": "snap_cpg", "type": "string" } } }, { "description": "HP LeftHand iSCSI driver", "display_name": "HPLeftHandISCSIDriver", "namespace": "OS::Cinder::HPLeftHandISCSIDriver", "properties": { "hplh:provisioning": { "default": "thin", "description": "Provisioning", "enum": [ "full", "thin" ], "title": "provisioning", "type": "string" }, "hplh:vvs": { "default": "1", "description": "VVS", "title": "vvs", "type": "integer" } } } ] } } ] } --- .../com/woorea/openstack/cinder/Cinder.java | 7 + .../cinder/SchedulerStatsExtention.java | 32 ++++ .../openstack/cinder/model/Capabilities.java | 141 ++++++++++++++++++ .../woorea/openstack/cinder/model/Pool.java | 44 ++++++ .../woorea/openstack/cinder/model/Pools.java | 35 +++++ 5 files changed, 259 insertions(+) create mode 100644 cinder-client/src/main/java/com/woorea/openstack/cinder/SchedulerStatsExtention.java create mode 100644 cinder-model/src/main/java/com/woorea/openstack/cinder/model/Capabilities.java create mode 100644 cinder-model/src/main/java/com/woorea/openstack/cinder/model/Pool.java create mode 100644 cinder-model/src/main/java/com/woorea/openstack/cinder/model/Pools.java diff --git a/cinder-client/src/main/java/com/woorea/openstack/cinder/Cinder.java b/cinder-client/src/main/java/com/woorea/openstack/cinder/Cinder.java index 780e82511..89227269c 100644 --- a/cinder-client/src/main/java/com/woorea/openstack/cinder/Cinder.java +++ b/cinder-client/src/main/java/com/woorea/openstack/cinder/Cinder.java @@ -13,12 +13,15 @@ public class Cinder extends OpenStackClient { private final LimitsExtension LIMITS; + private final SchedulerStatsExtension SCHEDULERSTATS; + public Cinder(String endpoint, OpenStackClientConnector connector) { super(endpoint, connector); VOLUMES = new VolumesExtension(this); SNAPSHOTS = new SnapshotsExtension(this); VOLUME_TYPES = new VolumeTypesExtension(this); LIMITS = new LimitsExtension(this); + SCHEDULERSTATS = new SchedulerStatsExtension(this); } public Cinder(String endpoint) { @@ -40,4 +43,8 @@ public final VolumeTypesExtension volumeTypes() { public final LimitsExtension limits() { return LIMITS; } + + public final SchedulerStatsExtension schedulerStats() { + return SCHEDULERSTATS; + } } diff --git a/cinder-client/src/main/java/com/woorea/openstack/cinder/SchedulerStatsExtention.java b/cinder-client/src/main/java/com/woorea/openstack/cinder/SchedulerStatsExtention.java new file mode 100644 index 000000000..0a336a806 --- /dev/null +++ b/cinder-client/src/main/java/com/woorea/openstack/cinder/SchedulerStatsExtention.java @@ -0,0 +1,32 @@ +package com.woorea.openstack.cinder; + +import com.woorea.openstack.base.client.HttpMethod; +import com.woorea.openstack.base.client.OpenStackClient; +import com.woorea.openstack.base.client.OpenStackRequest; +import com.woorea.openstack.cinder.model.Pools; + +/** + * Cinder Scheduler Stats Management + * + * @author Ahmed Saba + */ +public class SchedulerStatsExtention { + + private final OpenStackClient CLIENT; + + public SchedulerStatsExtention(OpenStackClient client) { + this.CLIENT = client; + } + + public List list(boolean detail) { + return new List(detail); + } + + public class List extends OpenStackRequest { + + public List(boolean detail) { + super(CLIENT, HttpMethod.GET, "/scheduler-stats/get_pools" + (detail ? "?detail=True" : ""), null, Pools.class); + } + } + +} diff --git a/cinder-model/src/main/java/com/woorea/openstack/cinder/model/Capabilities.java b/cinder-model/src/main/java/com/woorea/openstack/cinder/model/Capabilities.java new file mode 100644 index 000000000..bc1f15903 --- /dev/null +++ b/cinder-model/src/main/java/com/woorea/openstack/cinder/model/Capabilities.java @@ -0,0 +1,141 @@ +package com.woorea.openstack.cinder.model; + +import java.io.Serializable; +import java.util.List; +import java.util.Map; +import org.codehaus.jackson.annotate.JsonProperty; +import org.codehaus.jackson.map.annotate.JsonRootName; + +/** + * Model for Volume + * + * @author Ahmed Saba + */ +@JsonRootName("capabilities") +public class Capabilities implements Serializable { + + @JsonProperty("pool_name") + private String poolName; + @JsonProperty("QoS_support") + private boolean qosSupport; + @JsonProperty("allocated_capacity_gb") + private Long allocatedCapacityGb; + @JsonProperty("driver_version") + private String driverVersion; + @JsonProperty("free_capacity_gb") + private Long freeCapacityGb; + @JsonProperty("location_info") + private String locationInfo; + + private String timestamp; + @JsonProperty("volume_backend_name") + private String volumeBackendName; + @JsonProperty("total_capacity_gb") + private Long totalCapacityGb; + @JsonProperty("reserved_percentage") + private Integer reservedPercentage; + @JsonProperty("vendor_name") + private String vendorName; + @JsonProperty("storage_protocol") + private String storageProtocol; + @JsonProperty("extra_specs") + private Map extraSpecs; + + public String getPoolName() { + return poolName; + } + public void setPoolName(String poolName) { + this.poolName = poolName; + } + public boolean isQosSupport() { + return qosSupport; + } + public void setQosSupport(boolean qosSupport) { + this.qosSupport = qosSupport; + } + public Long getAllocatedCapacityGb() { + return allocatedCapacityGb; + } + public void setAllocatedCapacityGb(Long allocatedCapacityGb) { + this.allocatedCapacityGb = allocatedCapacityGb; + } + public String getDriverVersion() { + return driverVersion; + } + public void setDriverVersion(String driverVersion) { + this.driverVersion = driverVersion; + } + public Long getFreeCapacityGb() { + return freeCapacityGb; + } + public void setFreeCapacityGb(Long freeCapacityGb) { + this.freeCapacityGb = freeCapacityGb; + } + public String getLocationInfo() { + return locationInfo; + } + public void setLocationInfo(String locationInfo) { + this.locationInfo = locationInfo; + } + public String getTimestamp() { + return timestamp; + } + public void setTimestamp(String timestamp) { + this.timestamp = timestamp; + } + public String getVolumeBackendName() { + return volumeBackendName; + } + public void setVolumeBackendName(String volumeBackendName) { + this.volumeBackendName = volumeBackendName; + } + public Long getTotalCapacityGb() { + return totalCapacityGb; + } + public void setTotalCapacityGb(Long totalCapacityGb) { + this.totalCapacityGb = totalCapacityGb; + } + public Integer getReservedPercentage() { + return reservedPercentage; + } + public void setReservedPercentage(Integer reservedPercentage) { + this.reservedPercentage = reservedPercentage; + } + public String getVendorName() { + return vendorName; + } + public void setVendorName(String vendorName) { + this.vendorName = vendorName; + } + public String getStorageProtocol() { + return storageProtocol; + } + public void setStorageProtocol(String storageProtocol) { + this.storageProtocol = storageProtocol; + } + public Map getExtraSpecs() { + return extraSpecs; + } + public void setExtraSpecs(Map extraSpecs) { + this.extraSpecs = extraSpecs; + } + + @Override + public String toString() { + return "Capabilities{" + + "poolName='" + poolName + '\'' + + ", qosSupport='" + qosSupport + '\'' + + ", allocatedCapacityGb='" + allocatedCapacityGb + '\'' + + ", driverVersion='" + driverVersion + '\'' + + ", freeCapacityGb='" + freeCapacityGb + '\'' + + ", locationInfo='" + locationInfo + '\'' + + ", timestamp='" + timestamp + '\'' + + ", volumeBackendName='" + volumeBackendName + '\'' + + ", totalCapacityGb='" + totalCapacityGb + '\'' + + ", reservedPercentage='" + reservedPercentage + '\'' + + ", vendorName='" + vendorName + '\'' + + ", storageProtocol='" + storageProtocol + '\'' + + ", extraSpecs='" + extraSpecs + '\'' + + '}'; + } +} diff --git a/cinder-model/src/main/java/com/woorea/openstack/cinder/model/Pool.java b/cinder-model/src/main/java/com/woorea/openstack/cinder/model/Pool.java new file mode 100644 index 000000000..766085157 --- /dev/null +++ b/cinder-model/src/main/java/com/woorea/openstack/cinder/model/Pool.java @@ -0,0 +1,44 @@ +package com.woorea.openstack.cinder.model; + +import java.io.Serializable; +import java.util.List; +import java.util.Map; +import org.codehaus.jackson.annotate.JsonProperty; +import org.codehaus.jackson.map.annotate.JsonRootName; + +/** + * Model for Pool + * + * @author Ahmed Saba + */ +@JsonRootName("pool") +public class Pool implements Serializable { + + private String name; + + private Capabilities capabilities; + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + + public Capabilities getCapabilities() { + return capabilities; + } + + public void setCapabilities(Capabilities capabilities) { + this.capabilities = capabilities; + } + + @Override + public String toString() { + return "Pool{" + + "name='" + name + '\'' + + ", capabilities='" + capabilities + '\'' + + '}'; + } +} diff --git a/cinder-model/src/main/java/com/woorea/openstack/cinder/model/Pools.java b/cinder-model/src/main/java/com/woorea/openstack/cinder/model/Pools.java new file mode 100644 index 000000000..adf5fc24a --- /dev/null +++ b/cinder-model/src/main/java/com/woorea/openstack/cinder/model/Pools.java @@ -0,0 +1,35 @@ +package com.woorea.openstack.cinder.model; + +import java.io.Serializable; +import java.util.Iterator; +import java.util.List; +import org.codehaus.jackson.annotate.JsonProperty; + +/** + * Model for List of pools + * + * @author Ahmed Saba + */ +public class Pools implements Iterable, Serializable { + + @JsonProperty("pools") + private List list; + + public List getList() { + return list; + } + + public void setList(List list) { + this.list = list; + } + + @Override + public Iterator iterator() { + return list.iterator(); + } + + @Override + public String toString() { + return "Pools [list=" + list + "]"; + } +} From 1cae4a88249bc2a8632371fb5319e23f4e070a83 Mon Sep 17 00:00:00 2001 From: ansaba Date: Thu, 19 Mar 2015 11:46:16 -0400 Subject: [PATCH 098/144] Added Java SDK for scheduler_stats api in Cinder. This extension provides two level of pool information: names only or detailed information: Pool name only: GET http://CINDER_API_ENDPOINT/v2/TENANT_ID/scheduler-stats/get_pools Detailed Pool info: GET http://CINDER_API_ENDPOINT/v2/TENANT_ID/scheduler-stats/get_pools \?detail\=True JSON Response { "pools": [ { "name": "ubuntu@lvm#backend_name", "capabilities": { "QoS_support": false, "allocated_capacity_gb": 0, "driver_version": "2.0.0", "free_capacity_gb": 7.01, "location_info": "LVMVolumeDriver:ubuntu:stack-volumes:default:0", "pool_name": "backend_name", "reserved_percentage": 0, "storage_protocol": "iSCSI", "timestamp": "2014-11-21T18:15:28.141161", "total_capacity_gb": 10.01, "vendor_name": "Open Source", "volume_backend_name": "backend_name", "extra_specs": [ { "description": "HP 3PAR Fibre Channel driver", "display_name": "HP3PARFCDriver", "namespace": "OS::Cinder::HP3PARFCDriver", "properties": { "hp3par:persona": { "default": "2", "description": "HP 3PAR Persona", "enum": { "1": "Generic", "10": "ONTAP-legacy", "11": "VMware", "12": "OpenVMS", "13": "HPUX", "15": "WindowsServer", "2": "Generic-ALUA", "6": "Generic-legacy", "7": "HPUX-legacy", "8": "AIX-legacy", "9": "EGENERA" }, "title": "persona", "type": "string" }, "hp3par:snap_cpg": { "description": "Overrides the 'hp3par_snap' setting", "title": "snap_cpg", "type": "string" } } }, { "description": "HP LeftHand iSCSI driver", "display_name": "HPLeftHandISCSIDriver", "namespace": "OS::Cinder::HPLeftHandISCSIDriver", "properties": { "hplh:provisioning": { "default": "thin", "description": "Provisioning", "enum": [ "full", "thin" ], "title": "provisioning", "type": "string" }, "hplh:vvs": { "default": "1", "description": "VVS", "title": "vvs", "type": "integer" } } } ] } } ] } --- .../com/woorea/openstack/cinder/Cinder.java | 7 + .../cinder/SchedulerStatsExtension.java | 32 ++++ .../openstack/cinder/model/Capabilities.java | 141 ++++++++++++++++++ .../woorea/openstack/cinder/model/Pool.java | 44 ++++++ .../woorea/openstack/cinder/model/Pools.java | 35 +++++ 5 files changed, 259 insertions(+) create mode 100644 cinder-client/src/main/java/com/woorea/openstack/cinder/SchedulerStatsExtension.java create mode 100644 cinder-model/src/main/java/com/woorea/openstack/cinder/model/Capabilities.java create mode 100644 cinder-model/src/main/java/com/woorea/openstack/cinder/model/Pool.java create mode 100644 cinder-model/src/main/java/com/woorea/openstack/cinder/model/Pools.java diff --git a/cinder-client/src/main/java/com/woorea/openstack/cinder/Cinder.java b/cinder-client/src/main/java/com/woorea/openstack/cinder/Cinder.java index 780e82511..89227269c 100644 --- a/cinder-client/src/main/java/com/woorea/openstack/cinder/Cinder.java +++ b/cinder-client/src/main/java/com/woorea/openstack/cinder/Cinder.java @@ -13,12 +13,15 @@ public class Cinder extends OpenStackClient { private final LimitsExtension LIMITS; + private final SchedulerStatsExtension SCHEDULERSTATS; + public Cinder(String endpoint, OpenStackClientConnector connector) { super(endpoint, connector); VOLUMES = new VolumesExtension(this); SNAPSHOTS = new SnapshotsExtension(this); VOLUME_TYPES = new VolumeTypesExtension(this); LIMITS = new LimitsExtension(this); + SCHEDULERSTATS = new SchedulerStatsExtension(this); } public Cinder(String endpoint) { @@ -40,4 +43,8 @@ public final VolumeTypesExtension volumeTypes() { public final LimitsExtension limits() { return LIMITS; } + + public final SchedulerStatsExtension schedulerStats() { + return SCHEDULERSTATS; + } } diff --git a/cinder-client/src/main/java/com/woorea/openstack/cinder/SchedulerStatsExtension.java b/cinder-client/src/main/java/com/woorea/openstack/cinder/SchedulerStatsExtension.java new file mode 100644 index 000000000..9e6935165 --- /dev/null +++ b/cinder-client/src/main/java/com/woorea/openstack/cinder/SchedulerStatsExtension.java @@ -0,0 +1,32 @@ +package com.woorea.openstack.cinder; + +import com.woorea.openstack.base.client.HttpMethod; +import com.woorea.openstack.base.client.OpenStackClient; +import com.woorea.openstack.base.client.OpenStackRequest; +import com.woorea.openstack.cinder.model.Pools; + +/** + * Cinder Scheduler Stats Management + * + * @author Ahmed Saba + */ +public class SchedulerStatsExtension { + + private final OpenStackClient CLIENT; + + public SchedulerStatsExtension(OpenStackClient client) { + this.CLIENT = client; + } + + public List list(boolean detail) { + return new List(detail); + } + + public class List extends OpenStackRequest { + + public List(boolean detail) { + super(CLIENT, HttpMethod.GET, "/scheduler-stats/get_pools" + (detail ? "?detail=True" : ""), null, Pools.class); + } + } + +} diff --git a/cinder-model/src/main/java/com/woorea/openstack/cinder/model/Capabilities.java b/cinder-model/src/main/java/com/woorea/openstack/cinder/model/Capabilities.java new file mode 100644 index 000000000..bc1f15903 --- /dev/null +++ b/cinder-model/src/main/java/com/woorea/openstack/cinder/model/Capabilities.java @@ -0,0 +1,141 @@ +package com.woorea.openstack.cinder.model; + +import java.io.Serializable; +import java.util.List; +import java.util.Map; +import org.codehaus.jackson.annotate.JsonProperty; +import org.codehaus.jackson.map.annotate.JsonRootName; + +/** + * Model for Volume + * + * @author Ahmed Saba + */ +@JsonRootName("capabilities") +public class Capabilities implements Serializable { + + @JsonProperty("pool_name") + private String poolName; + @JsonProperty("QoS_support") + private boolean qosSupport; + @JsonProperty("allocated_capacity_gb") + private Long allocatedCapacityGb; + @JsonProperty("driver_version") + private String driverVersion; + @JsonProperty("free_capacity_gb") + private Long freeCapacityGb; + @JsonProperty("location_info") + private String locationInfo; + + private String timestamp; + @JsonProperty("volume_backend_name") + private String volumeBackendName; + @JsonProperty("total_capacity_gb") + private Long totalCapacityGb; + @JsonProperty("reserved_percentage") + private Integer reservedPercentage; + @JsonProperty("vendor_name") + private String vendorName; + @JsonProperty("storage_protocol") + private String storageProtocol; + @JsonProperty("extra_specs") + private Map extraSpecs; + + public String getPoolName() { + return poolName; + } + public void setPoolName(String poolName) { + this.poolName = poolName; + } + public boolean isQosSupport() { + return qosSupport; + } + public void setQosSupport(boolean qosSupport) { + this.qosSupport = qosSupport; + } + public Long getAllocatedCapacityGb() { + return allocatedCapacityGb; + } + public void setAllocatedCapacityGb(Long allocatedCapacityGb) { + this.allocatedCapacityGb = allocatedCapacityGb; + } + public String getDriverVersion() { + return driverVersion; + } + public void setDriverVersion(String driverVersion) { + this.driverVersion = driverVersion; + } + public Long getFreeCapacityGb() { + return freeCapacityGb; + } + public void setFreeCapacityGb(Long freeCapacityGb) { + this.freeCapacityGb = freeCapacityGb; + } + public String getLocationInfo() { + return locationInfo; + } + public void setLocationInfo(String locationInfo) { + this.locationInfo = locationInfo; + } + public String getTimestamp() { + return timestamp; + } + public void setTimestamp(String timestamp) { + this.timestamp = timestamp; + } + public String getVolumeBackendName() { + return volumeBackendName; + } + public void setVolumeBackendName(String volumeBackendName) { + this.volumeBackendName = volumeBackendName; + } + public Long getTotalCapacityGb() { + return totalCapacityGb; + } + public void setTotalCapacityGb(Long totalCapacityGb) { + this.totalCapacityGb = totalCapacityGb; + } + public Integer getReservedPercentage() { + return reservedPercentage; + } + public void setReservedPercentage(Integer reservedPercentage) { + this.reservedPercentage = reservedPercentage; + } + public String getVendorName() { + return vendorName; + } + public void setVendorName(String vendorName) { + this.vendorName = vendorName; + } + public String getStorageProtocol() { + return storageProtocol; + } + public void setStorageProtocol(String storageProtocol) { + this.storageProtocol = storageProtocol; + } + public Map getExtraSpecs() { + return extraSpecs; + } + public void setExtraSpecs(Map extraSpecs) { + this.extraSpecs = extraSpecs; + } + + @Override + public String toString() { + return "Capabilities{" + + "poolName='" + poolName + '\'' + + ", qosSupport='" + qosSupport + '\'' + + ", allocatedCapacityGb='" + allocatedCapacityGb + '\'' + + ", driverVersion='" + driverVersion + '\'' + + ", freeCapacityGb='" + freeCapacityGb + '\'' + + ", locationInfo='" + locationInfo + '\'' + + ", timestamp='" + timestamp + '\'' + + ", volumeBackendName='" + volumeBackendName + '\'' + + ", totalCapacityGb='" + totalCapacityGb + '\'' + + ", reservedPercentage='" + reservedPercentage + '\'' + + ", vendorName='" + vendorName + '\'' + + ", storageProtocol='" + storageProtocol + '\'' + + ", extraSpecs='" + extraSpecs + '\'' + + '}'; + } +} diff --git a/cinder-model/src/main/java/com/woorea/openstack/cinder/model/Pool.java b/cinder-model/src/main/java/com/woorea/openstack/cinder/model/Pool.java new file mode 100644 index 000000000..766085157 --- /dev/null +++ b/cinder-model/src/main/java/com/woorea/openstack/cinder/model/Pool.java @@ -0,0 +1,44 @@ +package com.woorea.openstack.cinder.model; + +import java.io.Serializable; +import java.util.List; +import java.util.Map; +import org.codehaus.jackson.annotate.JsonProperty; +import org.codehaus.jackson.map.annotate.JsonRootName; + +/** + * Model for Pool + * + * @author Ahmed Saba + */ +@JsonRootName("pool") +public class Pool implements Serializable { + + private String name; + + private Capabilities capabilities; + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + + public Capabilities getCapabilities() { + return capabilities; + } + + public void setCapabilities(Capabilities capabilities) { + this.capabilities = capabilities; + } + + @Override + public String toString() { + return "Pool{" + + "name='" + name + '\'' + + ", capabilities='" + capabilities + '\'' + + '}'; + } +} diff --git a/cinder-model/src/main/java/com/woorea/openstack/cinder/model/Pools.java b/cinder-model/src/main/java/com/woorea/openstack/cinder/model/Pools.java new file mode 100644 index 000000000..adf5fc24a --- /dev/null +++ b/cinder-model/src/main/java/com/woorea/openstack/cinder/model/Pools.java @@ -0,0 +1,35 @@ +package com.woorea.openstack.cinder.model; + +import java.io.Serializable; +import java.util.Iterator; +import java.util.List; +import org.codehaus.jackson.annotate.JsonProperty; + +/** + * Model for List of pools + * + * @author Ahmed Saba + */ +public class Pools implements Iterable, Serializable { + + @JsonProperty("pools") + private List list; + + public List getList() { + return list; + } + + public void setList(List list) { + this.list = list; + } + + @Override + public Iterator iterator() { + return list.iterator(); + } + + @Override + public String toString() { + return "Pools [list=" + list + "]"; + } +} From 5ce06b20c396690bd603e43956769495ac069a35 Mon Sep 17 00:00:00 2001 From: ansaba Date: Thu, 19 Mar 2015 11:46:16 -0400 Subject: [PATCH 099/144] Added Java SDK for scheduler_stats api in Cinder. This extension provides two level of pool information: names only or detailed information: Pool name only: GET http://CINDER_API_ENDPOINT/v2/TENANT_ID/scheduler-stats/get_pools Detailed Pool info: GET http://CINDER_API_ENDPOINT/v2/TENANT_ID/scheduler-stats/get_pools \?detail\=True JSON Response { "pools": [ { "name": "ubuntu@lvm#backend_name", "capabilities": { "QoS_support": false, "allocated_capacity_gb": 0, "driver_version": "2.0.0", "free_capacity_gb": 7.01, "location_info": "LVMVolumeDriver:ubuntu:stack-volumes:default:0", "pool_name": "backend_name", "reserved_percentage": 0, "storage_protocol": "iSCSI", "timestamp": "2014-11-21T18:15:28.141161", "total_capacity_gb": 10.01, "vendor_name": "Open Source", "volume_backend_name": "backend_name", "extra_specs": [ { "description": "HP 3PAR Fibre Channel driver", "display_name": "HP3PARFCDriver", "namespace": "OS::Cinder::HP3PARFCDriver", "properties": { "hp3par:persona": { "default": "2", "description": "HP 3PAR Persona", "enum": { "1": "Generic", "10": "ONTAP-legacy", "11": "VMware", "12": "OpenVMS", "13": "HPUX", "15": "WindowsServer", "2": "Generic-ALUA", "6": "Generic-legacy", "7": "HPUX-legacy", "8": "AIX-legacy", "9": "EGENERA" }, "title": "persona", "type": "string" }, "hp3par:snap_cpg": { "description": "Overrides the 'hp3par_snap' setting", "title": "snap_cpg", "type": "string" } } }, { "description": "HP LeftHand iSCSI driver", "display_name": "HPLeftHandISCSIDriver", "namespace": "OS::Cinder::HPLeftHandISCSIDriver", "properties": { "hplh:provisioning": { "default": "thin", "description": "Provisioning", "enum": [ "full", "thin" ], "title": "provisioning", "type": "string" }, "hplh:vvs": { "default": "1", "description": "VVS", "title": "vvs", "type": "integer" } } } ] } } ] } --- .../com/woorea/openstack/cinder/Cinder.java | 7 + .../cinder/SchedulerStatsExtension.java | 32 ++++ .../openstack/cinder/model/Capabilities.java | 141 ++++++++++++++++++ .../woorea/openstack/cinder/model/Pool.java | 44 ++++++ .../woorea/openstack/cinder/model/Pools.java | 35 +++++ 5 files changed, 259 insertions(+) create mode 100644 cinder-client/src/main/java/com/woorea/openstack/cinder/SchedulerStatsExtension.java create mode 100644 cinder-model/src/main/java/com/woorea/openstack/cinder/model/Capabilities.java create mode 100644 cinder-model/src/main/java/com/woorea/openstack/cinder/model/Pool.java create mode 100644 cinder-model/src/main/java/com/woorea/openstack/cinder/model/Pools.java diff --git a/cinder-client/src/main/java/com/woorea/openstack/cinder/Cinder.java b/cinder-client/src/main/java/com/woorea/openstack/cinder/Cinder.java index 780e82511..4230e8b12 100644 --- a/cinder-client/src/main/java/com/woorea/openstack/cinder/Cinder.java +++ b/cinder-client/src/main/java/com/woorea/openstack/cinder/Cinder.java @@ -13,12 +13,15 @@ public class Cinder extends OpenStackClient { private final LimitsExtension LIMITS; + private final SchedulerStatsExtension SCHEDULER_STATS; + public Cinder(String endpoint, OpenStackClientConnector connector) { super(endpoint, connector); VOLUMES = new VolumesExtension(this); SNAPSHOTS = new SnapshotsExtension(this); VOLUME_TYPES = new VolumeTypesExtension(this); LIMITS = new LimitsExtension(this); + SCHEDULER_STATS = new SchedulerStatsExtension(this); } public Cinder(String endpoint) { @@ -40,4 +43,8 @@ public final VolumeTypesExtension volumeTypes() { public final LimitsExtension limits() { return LIMITS; } + + public final SchedulerStatsExtension schedulerStats() { + return SCHEDULER_STATS; + } } diff --git a/cinder-client/src/main/java/com/woorea/openstack/cinder/SchedulerStatsExtension.java b/cinder-client/src/main/java/com/woorea/openstack/cinder/SchedulerStatsExtension.java new file mode 100644 index 000000000..bf9d05b87 --- /dev/null +++ b/cinder-client/src/main/java/com/woorea/openstack/cinder/SchedulerStatsExtension.java @@ -0,0 +1,32 @@ +package com.woorea.openstack.cinder; + +import com.woorea.openstack.base.client.HttpMethod; +import com.woorea.openstack.base.client.OpenStackClient; +import com.woorea.openstack.base.client.OpenStackRequest; +import com.woorea.openstack.cinder.model.Pools; + +/** + * Cinder Scheduler Stats Management + * + * @author Ahmed Saba + */ +public class SchedulerStatsExtension { + + private final OpenStackClient CLIENT; + + public SchedulerStatsExtension(OpenStackClient client) { + this.CLIENT = client; + } + + public List list(boolean detail) { + return new List(detail); + } + + public class List extends OpenStackRequest { + + public List(boolean detail) { + super(CLIENT, HttpMethod.GET, (new StringBuilder("/scheduler-stats/get_pools")).append(detail ? "?detail=True":""), null, Pools.class); + } + } + +} diff --git a/cinder-model/src/main/java/com/woorea/openstack/cinder/model/Capabilities.java b/cinder-model/src/main/java/com/woorea/openstack/cinder/model/Capabilities.java new file mode 100644 index 000000000..bc1f15903 --- /dev/null +++ b/cinder-model/src/main/java/com/woorea/openstack/cinder/model/Capabilities.java @@ -0,0 +1,141 @@ +package com.woorea.openstack.cinder.model; + +import java.io.Serializable; +import java.util.List; +import java.util.Map; +import org.codehaus.jackson.annotate.JsonProperty; +import org.codehaus.jackson.map.annotate.JsonRootName; + +/** + * Model for Volume + * + * @author Ahmed Saba + */ +@JsonRootName("capabilities") +public class Capabilities implements Serializable { + + @JsonProperty("pool_name") + private String poolName; + @JsonProperty("QoS_support") + private boolean qosSupport; + @JsonProperty("allocated_capacity_gb") + private Long allocatedCapacityGb; + @JsonProperty("driver_version") + private String driverVersion; + @JsonProperty("free_capacity_gb") + private Long freeCapacityGb; + @JsonProperty("location_info") + private String locationInfo; + + private String timestamp; + @JsonProperty("volume_backend_name") + private String volumeBackendName; + @JsonProperty("total_capacity_gb") + private Long totalCapacityGb; + @JsonProperty("reserved_percentage") + private Integer reservedPercentage; + @JsonProperty("vendor_name") + private String vendorName; + @JsonProperty("storage_protocol") + private String storageProtocol; + @JsonProperty("extra_specs") + private Map extraSpecs; + + public String getPoolName() { + return poolName; + } + public void setPoolName(String poolName) { + this.poolName = poolName; + } + public boolean isQosSupport() { + return qosSupport; + } + public void setQosSupport(boolean qosSupport) { + this.qosSupport = qosSupport; + } + public Long getAllocatedCapacityGb() { + return allocatedCapacityGb; + } + public void setAllocatedCapacityGb(Long allocatedCapacityGb) { + this.allocatedCapacityGb = allocatedCapacityGb; + } + public String getDriverVersion() { + return driverVersion; + } + public void setDriverVersion(String driverVersion) { + this.driverVersion = driverVersion; + } + public Long getFreeCapacityGb() { + return freeCapacityGb; + } + public void setFreeCapacityGb(Long freeCapacityGb) { + this.freeCapacityGb = freeCapacityGb; + } + public String getLocationInfo() { + return locationInfo; + } + public void setLocationInfo(String locationInfo) { + this.locationInfo = locationInfo; + } + public String getTimestamp() { + return timestamp; + } + public void setTimestamp(String timestamp) { + this.timestamp = timestamp; + } + public String getVolumeBackendName() { + return volumeBackendName; + } + public void setVolumeBackendName(String volumeBackendName) { + this.volumeBackendName = volumeBackendName; + } + public Long getTotalCapacityGb() { + return totalCapacityGb; + } + public void setTotalCapacityGb(Long totalCapacityGb) { + this.totalCapacityGb = totalCapacityGb; + } + public Integer getReservedPercentage() { + return reservedPercentage; + } + public void setReservedPercentage(Integer reservedPercentage) { + this.reservedPercentage = reservedPercentage; + } + public String getVendorName() { + return vendorName; + } + public void setVendorName(String vendorName) { + this.vendorName = vendorName; + } + public String getStorageProtocol() { + return storageProtocol; + } + public void setStorageProtocol(String storageProtocol) { + this.storageProtocol = storageProtocol; + } + public Map getExtraSpecs() { + return extraSpecs; + } + public void setExtraSpecs(Map extraSpecs) { + this.extraSpecs = extraSpecs; + } + + @Override + public String toString() { + return "Capabilities{" + + "poolName='" + poolName + '\'' + + ", qosSupport='" + qosSupport + '\'' + + ", allocatedCapacityGb='" + allocatedCapacityGb + '\'' + + ", driverVersion='" + driverVersion + '\'' + + ", freeCapacityGb='" + freeCapacityGb + '\'' + + ", locationInfo='" + locationInfo + '\'' + + ", timestamp='" + timestamp + '\'' + + ", volumeBackendName='" + volumeBackendName + '\'' + + ", totalCapacityGb='" + totalCapacityGb + '\'' + + ", reservedPercentage='" + reservedPercentage + '\'' + + ", vendorName='" + vendorName + '\'' + + ", storageProtocol='" + storageProtocol + '\'' + + ", extraSpecs='" + extraSpecs + '\'' + + '}'; + } +} diff --git a/cinder-model/src/main/java/com/woorea/openstack/cinder/model/Pool.java b/cinder-model/src/main/java/com/woorea/openstack/cinder/model/Pool.java new file mode 100644 index 000000000..766085157 --- /dev/null +++ b/cinder-model/src/main/java/com/woorea/openstack/cinder/model/Pool.java @@ -0,0 +1,44 @@ +package com.woorea.openstack.cinder.model; + +import java.io.Serializable; +import java.util.List; +import java.util.Map; +import org.codehaus.jackson.annotate.JsonProperty; +import org.codehaus.jackson.map.annotate.JsonRootName; + +/** + * Model for Pool + * + * @author Ahmed Saba + */ +@JsonRootName("pool") +public class Pool implements Serializable { + + private String name; + + private Capabilities capabilities; + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + + public Capabilities getCapabilities() { + return capabilities; + } + + public void setCapabilities(Capabilities capabilities) { + this.capabilities = capabilities; + } + + @Override + public String toString() { + return "Pool{" + + "name='" + name + '\'' + + ", capabilities='" + capabilities + '\'' + + '}'; + } +} diff --git a/cinder-model/src/main/java/com/woorea/openstack/cinder/model/Pools.java b/cinder-model/src/main/java/com/woorea/openstack/cinder/model/Pools.java new file mode 100644 index 000000000..adf5fc24a --- /dev/null +++ b/cinder-model/src/main/java/com/woorea/openstack/cinder/model/Pools.java @@ -0,0 +1,35 @@ +package com.woorea.openstack.cinder.model; + +import java.io.Serializable; +import java.util.Iterator; +import java.util.List; +import org.codehaus.jackson.annotate.JsonProperty; + +/** + * Model for List of pools + * + * @author Ahmed Saba + */ +public class Pools implements Iterable, Serializable { + + @JsonProperty("pools") + private List list; + + public List getList() { + return list; + } + + public void setList(List list) { + this.list = list; + } + + @Override + public Iterator iterator() { + return list.iterator(); + } + + @Override + public String toString() { + return "Pools [list=" + list + "]"; + } +} From 0a83a23c4bebfbaabe9edf9e5432158b1fe351a4 Mon Sep 17 00:00:00 2001 From: ansaba Date: Thu, 19 Mar 2015 11:46:16 -0400 Subject: [PATCH 100/144] Added Java SDK for scheduler_stats api in Cinder. This extension provides two level of pool information: names only or detailed information: Pool name only: GET http://CINDER_API_ENDPOINT/v2/TENANT_ID/scheduler-stats/get_pools Detailed Pool info: GET http://CINDER_API_ENDPOINT/v2/TENANT_ID/scheduler-stats/get_pools \?detail\=True JSON Response { "pools": [ { "name": "ubuntu@lvm#backend_name", "capabilities": { "QoS_support": false, "allocated_capacity_gb": 0, "driver_version": "2.0.0", "free_capacity_gb": 7.01, "location_info": "LVMVolumeDriver:ubuntu:stack-volumes:default:0", "pool_name": "backend_name", "reserved_percentage": 0, "storage_protocol": "iSCSI", "timestamp": "2014-11-21T18:15:28.141161", "total_capacity_gb": 10.01, "vendor_name": "Open Source", "volume_backend_name": "backend_name", "extra_specs": [ { "description": "HP 3PAR Fibre Channel driver", "display_name": "HP3PARFCDriver", "namespace": "OS::Cinder::HP3PARFCDriver", "properties": { "hp3par:persona": { "default": "2", "description": "HP 3PAR Persona", "enum": { "1": "Generic", "10": "ONTAP-legacy", "11": "VMware", "12": "OpenVMS", "13": "HPUX", "15": "WindowsServer", "2": "Generic-ALUA", "6": "Generic-legacy", "7": "HPUX-legacy", "8": "AIX-legacy", "9": "EGENERA" }, "title": "persona", "type": "string" }, "hp3par:snap_cpg": { "description": "Overrides the 'hp3par_snap' setting", "title": "snap_cpg", "type": "string" } } }, { "description": "HP LeftHand iSCSI driver", "display_name": "HPLeftHandISCSIDriver", "namespace": "OS::Cinder::HPLeftHandISCSIDriver", "properties": { "hplh:provisioning": { "default": "thin", "description": "Provisioning", "enum": [ "full", "thin" ], "title": "provisioning", "type": "string" }, "hplh:vvs": { "default": "1", "description": "VVS", "title": "vvs", "type": "integer" } } } ] } } ] } --- .../com/woorea/openstack/cinder/Cinder.java | 7 + .../cinder/SchedulerStatsExtension.java | 32 ++++ .../openstack/cinder/model/Capabilities.java | 139 ++++++++++++++++++ .../woorea/openstack/cinder/model/Pool.java | 42 ++++++ .../woorea/openstack/cinder/model/Pools.java | 35 +++++ 5 files changed, 255 insertions(+) create mode 100644 cinder-client/src/main/java/com/woorea/openstack/cinder/SchedulerStatsExtension.java create mode 100644 cinder-model/src/main/java/com/woorea/openstack/cinder/model/Capabilities.java create mode 100644 cinder-model/src/main/java/com/woorea/openstack/cinder/model/Pool.java create mode 100644 cinder-model/src/main/java/com/woorea/openstack/cinder/model/Pools.java diff --git a/cinder-client/src/main/java/com/woorea/openstack/cinder/Cinder.java b/cinder-client/src/main/java/com/woorea/openstack/cinder/Cinder.java index 780e82511..4230e8b12 100644 --- a/cinder-client/src/main/java/com/woorea/openstack/cinder/Cinder.java +++ b/cinder-client/src/main/java/com/woorea/openstack/cinder/Cinder.java @@ -13,12 +13,15 @@ public class Cinder extends OpenStackClient { private final LimitsExtension LIMITS; + private final SchedulerStatsExtension SCHEDULER_STATS; + public Cinder(String endpoint, OpenStackClientConnector connector) { super(endpoint, connector); VOLUMES = new VolumesExtension(this); SNAPSHOTS = new SnapshotsExtension(this); VOLUME_TYPES = new VolumeTypesExtension(this); LIMITS = new LimitsExtension(this); + SCHEDULER_STATS = new SchedulerStatsExtension(this); } public Cinder(String endpoint) { @@ -40,4 +43,8 @@ public final VolumeTypesExtension volumeTypes() { public final LimitsExtension limits() { return LIMITS; } + + public final SchedulerStatsExtension schedulerStats() { + return SCHEDULER_STATS; + } } diff --git a/cinder-client/src/main/java/com/woorea/openstack/cinder/SchedulerStatsExtension.java b/cinder-client/src/main/java/com/woorea/openstack/cinder/SchedulerStatsExtension.java new file mode 100644 index 000000000..bf9d05b87 --- /dev/null +++ b/cinder-client/src/main/java/com/woorea/openstack/cinder/SchedulerStatsExtension.java @@ -0,0 +1,32 @@ +package com.woorea.openstack.cinder; + +import com.woorea.openstack.base.client.HttpMethod; +import com.woorea.openstack.base.client.OpenStackClient; +import com.woorea.openstack.base.client.OpenStackRequest; +import com.woorea.openstack.cinder.model.Pools; + +/** + * Cinder Scheduler Stats Management + * + * @author Ahmed Saba + */ +public class SchedulerStatsExtension { + + private final OpenStackClient CLIENT; + + public SchedulerStatsExtension(OpenStackClient client) { + this.CLIENT = client; + } + + public List list(boolean detail) { + return new List(detail); + } + + public class List extends OpenStackRequest { + + public List(boolean detail) { + super(CLIENT, HttpMethod.GET, (new StringBuilder("/scheduler-stats/get_pools")).append(detail ? "?detail=True":""), null, Pools.class); + } + } + +} diff --git a/cinder-model/src/main/java/com/woorea/openstack/cinder/model/Capabilities.java b/cinder-model/src/main/java/com/woorea/openstack/cinder/model/Capabilities.java new file mode 100644 index 000000000..1f16002a2 --- /dev/null +++ b/cinder-model/src/main/java/com/woorea/openstack/cinder/model/Capabilities.java @@ -0,0 +1,139 @@ +package com.woorea.openstack.cinder.model; + +import java.io.Serializable; +import java.util.List; +import java.util.Map; +import org.codehaus.jackson.annotate.JsonProperty; +import org.codehaus.jackson.map.annotate.JsonRootName; + +/** + * Model for Volume + */ +@JsonRootName("capabilities") +public class Capabilities implements Serializable { + + @JsonProperty("pool_name") + private String poolName; + @JsonProperty("QoS_support") + private boolean qosSupport; + @JsonProperty("allocated_capacity_gb") + private Long allocatedCapacityGb; + @JsonProperty("driver_version") + private String driverVersion; + @JsonProperty("free_capacity_gb") + private Long freeCapacityGb; + @JsonProperty("location_info") + private String locationInfo; + + private String timestamp; + @JsonProperty("volume_backend_name") + private String volumeBackendName; + @JsonProperty("total_capacity_gb") + private Long totalCapacityGb; + @JsonProperty("reserved_percentage") + private Integer reservedPercentage; + @JsonProperty("vendor_name") + private String vendorName; + @JsonProperty("storage_protocol") + private String storageProtocol; + @JsonProperty("extra_specs") + private Map extraSpecs; + + public String getPoolName() { + return poolName; + } + public void setPoolName(String poolName) { + this.poolName = poolName; + } + public boolean isQosSupport() { + return qosSupport; + } + public void setQosSupport(boolean qosSupport) { + this.qosSupport = qosSupport; + } + public Long getAllocatedCapacityGb() { + return allocatedCapacityGb; + } + public void setAllocatedCapacityGb(Long allocatedCapacityGb) { + this.allocatedCapacityGb = allocatedCapacityGb; + } + public String getDriverVersion() { + return driverVersion; + } + public void setDriverVersion(String driverVersion) { + this.driverVersion = driverVersion; + } + public Long getFreeCapacityGb() { + return freeCapacityGb; + } + public void setFreeCapacityGb(Long freeCapacityGb) { + this.freeCapacityGb = freeCapacityGb; + } + public String getLocationInfo() { + return locationInfo; + } + public void setLocationInfo(String locationInfo) { + this.locationInfo = locationInfo; + } + public String getTimestamp() { + return timestamp; + } + public void setTimestamp(String timestamp) { + this.timestamp = timestamp; + } + public String getVolumeBackendName() { + return volumeBackendName; + } + public void setVolumeBackendName(String volumeBackendName) { + this.volumeBackendName = volumeBackendName; + } + public Long getTotalCapacityGb() { + return totalCapacityGb; + } + public void setTotalCapacityGb(Long totalCapacityGb) { + this.totalCapacityGb = totalCapacityGb; + } + public Integer getReservedPercentage() { + return reservedPercentage; + } + public void setReservedPercentage(Integer reservedPercentage) { + this.reservedPercentage = reservedPercentage; + } + public String getVendorName() { + return vendorName; + } + public void setVendorName(String vendorName) { + this.vendorName = vendorName; + } + public String getStorageProtocol() { + return storageProtocol; + } + public void setStorageProtocol(String storageProtocol) { + this.storageProtocol = storageProtocol; + } + public Map getExtraSpecs() { + return extraSpecs; + } + public void setExtraSpecs(Map extraSpecs) { + this.extraSpecs = extraSpecs; + } + + @Override + public String toString() { + return "Capabilities{" + + "poolName='" + poolName + + ", qosSupport='" + qosSupport + + ", allocatedCapacityGb='" + allocatedCapacityGb + + ", driverVersion='" + driverVersion + + ", freeCapacityGb='" + freeCapacityGb + + ", locationInfo='" + locationInfo + + ", timestamp='" + timestamp + + ", volumeBackendName='" + volumeBackendName + + ", totalCapacityGb='" + totalCapacityGb + + ", reservedPercentage='" + reservedPercentage + + ", vendorName='" + vendorName + + ", storageProtocol='" + storageProtocol + + ", extraSpecs='" + extraSpecs + + '}'; + } +} diff --git a/cinder-model/src/main/java/com/woorea/openstack/cinder/model/Pool.java b/cinder-model/src/main/java/com/woorea/openstack/cinder/model/Pool.java new file mode 100644 index 000000000..4ba069fac --- /dev/null +++ b/cinder-model/src/main/java/com/woorea/openstack/cinder/model/Pool.java @@ -0,0 +1,42 @@ +package com.woorea.openstack.cinder.model; + +import java.io.Serializable; +import java.util.List; +import java.util.Map; +import org.codehaus.jackson.annotate.JsonProperty; +import org.codehaus.jackson.map.annotate.JsonRootName; + +/** + * Model for Pool + */ +@JsonRootName("pool") +public class Pool implements Serializable { + + private String name; + + private Capabilities capabilities; + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + + public Capabilities getCapabilities() { + return capabilities; + } + + public void setCapabilities(Capabilities capabilities) { + this.capabilities = capabilities; + } + + @Override + public String toString() { + return "Pool{" + + "name='" + name + + ", capabilities='" + capabilities + + '}'; + } +} diff --git a/cinder-model/src/main/java/com/woorea/openstack/cinder/model/Pools.java b/cinder-model/src/main/java/com/woorea/openstack/cinder/model/Pools.java new file mode 100644 index 000000000..adf5fc24a --- /dev/null +++ b/cinder-model/src/main/java/com/woorea/openstack/cinder/model/Pools.java @@ -0,0 +1,35 @@ +package com.woorea.openstack.cinder.model; + +import java.io.Serializable; +import java.util.Iterator; +import java.util.List; +import org.codehaus.jackson.annotate.JsonProperty; + +/** + * Model for List of pools + * + * @author Ahmed Saba + */ +public class Pools implements Iterable, Serializable { + + @JsonProperty("pools") + private List list; + + public List getList() { + return list; + } + + public void setList(List list) { + this.list = list; + } + + @Override + public Iterator iterator() { + return list.iterator(); + } + + @Override + public String toString() { + return "Pools [list=" + list + "]"; + } +} From 075723fb0bca8d845beb4dec02a3c78f75fe9781 Mon Sep 17 00:00:00 2001 From: jannle Date: Mon, 11 May 2015 14:58:47 -0400 Subject: [PATCH 101/144] Add Service and Hypervisor class support to Nova --- .../java/com/woorea/openstack/nova/Nova.java | 24 +++++ .../nova/api/HypervisorsResource.java | 36 +++++++ .../openstack/nova/api/ServicesResource.java | 60 ++++++++++++ .../openstack/nova/model/Hypervisor.java | 37 ++++++++ .../openstack/nova/model/Hypervisors.java | 33 +++++++ .../woorea/openstack/nova/model/Service.java | 95 +++++++++++++++++++ .../woorea/openstack/nova/model/Services.java | 33 +++++++ 7 files changed, 318 insertions(+) create mode 100644 nova-client/src/main/java/com/woorea/openstack/nova/api/HypervisorsResource.java create mode 100644 nova-client/src/main/java/com/woorea/openstack/nova/api/ServicesResource.java create mode 100644 nova-model/src/main/java/com/woorea/openstack/nova/model/Hypervisor.java create mode 100644 nova-model/src/main/java/com/woorea/openstack/nova/model/Hypervisors.java create mode 100644 nova-model/src/main/java/com/woorea/openstack/nova/model/Service.java create mode 100644 nova-model/src/main/java/com/woorea/openstack/nova/model/Services.java diff --git a/nova-client/src/main/java/com/woorea/openstack/nova/Nova.java b/nova-client/src/main/java/com/woorea/openstack/nova/Nova.java index f81de7d44..fcce0de9c 100644 --- a/nova-client/src/main/java/com/woorea/openstack/nova/Nova.java +++ b/nova-client/src/main/java/com/woorea/openstack/nova/Nova.java @@ -8,6 +8,8 @@ import com.woorea.openstack.nova.api.ImagesResource; import com.woorea.openstack.nova.api.QuotaSetsResource; import com.woorea.openstack.nova.api.ServersResource; +import com.woorea.openstack.nova.api.ServicesResource; +import com.woorea.openstack.nova.api.HypervisorsResource; import com.woorea.openstack.nova.api.extensions.AggregatesExtension; import com.woorea.openstack.nova.api.extensions.FloatingIpsExtension; import com.woorea.openstack.nova.api.extensions.KeyPairsExtension; @@ -15,6 +17,7 @@ import com.woorea.openstack.nova.api.extensions.SnapshotsExtension; import com.woorea.openstack.nova.api.extensions.VolumesExtension; import com.woorea.openstack.nova.api.extensions.HostsExtension; +import com.woorea.openstack.nova.api.extensions.ServerGroupsExtension; public class Nova extends OpenStackClient { @@ -42,6 +45,12 @@ public class Nova extends OpenStackClient { private final HostsExtension HOSTS; + private final ServerGroupsExtension SERVER_GROUPS; + + private final ServicesResource SERVICES; + + private final HypervisorsResource HYPERVISORS; + public Nova(String endpoint, OpenStackClientConnector connector) { super(endpoint, connector); EXTENSIONS = new ExtensionsResource(this); @@ -56,6 +65,9 @@ public Nova(String endpoint, OpenStackClientConnector connector) { AGGREGATES = new AggregatesExtension(this); QUOTA_SETS = new QuotaSetsResource(this); HOSTS = new HostsExtension(this); + SERVER_GROUPS = new ServerGroupsExtension(this); + SERVICES = new ServicesResource(this); + HYPERVISORS = new HypervisorsResource(this); } public Nova(String endpoint) { @@ -110,4 +122,16 @@ public HostsExtension hosts() { return HOSTS; } + public ServerGroupsExtension serverGroups() { + return SERVER_GROUPS; + } + + public ServicesResource services() { + return SERVICES; + } + + public HypervisorsResource hypervisors() { + return HYPERVISORS; + } + } diff --git a/nova-client/src/main/java/com/woorea/openstack/nova/api/HypervisorsResource.java b/nova-client/src/main/java/com/woorea/openstack/nova/api/HypervisorsResource.java new file mode 100644 index 000000000..fe09d0e1d --- /dev/null +++ b/nova-client/src/main/java/com/woorea/openstack/nova/api/HypervisorsResource.java @@ -0,0 +1,36 @@ +package com.woorea.openstack.nova.api; + +import java.util.HashMap; + +import com.woorea.openstack.base.client.Entity; +import com.woorea.openstack.base.client.HttpMethod; +import com.woorea.openstack.base.client.OpenStackClient; +import com.woorea.openstack.base.client.OpenStackRequest; +import com.woorea.openstack.nova.model.Hypervisor; +import com.woorea.openstack.nova.model.Hypervisors; + +/** + * Model for HypervisorsResource + * + */ + +public class HypervisorsResource { + + private final OpenStackClient CLIENT; + + public HypervisorsResource(OpenStackClient client) { + this.CLIENT = client; + } + + public List list() { + return new List(); + } + + public class List extends OpenStackRequest { + + public List() { + super(CLIENT, HttpMethod.GET, "/os-hypervisors", null, Hypervisors.class); + } + } + +} diff --git a/nova-client/src/main/java/com/woorea/openstack/nova/api/ServicesResource.java b/nova-client/src/main/java/com/woorea/openstack/nova/api/ServicesResource.java new file mode 100644 index 000000000..c320f4a04 --- /dev/null +++ b/nova-client/src/main/java/com/woorea/openstack/nova/api/ServicesResource.java @@ -0,0 +1,60 @@ +package com.woorea.openstack.nova.api; + +import java.util.HashMap; + +import com.woorea.openstack.base.client.Entity; +import com.woorea.openstack.base.client.HttpMethod; +import com.woorea.openstack.base.client.OpenStackClient; +import com.woorea.openstack.base.client.OpenStackRequest; +import com.woorea.openstack.nova.model.Service; +import com.woorea.openstack.nova.model.Services; + +/** + * Model for ServicesResource + * + */ + +public class ServicesResource { + + private final OpenStackClient CLIENT; + + public ServicesResource(OpenStackClient client) { + this.CLIENT = client; + } + + public List list() { + return new List(); + } + + public Enable enable(String host, String binary) { + return new Enable(host, binary); + } + + public Disable disable(String host, String binary) { + return new Disable(host, binary); + } + + public class List extends OpenStackRequest { + + public List() { + super(CLIENT, HttpMethod.GET, "/os-services", null, Services.class); + } + } + + public class Enable extends OpenStackRequest { + + public Enable(final String host, final String binary) { + super(CLIENT, HttpMethod.PUT, "/os-services/enable", + Entity.json(new HashMap() {{ put("host", host); put("binary", binary); }}), Void.class); + } + } + + public class Disable extends OpenStackRequest { + + public Disable(final String host, final String binary) { + super(CLIENT, HttpMethod.PUT, "/os-services/disable", + Entity.json(new HashMap() {{ put("host", host); put("binary", binary); }}), Void.class); + } + } + +} diff --git a/nova-model/src/main/java/com/woorea/openstack/nova/model/Hypervisor.java b/nova-model/src/main/java/com/woorea/openstack/nova/model/Hypervisor.java new file mode 100644 index 000000000..a9e4e7a66 --- /dev/null +++ b/nova-model/src/main/java/com/woorea/openstack/nova/model/Hypervisor.java @@ -0,0 +1,37 @@ +package com.woorea.openstack.nova.model; + +import java.io.Serializable; +import org.codehaus.jackson.annotate.JsonProperty; +import org.codehaus.jackson.map.annotate.JsonRootName; + +/** + * Model for Hypervisor + * + */ +@JsonRootName("hypervisor") +public class Hypervisor implements Serializable { + + private String id; + private String hypervisor_hostname; + + public String getId() { + return id; + } + + public void setHypervisor_hostname(String hypervisor_hostname) { + this.hypervisor_hostname = hypervisor_hostname; + } + + public String getHypervisor_hostname() { + return hypervisor_hostname; + } + + @Override + public String toString() { + return "Hypervisor {" + + "hypervisor_hostname='" + hypervisor_hostname + + ", id='" + id + + '}'; + } + +} diff --git a/nova-model/src/main/java/com/woorea/openstack/nova/model/Hypervisors.java b/nova-model/src/main/java/com/woorea/openstack/nova/model/Hypervisors.java new file mode 100644 index 000000000..76d89d9b6 --- /dev/null +++ b/nova-model/src/main/java/com/woorea/openstack/nova/model/Hypervisors.java @@ -0,0 +1,33 @@ +package com.woorea.openstack.nova.model; + +import java.util.Iterator; +import java.util.List; +import org.codehaus.jackson.annotate.JsonProperty; + +/** + * Model for List of Hypervisors + * + */ +public class Hypervisors implements Iterable { + + @JsonProperty("hypervisors") + private List list; + + public List getList() { + return list; + } + + public void setList(List list) { + this.list = list; + } + + @Override + public Iterator iterator() { + return list.iterator(); + } + + @Override + public String toString() { + return "Hypervisors [list=" + list + "]"; + } +} diff --git a/nova-model/src/main/java/com/woorea/openstack/nova/model/Service.java b/nova-model/src/main/java/com/woorea/openstack/nova/model/Service.java new file mode 100644 index 000000000..a10df7d6d --- /dev/null +++ b/nova-model/src/main/java/com/woorea/openstack/nova/model/Service.java @@ -0,0 +1,95 @@ +package com.woorea.openstack.nova.model; + +import java.io.Serializable; +import org.codehaus.jackson.annotate.JsonProperty; +import org.codehaus.jackson.map.annotate.JsonRootName; + +/** + * Model for Service + * + */ +@JsonRootName("service") +public class Service implements Serializable { + + private String status; + private String binary; + private String zone; + private String state; + private String host; + + @JsonProperty("updated_at") + private String updatedAt; + + @JsonProperty("disabled_reason") + private String disabledReason; + + public String getStatus() { + return status; + } + + public void setStatus(String status) { + this.status = status; + } + + public String getBinary() { + return binary; + } + + public void setBinary(String binary) { + this.binary = binary; + } + + public String getZone() { + return zone; + } + + public void setZone(String zone) { + this.zone = zone; + } + + public String getState() { + return state; + } + + public void setState(String state) { + this.state = state; + } + + public String getHost() { + return host; + } + + public void setHost(String host) { + this.host = host; + } + + public String getUpdatedAt() { + return updatedAt; + } + + public void setUpdatedAt(String updatedAt) { + this.updatedAt = updatedAt; + } + + public String getDisabledReason() { + return disabledReason; + } + + public void setDisabledReason(String disabledReason) { + this.disabledReason = disabledReason; + } + + @Override + public String toString() { + return "Service {" + + "host='" + host + + ", state='" + state + + ", status='" + status + + ", zone='" + zone + + ", binary='" + binary + + ", updated_at='" + updatedAt + + ", disabled_reason='" + disabledReason + + '}'; + } + +} diff --git a/nova-model/src/main/java/com/woorea/openstack/nova/model/Services.java b/nova-model/src/main/java/com/woorea/openstack/nova/model/Services.java new file mode 100644 index 000000000..0443dcb5f --- /dev/null +++ b/nova-model/src/main/java/com/woorea/openstack/nova/model/Services.java @@ -0,0 +1,33 @@ +package com.woorea.openstack.nova.model; + +import java.util.Iterator; +import java.util.List; +import org.codehaus.jackson.annotate.JsonProperty; + +/** + * Model for List of Services + * + */ +public class Services implements Iterable { + + @JsonProperty("services") + private List list; + + public List getList() { + return list; + } + + public void setList(List list) { + this.list = list; + } + + @Override + public Iterator iterator() { + return list.iterator(); + } + + @Override + public String toString() { + return "Services [list=" + list + "]"; + } +} From 49e476301a2d9a974d5e5f859c9e2051ae134c25 Mon Sep 17 00:00:00 2001 From: jannle Date: Mon, 11 May 2015 15:03:59 -0400 Subject: [PATCH 102/144] Remove the server group part in Nova.java --- .../src/main/java/com/woorea/openstack/nova/Nova.java | 7 ------- 1 file changed, 7 deletions(-) diff --git a/nova-client/src/main/java/com/woorea/openstack/nova/Nova.java b/nova-client/src/main/java/com/woorea/openstack/nova/Nova.java index fcce0de9c..e82739da9 100644 --- a/nova-client/src/main/java/com/woorea/openstack/nova/Nova.java +++ b/nova-client/src/main/java/com/woorea/openstack/nova/Nova.java @@ -17,7 +17,6 @@ import com.woorea.openstack.nova.api.extensions.SnapshotsExtension; import com.woorea.openstack.nova.api.extensions.VolumesExtension; import com.woorea.openstack.nova.api.extensions.HostsExtension; -import com.woorea.openstack.nova.api.extensions.ServerGroupsExtension; public class Nova extends OpenStackClient { @@ -45,8 +44,6 @@ public class Nova extends OpenStackClient { private final HostsExtension HOSTS; - private final ServerGroupsExtension SERVER_GROUPS; - private final ServicesResource SERVICES; private final HypervisorsResource HYPERVISORS; @@ -122,10 +119,6 @@ public HostsExtension hosts() { return HOSTS; } - public ServerGroupsExtension serverGroups() { - return SERVER_GROUPS; - } - public ServicesResource services() { return SERVICES; } From 4afbe4853c28249b8187c2c7e9fd9e8724d6748b Mon Sep 17 00:00:00 2001 From: jannle Date: Mon, 11 May 2015 15:06:47 -0400 Subject: [PATCH 103/144] Remove the server group part in Nova.java --- nova-client/src/main/java/com/woorea/openstack/nova/Nova.java | 1 - 1 file changed, 1 deletion(-) diff --git a/nova-client/src/main/java/com/woorea/openstack/nova/Nova.java b/nova-client/src/main/java/com/woorea/openstack/nova/Nova.java index e82739da9..0a0988356 100644 --- a/nova-client/src/main/java/com/woorea/openstack/nova/Nova.java +++ b/nova-client/src/main/java/com/woorea/openstack/nova/Nova.java @@ -62,7 +62,6 @@ public Nova(String endpoint, OpenStackClientConnector connector) { AGGREGATES = new AggregatesExtension(this); QUOTA_SETS = new QuotaSetsResource(this); HOSTS = new HostsExtension(this); - SERVER_GROUPS = new ServerGroupsExtension(this); SERVICES = new ServicesResource(this); HYPERVISORS = new HypervisorsResource(this); } From 327de8f87a8869a8abc6f429fa9f88470f750d3b Mon Sep 17 00:00:00 2001 From: Jaikiran Pai Date: Mon, 13 Jul 2015 18:05:19 +0530 Subject: [PATCH 104/144] Don't expect a response body for resize and confirm-resize operations on a server --- .../com/woorea/openstack/nova/api/ServersResource.java | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/nova-client/src/main/java/com/woorea/openstack/nova/api/ServersResource.java b/nova-client/src/main/java/com/woorea/openstack/nova/api/ServersResource.java index ca48b6fc4..2abf392c0 100644 --- a/nova-client/src/main/java/com/woorea/openstack/nova/api/ServersResource.java +++ b/nova-client/src/main/java/com/woorea/openstack/nova/api/ServersResource.java @@ -224,12 +224,12 @@ public RebuildAction rebuild(String serverId, Rebuild rebuild) { return new RebuildAction(serverId, rebuild); } - public class ResizeAction extends Action { + public class ResizeAction extends Action { private Resize action; public ResizeAction(String id, Resize action) { - super(id, Entity.json(action), Server.class); + super(id, Entity.json(action), Void.class); } } @@ -241,10 +241,10 @@ public ResizeAction resize(String serverId, String flavorId, String diskConfig) return new ResizeAction(serverId, resize); } - public class ConfirmResizeAction extends Action { + public class ConfirmResizeAction extends Action { public ConfirmResizeAction(String id) { - super(id, Entity.json(new ConfirmResize()), Server.class); + super(id, Entity.json(new ConfirmResize()), Void.class); } } From 23922741ab80dc665f83362fbc7b14e8af0240a3 Mon Sep 17 00:00:00 2001 From: Dominik Holler Date: Mon, 9 Jan 2017 22:02:33 +0100 Subject: [PATCH 105/144] RESTEasyConnector: Isolate the creation of ClientExecutor The creation of the ClientExecutor is isolated in a protected method, to allow subclasses to overwrite. This enables the usage of a customized executor for the request. The customized executor is needed to set parameters, like timeouts, on the creation of the executor. --- .../com/woorea/openstack/connector/RESTEasyConnector.java | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/openstack-client-connectors/resteasy-connector/src/main/java/com/woorea/openstack/connector/RESTEasyConnector.java b/openstack-client-connectors/resteasy-connector/src/main/java/com/woorea/openstack/connector/RESTEasyConnector.java index b2ec41570..cc2d12969 100644 --- a/openstack-client-connectors/resteasy-connector/src/main/java/com/woorea/openstack/connector/RESTEasyConnector.java +++ b/openstack-client-connectors/resteasy-connector/src/main/java/com/woorea/openstack/connector/RESTEasyConnector.java @@ -14,6 +14,7 @@ import org.codehaus.jackson.map.SerializationConfig; import org.codehaus.jackson.map.annotate.JsonRootName; import org.codehaus.jackson.map.annotate.JsonSerialize.Inclusion; +import org.jboss.resteasy.client.ClientExecutor; import org.jboss.resteasy.client.ClientRequest; import org.jboss.resteasy.client.ClientResponse; import org.jboss.resteasy.plugins.providers.InputStreamProvider; @@ -79,9 +80,13 @@ public ObjectMapper getContext(Class type) { providerFactory = new OpenStackProviderFactory(); } + protected ClientExecutor createClientExecutor() { + return ClientRequest.getDefaultExecutor(); + } + public OpenStackResponse request(OpenStackRequest request) { ClientRequest client = new ClientRequest(UriBuilder.fromUri(request.endpoint() + "/" + request.path()), - ClientRequest.getDefaultExecutor(), providerFactory); + createClientExecutor(), providerFactory); for(Map.Entry > entry : request.queryParams().entrySet()) { for (Object o : entry.getValue()) { From 97539b2afc78c0dacae08130c5551fa88184ce0d Mon Sep 17 00:00:00 2001 From: Dominik Holler Date: Fri, 27 Jan 2017 22:44:18 +0100 Subject: [PATCH 106/144] Fix javadoc Correct some @param to match the names of the parameters. --- .../main/java/com/woorea/openstack/glance/model/Image.java | 2 +- .../nova/api/extensions/SecurityGroupsExtension.java | 2 +- .../openstack/nova/model/SecurityGroupRuleForCreate.java | 4 ++-- .../src/main/java/com/woorea/openstack/console/Console.java | 3 ++- 4 files changed, 6 insertions(+), 5 deletions(-) diff --git a/glance-model/src/main/java/com/woorea/openstack/glance/model/Image.java b/glance-model/src/main/java/com/woorea/openstack/glance/model/Image.java index 4bd49e0e8..5d1167a28 100644 --- a/glance-model/src/main/java/com/woorea/openstack/glance/model/Image.java +++ b/glance-model/src/main/java/com/woorea/openstack/glance/model/Image.java @@ -154,7 +154,7 @@ public Long getVirtualSize() { } /** - * @param size the virtual size to set + * @param virtualSize the virtual size to set */ public void setVirtualSize(Long virtualSize) { this.virtualSize = virtualSize; diff --git a/nova-client/src/main/java/com/woorea/openstack/nova/api/extensions/SecurityGroupsExtension.java b/nova-client/src/main/java/com/woorea/openstack/nova/api/extensions/SecurityGroupsExtension.java index 5a80a10aa..58dfa4f8d 100644 --- a/nova-client/src/main/java/com/woorea/openstack/nova/api/extensions/SecurityGroupsExtension.java +++ b/nova-client/src/main/java/com/woorea/openstack/nova/api/extensions/SecurityGroupsExtension.java @@ -145,7 +145,7 @@ public CreateRule createSecurityGroupRule( * @param ipProtocol * @param fromPort * @param toPort - * @param cidr + * @param sourceGroupId * @return * @deprecated Use {@link #createSecurityGroupRule(String, String, String, Integer, Integer)} */ diff --git a/nova-model/src/main/java/com/woorea/openstack/nova/model/SecurityGroupRuleForCreate.java b/nova-model/src/main/java/com/woorea/openstack/nova/model/SecurityGroupRuleForCreate.java index 2f58da00c..c6a76c22c 100644 --- a/nova-model/src/main/java/com/woorea/openstack/nova/model/SecurityGroupRuleForCreate.java +++ b/nova-model/src/main/java/com/woorea/openstack/nova/model/SecurityGroupRuleForCreate.java @@ -51,11 +51,11 @@ public SecurityGroupRuleForCreate(Integer parentSecurityGroupId, String ipProtoc } /** * - * @param parentSecurityGroupId + * @param parentGroupId * @param ipProtocol * @param fromPort * @param toPort - * @param cidr + * @param sourceGroupId * @deprecated Ids in some installs have shown to use strings .Use {@link #SecurityGroupRuleForCreate(String, String, String, Integer, Integer)} */ @Deprecated diff --git a/openstack-console/src/main/java/com/woorea/openstack/console/Console.java b/openstack-console/src/main/java/com/woorea/openstack/console/Console.java index 13b7fbfde..0f7ad8446 100644 --- a/openstack-console/src/main/java/com/woorea/openstack/console/Console.java +++ b/openstack-console/src/main/java/com/woorea/openstack/console/Console.java @@ -87,7 +87,8 @@ public String getProperty(String name) { } /** - * @return the properties + * @param name + * @param value */ public void setProperty(String name, Object value) { properties.put(name, value); From 672c4120bb60ef657a98c751b4c55c88ad3632dc Mon Sep 17 00:00:00 2001 From: Fred Rolland Date: Wed, 13 Sep 2017 12:26:07 +0300 Subject: [PATCH 107/144] Cinder: Add support for os-terminate_connection --- .../openstack/cinder/VolumesExtension.java | 15 ++++++++++ .../cinder/model/BaseConnection.java | 28 +++++++++++++++++++ .../cinder/model/ConnectionForInitialize.java | 25 ++--------------- .../cinder/model/ConnectionForTerminate.java | 20 +++++++++++++ 4 files changed, 65 insertions(+), 23 deletions(-) create mode 100644 cinder-model/src/main/java/com/woorea/openstack/cinder/model/BaseConnection.java create mode 100644 cinder-model/src/main/java/com/woorea/openstack/cinder/model/ConnectionForTerminate.java diff --git a/cinder-client/src/main/java/com/woorea/openstack/cinder/VolumesExtension.java b/cinder-client/src/main/java/com/woorea/openstack/cinder/VolumesExtension.java index 8254ca133..39bcc0e4d 100644 --- a/cinder-client/src/main/java/com/woorea/openstack/cinder/VolumesExtension.java +++ b/cinder-client/src/main/java/com/woorea/openstack/cinder/VolumesExtension.java @@ -5,6 +5,7 @@ import com.woorea.openstack.base.client.OpenStackClient; import com.woorea.openstack.base.client.OpenStackRequest; import com.woorea.openstack.cinder.model.ConnectionForInitialize; +import com.woorea.openstack.cinder.model.ConnectionForTerminate; import com.woorea.openstack.cinder.model.ConnectionInfo; import com.woorea.openstack.cinder.model.Metadata; import com.woorea.openstack.cinder.model.Volume; @@ -60,6 +61,10 @@ public InitializeConnection initializeConnection(String id, ConnectionForInitial return new InitializeConnection(id, connectionForInitialize); } + public TerminateConnection terminateConnection(String id, ConnectionForTerminate connectionForTerminate) { + return new TerminateConnection(id, connectionForTerminate); + } + public class List extends OpenStackRequest { public List(boolean detail) { @@ -146,4 +151,14 @@ public InitializeConnection(String id, ConnectionForInitialize connectionForInit } + public class TerminateConnection extends OpenStackRequest { + + public TerminateConnection(String id, ConnectionForTerminate connectionForTerminate) { + super(CLIENT, HttpMethod.POST, new StringBuilder("/volumes/") + .append(id).append("/action").toString(), + Entity.json(connectionForTerminate), Void.class); + } + + } + } diff --git a/cinder-model/src/main/java/com/woorea/openstack/cinder/model/BaseConnection.java b/cinder-model/src/main/java/com/woorea/openstack/cinder/model/BaseConnection.java new file mode 100644 index 000000000..cca3514f2 --- /dev/null +++ b/cinder-model/src/main/java/com/woorea/openstack/cinder/model/BaseConnection.java @@ -0,0 +1,28 @@ +package com.woorea.openstack.cinder.model; + +import java.io.Serializable; +import java.util.HashMap; +import java.util.Map; + +import org.codehaus.jackson.annotate.JsonProperty; + +public abstract class BaseConnection implements Serializable { + @JsonProperty("connector") + private Map connector = new HashMap(); + + /** + * @return the connector + */ + public Map getConnector() { + return connector; + } + + /** + * @param connector + * the connector to set + */ + public void setConnector(Map connector) { + this.connector = connector; + } + +} diff --git a/cinder-model/src/main/java/com/woorea/openstack/cinder/model/ConnectionForInitialize.java b/cinder-model/src/main/java/com/woorea/openstack/cinder/model/ConnectionForInitialize.java index f8163c336..76ff7b784 100644 --- a/cinder-model/src/main/java/com/woorea/openstack/cinder/model/ConnectionForInitialize.java +++ b/cinder-model/src/main/java/com/woorea/openstack/cinder/model/ConnectionForInitialize.java @@ -1,32 +1,11 @@ package com.woorea.openstack.cinder.model; -import org.codehaus.jackson.annotate.JsonProperty; import org.codehaus.jackson.map.annotate.JsonRootName; import java.io.Serializable; -import java.util.HashMap; -import java.util.Map; @JsonRootName("os-initialize_connection") -public class ConnectionForInitialize implements Serializable { - - @JsonProperty("connector") - private Map connector = new HashMap(); - - /** - * @return the connector - */ - public Map getConnector() { - return connector; - } - - /** - * @param connector - * the connector to set - */ - public void setConnector(Map connector) { - this.connector = connector; - } +public class ConnectionForInitialize extends BaseConnection implements Serializable { /* * (non-Javadoc) @@ -35,7 +14,7 @@ public void setConnector(Map connector) { */ @Override public String toString() { - return "ConnectionForInitialize [connector=" + connector + "]"; + return "ConnectionForInitialize [connector=" + getConnector() + "]"; } } diff --git a/cinder-model/src/main/java/com/woorea/openstack/cinder/model/ConnectionForTerminate.java b/cinder-model/src/main/java/com/woorea/openstack/cinder/model/ConnectionForTerminate.java new file mode 100644 index 000000000..0777ab472 --- /dev/null +++ b/cinder-model/src/main/java/com/woorea/openstack/cinder/model/ConnectionForTerminate.java @@ -0,0 +1,20 @@ +package com.woorea.openstack.cinder.model; + +import org.codehaus.jackson.map.annotate.JsonRootName; + +import java.io.Serializable; + +@JsonRootName("os-terminate_connection") +public class ConnectionForTerminate extends BaseConnection implements Serializable { + + /* + * (non-Javadoc) + * + * @see java.lang.Object#toString() + */ + @Override + public String toString() { + return "ConnectionForInitialize [connector=" + getConnector() + "]"; + } + +} From d7cbcfd0cf58723de2cf953b15b0949072366d90 Mon Sep 17 00:00:00 2001 From: Dominik Holler Date: Mon, 16 Apr 2018 17:52:59 +0200 Subject: [PATCH 108/144] neutron: Support parameter mtu Signed-off-by: Dominik Holler --- .../openstack/quantum/model/Network.java | 23 ++++++++++++++++--- 1 file changed, 20 insertions(+), 3 deletions(-) diff --git a/quantum-model/src/main/java/com/woorea/openstack/quantum/model/Network.java b/quantum-model/src/main/java/com/woorea/openstack/quantum/model/Network.java index 4490911e2..853858fc5 100644 --- a/quantum-model/src/main/java/com/woorea/openstack/quantum/model/Network.java +++ b/quantum-model/src/main/java/com/woorea/openstack/quantum/model/Network.java @@ -41,6 +41,8 @@ public class Network implements Serializable { private String shared; + private Integer mtu; + /** * @return the status */ @@ -259,6 +261,21 @@ public void setProviderSegmentationId(Integer providerSegmentationId) { this.providerSegmentationId = providerSegmentationId; } + /** + * @return the MTU + */ + public Integer getMtu() { + return mtu; + } + + /** + * @param mtu + * the MTU to set + */ + public void setMtu(Integer mtu) { + this.mtu = mtu; + } + /* * (non-Javadoc) * @@ -268,8 +285,8 @@ public void setProviderSegmentationId(Integer providerSegmentationId) { public String toString() { return "Network [id=" + id + ", name=" + name + ", subnets=" + subnets + ", status=" + status + ", admin_state_up=" + adminStateUp + ", tenant_id=" + - tenantId + ", shared=" + shared + ", provider:physical_network=" + providerPhysicalNetwork + - ", provider:network_type=" + providerNetworkType + ", router:external=" + routerExternal + - ", provider:segmentation_id=" + providerSegmentationId + "]"; + tenantId + ", shared=" + shared + ", mtu=" + mtu + ", provider:physical_network=" + + providerPhysicalNetwork + ", provider:network_type=" + providerNetworkType + ", router:external=" + + routerExternal + ", provider:segmentation_id=" + providerSegmentationId + "]"; } } From cb088daf1db2eb395f692476c172ff2994e464cf Mon Sep 17 00:00:00 2001 From: Eduardo Garcia Cebollero Date: Thu, 4 Dec 2014 16:25:19 +0100 Subject: [PATCH 109/144] Ignore new fields (as audit_ids) on the token model to avoid problems on Juno (cherry picked from commit 0753168a04d74b29f626817bb08a3a3810090637) --- .../main/java/com/woorea/openstack/keystone/model/Token.java | 3 +++ 1 file changed, 3 insertions(+) diff --git a/keystone-model/src/main/java/com/woorea/openstack/keystone/model/Token.java b/keystone-model/src/main/java/com/woorea/openstack/keystone/model/Token.java index 92d34ee61..0f0b6ccb2 100644 --- a/keystone-model/src/main/java/com/woorea/openstack/keystone/model/Token.java +++ b/keystone-model/src/main/java/com/woorea/openstack/keystone/model/Token.java @@ -1,7 +1,10 @@ package com.woorea.openstack.keystone.model; +import org.codehaus.jackson.annotate.JsonIgnoreProperties; + import java.util.Calendar; +@JsonIgnoreProperties(ignoreUnknown=true) public final class Token { private String id; From 8a475b413ca509f0f4c4c9f082133dddc675efc7 Mon Sep 17 00:00:00 2001 From: Dominik Holler Date: Wed, 18 Jul 2018 18:05:15 +0200 Subject: [PATCH 110/144] Revert "hide password in payload log" This reverts commit df6faf007e4e45b9a9cc2511e4e2cbc3f93da371. Even the removed code creates a nice logging, it introduces an additional license, which adds additional effort to the release process. --- .../openstack/connector/JerseyConnector.java | 6 +- .../connector/JerseyLoggingFilter.java | 279 ------------------ .../openstack/connector/JaxRs20Connector.java | 5 +- pom.xml | 14 - 4 files changed, 5 insertions(+), 299 deletions(-) delete mode 100644 openstack-client-connectors/jersey-connector/src/main/java/com/woorea/openstack/connector/JerseyLoggingFilter.java diff --git a/openstack-client-connectors/jersey-connector/src/main/java/com/woorea/openstack/connector/JerseyConnector.java b/openstack-client-connectors/jersey-connector/src/main/java/com/woorea/openstack/connector/JerseyConnector.java index afd7a2b65..c8ed12387 100644 --- a/openstack-client-connectors/jersey-connector/src/main/java/com/woorea/openstack/connector/JerseyConnector.java +++ b/openstack-client-connectors/jersey-connector/src/main/java/com/woorea/openstack/connector/JerseyConnector.java @@ -2,7 +2,6 @@ import java.util.List; import java.util.Map; -import java.util.logging.Logger; import javax.ws.rs.core.MultivaluedMap; import javax.ws.rs.ext.ContextResolver; @@ -21,6 +20,7 @@ import com.sun.jersey.api.client.WebResource; import com.sun.jersey.api.client.config.ClientConfig; import com.sun.jersey.api.client.config.DefaultClientConfig; +import com.sun.jersey.api.client.filter.LoggingFilter; import com.sun.jersey.client.impl.ClientRequestImpl; import com.sun.jersey.core.header.OutBoundHeaders; import com.woorea.openstack.base.client.OpenStackClientConnector; @@ -31,8 +31,6 @@ public class JerseyConnector implements OpenStackClientConnector { protected Client client = null; - protected boolean logPassword; - private JerseyLoggingFilter logger = new JerseyLoggingFilter(Logger.getLogger("os")); public JerseyConnector() { ClientConfig clientConfig = new DefaultClientConfig(); @@ -49,7 +47,7 @@ public OpenStackResponse request(OpenStackRequest request) { target = target.queryParam(entry.getKey(), String.valueOf(o)); } } - target.addFilter(logger); + target.addFilter(new LoggingFilter()); MultivaluedMap headers = new OutBoundHeaders(); for(Map.Entry> h : request.headers().entrySet()) { for(Object v : h.getValue()) { diff --git a/openstack-client-connectors/jersey-connector/src/main/java/com/woorea/openstack/connector/JerseyLoggingFilter.java b/openstack-client-connectors/jersey-connector/src/main/java/com/woorea/openstack/connector/JerseyLoggingFilter.java deleted file mode 100644 index c1877c3df..000000000 --- a/openstack-client-connectors/jersey-connector/src/main/java/com/woorea/openstack/connector/JerseyLoggingFilter.java +++ /dev/null @@ -1,279 +0,0 @@ -/* - * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER. - * - * Copyright (c) 2010-2011 Oracle and/or its affiliates. All rights reserved. - * - * The contents of this file are subject to the terms of either the GNU - * General Public License Version 2 only ("GPL") or the Common Development - * and Distribution License("CDDL") (collectively, the "License"). You - * may not use this file except in compliance with the License. You can - * obtain a copy of the License at - * http://glassfish.java.net/public/CDDL+GPL_1_1.html - * or packager/legal/LICENSE.txt. See the License for the specific - * language governing permissions and limitations under the License. - * - * When distributing the software, include this License Header Notice in each - * file and include the License file at packager/legal/LICENSE.txt. - * - * GPL Classpath Exception: - * Oracle designates this particular file as subject to the "Classpath" - * exception as provided by Oracle in the GPL Version 2 section of the License - * file that accompanied this code. - * - * Modifications: - * If applicable, add the following below the License Header, with the fields - * enclosed by brackets [] replaced by your own identifying information: - * "Portions Copyright [year] [name of copyright owner]" - * - * Contributor(s): - * If you wish your version of this file to be governed by only the CDDL or - * only the GPL Version 2, indicate your decision by adding "[Contributor] - * elects to include this software in this distribution under the [CDDL or GPL - * Version 2] license." If you don't indicate a single choice of license, a - * recipient has the option to distribute your version of this file under - * either the CDDL, the GPL Version 2 or to extend the choice of license to - * its licensees as provided above. However, if you add GPL Version 2 code - * and therefore, elected the GPL Version 2 license, then the option applies - * only if the new code is made subject to such option by the copyright - * holder. - */ -package com.woorea.openstack.connector; - -import java.io.ByteArrayInputStream; -import java.io.ByteArrayOutputStream; -import java.io.IOException; -import java.io.InputStream; -import java.io.OutputStream; -import java.io.PrintStream; -import java.util.List; -import java.util.Map; -import java.util.logging.Logger; - -import javax.ws.rs.core.MultivaluedMap; - -import com.sun.jersey.api.client.AbstractClientRequestAdapter; -import com.sun.jersey.api.client.ClientHandlerException; -import com.sun.jersey.api.client.ClientRequest; -import com.sun.jersey.api.client.ClientRequestAdapter; -import com.sun.jersey.api.client.ClientResponse; -import com.sun.jersey.api.client.filter.ClientFilter; -import com.sun.jersey.api.client.filter.LoggingFilter; -import com.sun.jersey.core.util.ReaderWriter; - -/** - * A logging filter. - * - */ -public class JerseyLoggingFilter extends ClientFilter { - - private static final Logger LOGGER = Logger.getLogger(LoggingFilter.class.getName()); - - private static final String NOTIFICATION_PREFIX = "* "; - - private static final String REQUEST_PREFIX = "> "; - - private static final String RESPONSE_PREFIX = "< "; - - private static final String PASSWORD_PATTERN = "\"password\".*:.*\"(.*)\""; - - private final class Adapter extends AbstractClientRequestAdapter { - private final StringBuilder b; - - Adapter(ClientRequestAdapter cra, StringBuilder b) { - super(cra); - this.b = b; - } - - public OutputStream adapt(ClientRequest request, OutputStream out) throws IOException { - return new LoggingOutputStream(getAdapter().adapt(request, out), b); - } - - } - - private final class LoggingOutputStream extends OutputStream { - private final OutputStream out; - - private final ByteArrayOutputStream baos = new ByteArrayOutputStream(); - - private final StringBuilder b; - - LoggingOutputStream(OutputStream out, StringBuilder b) { - this.out = out; - this.b = b; - } - - @Override - public void write(byte[] b) throws IOException { - baos.write(b); - out.write(b); - } - - @Override - public void write(byte[] b, int off, int len) throws IOException { - baos.write(b, off, len); - out.write(b, off, len); - } - - @Override - public void write(int b) throws IOException { - baos.write(b); - out.write(b); - } - - @Override - public void close() throws IOException { - printEntity(b, baos.toByteArray()); - log(b); - out.close(); - } - } - - private final PrintStream loggingStream; - - private final Logger logger; - - private long _id = 0; - - /** - * Create a logging filter logging the request and response to - * a default JDK logger, named as the fully qualified class name of this - * class. - */ - public JerseyLoggingFilter() { - this(LOGGER); - } - - /** - * Create a logging filter logging the request and response to - * a JDK logger. - * - * @param logger the logger to log requests and responses. - */ - public JerseyLoggingFilter(Logger logger) { - this.loggingStream = null; - this.logger = logger; - } - - /** - * Create a logging filter logging the request and response to - * print stream. - * - * @param loggingStream the print stream to log requests and responses. - */ - public JerseyLoggingFilter(PrintStream loggingStream) { - this.loggingStream = loggingStream; - this.logger = null; - } - - private void log(StringBuilder b) { - if (logger != null) { - logger.info(b.toString()); - } else { - loggingStream.print(b); - } - } - - private StringBuilder prefixId(StringBuilder b, long id) { - b.append(Long.toString(id)).append(" "); - return b; - } - - @Override - public ClientResponse handle(ClientRequest request) throws ClientHandlerException { - long id = ++this._id; - - logRequest(id, request); - - ClientResponse response = getNext().handle(request); - - logResponse(id, response); - - return response; - } - - private void logRequest(long id, ClientRequest request) { - StringBuilder b = new StringBuilder(); - - printRequestLine(b, id, request); - printRequestHeaders(b, id, request.getHeaders()); - - if (request.getEntity() != null) { - request.setAdapter(new Adapter(request.getAdapter(), b)); - } else { - log(b); - } - } - - private void printRequestLine(StringBuilder b, long id, ClientRequest request) { - prefixId(b, id).append(NOTIFICATION_PREFIX).append("Client out-bound request").append("\n"); - prefixId(b, id).append(REQUEST_PREFIX).append(request.getMethod()).append(" "). - append(request.getURI().toASCIIString()).append("\n"); - } - - private void printRequestHeaders(StringBuilder b, long id, MultivaluedMap headers) { - for (Map.Entry> e : headers.entrySet()) { - List val = e.getValue(); - String header = e.getKey(); - - if(val.size() == 1) { - prefixId(b, id).append(REQUEST_PREFIX).append(header).append(": ").append(ClientRequest.getHeaderValue(val.get(0))).append("\n"); - } else { - StringBuilder sb = new StringBuilder(); - boolean add = false; - for(Object o : val) { - if(add) sb.append(','); - add = true; - sb.append(ClientRequest.getHeaderValue(o)); - } - prefixId(b, id).append(REQUEST_PREFIX).append(header).append(": ").append(sb.toString()).append("\n"); - } - } - } - - private void logResponse(long id, ClientResponse response) { - StringBuilder b = new StringBuilder(); - - printResponseLine(b, id, response); - printResponseHeaders(b, id, response.getHeaders()); - - ByteArrayOutputStream out = new ByteArrayOutputStream(); - InputStream in = response.getEntityInputStream(); - try { - ReaderWriter.writeTo(in, out); - - byte[] requestEntity = out.toByteArray(); - printEntity(b, requestEntity); - response.setEntityInputStream(new ByteArrayInputStream(requestEntity)); - } catch (IOException ex) { - throw new ClientHandlerException(ex); - } - log(b); - } - - private void printResponseLine(StringBuilder b, long id, ClientResponse response) { - prefixId(b, id).append(NOTIFICATION_PREFIX). - append("Client in-bound response").append("\n"); - prefixId(b, id).append(RESPONSE_PREFIX). - append(Integer.toString(response.getStatus())). - append("\n"); - } - - private void printResponseHeaders(StringBuilder b, long id, MultivaluedMap headers) { - for (Map.Entry> e : headers.entrySet()) { - String header = e.getKey(); - for (String value : e.getValue()) { - prefixId(b, id).append(RESPONSE_PREFIX).append(header).append(": "). - append(value).append("\n"); - } - } - prefixId(b, id).append(RESPONSE_PREFIX).append("\n"); - } - - private void printEntity(StringBuilder b, byte[] entity) throws IOException { - if (entity.length == 0) - return; - String entityString = new String(entity); - entityString = entityString.replaceAll(PASSWORD_PATTERN, "\"password\" : \"******\""); - b.append(entityString).append("\n"); - } -} \ No newline at end of file diff --git a/openstack-client-connectors/jersey2-connector/src/main/java/com/woorea/openstack/connector/JaxRs20Connector.java b/openstack-client-connectors/jersey2-connector/src/main/java/com/woorea/openstack/connector/JaxRs20Connector.java index 2171beacf..82b9d5b95 100644 --- a/openstack-client-connectors/jersey2-connector/src/main/java/com/woorea/openstack/connector/JaxRs20Connector.java +++ b/openstack-client-connectors/jersey2-connector/src/main/java/com/woorea/openstack/connector/JaxRs20Connector.java @@ -22,7 +22,6 @@ public class JaxRs20Connector implements OpenStackClientConnector { protected Client client = OpenStack.CLIENT; - private LoggingFilter logger = new LoggingFilter(Logger.getLogger("os"), 10000); @Override public OpenStackResponse request(OpenStackRequest request) { @@ -33,7 +32,8 @@ public OpenStackResponse request(OpenStackRequest request) { target = target.queryParam(entry.getKey(), o); } } - target.register(logger); + + target.register(new LoggingFilter(Logger.getLogger("os"), 10000)); Invocation.Builder invocation = target.request(); for(Map.Entry> h : request.headers().entrySet()) { @@ -62,4 +62,5 @@ public OpenStackResponse request(OpenStackRequest request) { .getStatusInfo().toString(), e.getResponse().getStatus()); } } + } diff --git a/pom.xml b/pom.xml index 46996ba2d..2870170e2 100644 --- a/pom.xml +++ b/pom.xml @@ -131,20 +131,6 @@ maven-resources-plugin 2.6 - - org.apache.maven.plugins - maven-source-plugin - 2.2.1 - - - attach-sources - verify - - jar-no-fork - - - - From 366e25ba17ef191142ffd269e84d2a138a205cd0 Mon Sep 17 00:00:00 2001 From: Dominik Holler Date: Thu, 19 Jul 2018 10:35:27 +0200 Subject: [PATCH 111/144] Use updated version of Apache Maven GPG Plugin The updated version of Apache Maven GPG Plugin improves compatibility to updated versions of GPG. --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 2870170e2..ab4261200 100644 --- a/pom.xml +++ b/pom.xml @@ -107,7 +107,7 @@ org.apache.maven.plugins maven-gpg-plugin - 1.4 + 1.5 ${skip.sign} From 32053dbebdf3c686a1ad484c325f8afc15c17c2a Mon Sep 17 00:00:00 2001 From: Dominik Holler Date: Thu, 19 Jul 2018 10:42:51 +0200 Subject: [PATCH 112/144] Add sonatype.org to pom.xml This enables the deployment by mvn deploy --- pom.xml | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/pom.xml b/pom.xml index ab4261200..5eedb6ff3 100644 --- a/pom.xml +++ b/pom.xml @@ -131,6 +131,17 @@ maven-resources-plugin 2.6 + + org.sonatype.plugins + nexus-staging-maven-plugin + 1.6.7 + true + + ossrh + https://oss.sonatype.org/ + false + + From 72b1c2379c78c753f226d915c0dcb7e339ad3bb0 Mon Sep 17 00:00:00 2001 From: Dominik Holler Date: Thu, 19 Jul 2018 14:16:39 +0200 Subject: [PATCH 113/144] Let all request path start with "/" The convention that the path of an OpenStackRequest starts with an "/" or is empty is introduced. The majority of the code was written before this change according this convention anyway. This way the resteasy-connector does not need to add the "/" between the endpoint and the path. This way the generated URLs does not contain unintended double "/" anymore, which may confuse the OpenStack server. --- .../openstack/nova/api/ExtensionsResource.java | 2 +- .../openstack/connector/RESTEasyConnector.java | 2 +- .../openstack/base/client/OpenStackRequest.java | 2 ++ .../openstack/quantum/api/NetworksResource.java | 10 +++++----- .../openstack/quantum/api/PortsResource.java | 10 +++++----- .../openstack/quantum/api/RoutersResource.java | 14 +++++++------- .../openstack/quantum/api/SubnetsResource.java | 10 +++++----- 7 files changed, 26 insertions(+), 24 deletions(-) diff --git a/nova-client/src/main/java/com/woorea/openstack/nova/api/ExtensionsResource.java b/nova-client/src/main/java/com/woorea/openstack/nova/api/ExtensionsResource.java index 46e16c440..148ec40db 100644 --- a/nova-client/src/main/java/com/woorea/openstack/nova/api/ExtensionsResource.java +++ b/nova-client/src/main/java/com/woorea/openstack/nova/api/ExtensionsResource.java @@ -21,7 +21,7 @@ public List list(boolean detail) { public class List extends OpenStackRequest { public List(boolean detail) { - super(CLIENT, HttpMethod.GET, detail ? "extensions/detail" : "extensions", null, Extensions.class); + super(CLIENT, HttpMethod.GET, detail ? buildPath("extensions", "detail") : buildPath("extensions"), null, Extensions.class); } } diff --git a/openstack-client-connectors/resteasy-connector/src/main/java/com/woorea/openstack/connector/RESTEasyConnector.java b/openstack-client-connectors/resteasy-connector/src/main/java/com/woorea/openstack/connector/RESTEasyConnector.java index cc2d12969..c31a2cee5 100644 --- a/openstack-client-connectors/resteasy-connector/src/main/java/com/woorea/openstack/connector/RESTEasyConnector.java +++ b/openstack-client-connectors/resteasy-connector/src/main/java/com/woorea/openstack/connector/RESTEasyConnector.java @@ -85,7 +85,7 @@ protected ClientExecutor createClientExecutor() { } public OpenStackResponse request(OpenStackRequest request) { - ClientRequest client = new ClientRequest(UriBuilder.fromUri(request.endpoint() + "/" + request.path()), + ClientRequest client = new ClientRequest(UriBuilder.fromUri(request.endpoint() + request.path()), createClientExecutor(), providerFactory); for(Map.Entry > entry : request.queryParams().entrySet()) { diff --git a/openstack-client/src/main/java/com/woorea/openstack/base/client/OpenStackRequest.java b/openstack-client/src/main/java/com/woorea/openstack/base/client/OpenStackRequest.java index 94a545f11..38cf2b643 100644 --- a/openstack-client/src/main/java/com/woorea/openstack/base/client/OpenStackRequest.java +++ b/openstack-client/src/main/java/com/woorea/openstack/base/client/OpenStackRequest.java @@ -133,7 +133,9 @@ public OpenStackRequest queryParam(String key, Object value) { protected static String buildPath(String ... elements) { StringBuilder stringBuilder = new StringBuilder(); + final String PATH_SEPARATOR = "/"; for (String element : elements) { + stringBuilder.append(PATH_SEPARATOR); stringBuilder.append(element); } diff --git a/quantum-client/src/main/java/com/woorea/openstack/quantum/api/NetworksResource.java b/quantum-client/src/main/java/com/woorea/openstack/quantum/api/NetworksResource.java index 97a919aba..8b8edeec9 100644 --- a/quantum-client/src/main/java/com/woorea/openstack/quantum/api/NetworksResource.java +++ b/quantum-client/src/main/java/com/woorea/openstack/quantum/api/NetworksResource.java @@ -39,7 +39,7 @@ public Show show(String netId){ public class List extends OpenStackRequest { public List() { - super(CLIENT, HttpMethod.GET, "networks", null, Networks.class); + super(CLIENT, HttpMethod.GET, buildPath("networks"), null, Networks.class); } } @@ -57,28 +57,28 @@ public Query(Network network) { public class Create extends OpenStackRequest { public Create(Network net) { - super(CLIENT, HttpMethod.POST, "networks", Entity.json(net), Network.class); + super(CLIENT, HttpMethod.POST, buildPath("networks"), Entity.json(net), Network.class); } } public class Update extends OpenStackRequest { public Update(Network net) { - super(CLIENT, HttpMethod.PUT, buildPath("networks/", net.getId()), Entity.json(net), Network.class); + super(CLIENT, HttpMethod.PUT, buildPath("networks", net.getId()), Entity.json(net), Network.class); } } public class Show extends OpenStackRequest { public Show(String id) { - super(CLIENT, HttpMethod.GET, buildPath("networks/", id), null, Network.class); + super(CLIENT, HttpMethod.GET, buildPath("networks", id), null, Network.class); } } public class Delete extends OpenStackRequest { public Delete(String id){ - super(CLIENT, HttpMethod.DELETE, buildPath("networks/", id), null, Void.class); + super(CLIENT, HttpMethod.DELETE, buildPath("networks", id), null, Void.class); } } } diff --git a/quantum-client/src/main/java/com/woorea/openstack/quantum/api/PortsResource.java b/quantum-client/src/main/java/com/woorea/openstack/quantum/api/PortsResource.java index d14e860b6..b1cac3cc9 100644 --- a/quantum-client/src/main/java/com/woorea/openstack/quantum/api/PortsResource.java +++ b/quantum-client/src/main/java/com/woorea/openstack/quantum/api/PortsResource.java @@ -39,7 +39,7 @@ public Show show(String portId){ public class List extends OpenStackRequest { public List() { - super(CLIENT, HttpMethod.GET, "ports", null, Ports.class); + super(CLIENT, HttpMethod.GET, buildPath("ports"), null, Ports.class); } } @@ -58,28 +58,28 @@ public Query(Port port) { public class Create extends OpenStackRequest { public Create(Port port){ - super(CLIENT, HttpMethod.POST, "ports", Entity.json(port), Port.class); + super(CLIENT, HttpMethod.POST, buildPath("ports"), Entity.json(port), Port.class); } } public class Update extends OpenStackRequest { public Update(Port port){ - super(CLIENT, HttpMethod.PUT, buildPath("ports/", port.getId()), Entity.json(port), Port.class); + super(CLIENT, HttpMethod.PUT, buildPath("ports", port.getId()), Entity.json(port), Port.class); } } public class Show extends OpenStackRequest { public Show(String id) { - super(CLIENT, HttpMethod.GET, buildPath("ports/", id), null, Port.class); + super(CLIENT, HttpMethod.GET, buildPath("ports", id), null, Port.class); } } public class Delete extends OpenStackRequest { public Delete(String id){ - super(CLIENT, HttpMethod.DELETE, buildPath("ports/", id), null, Void.class); + super(CLIENT, HttpMethod.DELETE, buildPath("ports", id), null, Void.class); } } } diff --git a/quantum-client/src/main/java/com/woorea/openstack/quantum/api/RoutersResource.java b/quantum-client/src/main/java/com/woorea/openstack/quantum/api/RoutersResource.java index bcd646d09..71357097e 100644 --- a/quantum-client/src/main/java/com/woorea/openstack/quantum/api/RoutersResource.java +++ b/quantum-client/src/main/java/com/woorea/openstack/quantum/api/RoutersResource.java @@ -37,7 +37,7 @@ public Show show(String netId){ public class List extends OpenStackRequest { public List() { - super(CLIENT, HttpMethod.GET, "routers", null, Routers.class); + super(CLIENT, HttpMethod.GET, buildPath("routers"), null, Routers.class); } } @@ -53,7 +53,7 @@ public Query(Router router) { public class Create extends OpenStackRequest { public Create(RouterForCreate router){ - super(CLIENT, HttpMethod.POST, "routers", Entity.json(router), Router.class); + super(CLIENT, HttpMethod.POST, buildPath("routers"), Entity.json(router), Router.class); } } @@ -62,14 +62,14 @@ public Create(RouterForCreate router){ public class Show extends OpenStackRequest { public Show(String id) { - super(CLIENT, HttpMethod.GET, buildPath("routers/", id), null, Router.class); + super(CLIENT, HttpMethod.GET, buildPath("routers", id), null, Router.class); } } public class Delete extends OpenStackRequest { public Delete(String id){ - super(CLIENT, HttpMethod.DELETE, buildPath("routers/", id), null, Void.class); + super(CLIENT, HttpMethod.DELETE, buildPath("routers", id), null, Void.class); } } public Attach addInterface(RouterForAddInterface interfaceToAdd){ @@ -78,7 +78,7 @@ public Attach addInterface(RouterForAddInterface interfaceToAdd){ public class Attach extends OpenStackRequest { public Attach(RouterForAddInterface interfaceToAdd){ - super(CLIENT, HttpMethod.PUT, buildPath("routers/",interfaceToAdd.getRouterId(),"/add_router_interface"), Entity.json(interfaceToAdd),RouterInterface.class); + super(CLIENT, HttpMethod.PUT, buildPath("routers",interfaceToAdd.getRouterId(),"add_router_interface"), Entity.json(interfaceToAdd),RouterInterface.class); } } @@ -89,8 +89,8 @@ public Detach deleteInterface(RouterForAddInterface interfaceRouter) { public class Detach extends OpenStackRequest { public Detach(RouterForAddInterface interfaceToAdd) { - super(CLIENT, HttpMethod.PUT, buildPath("routers/", - interfaceToAdd.getRouterId(), "/remove_router_interface"), + super(CLIENT, HttpMethod.PUT, buildPath("routers", + interfaceToAdd.getRouterId(), "remove_router_interface"), Entity.json(interfaceToAdd), RouterInterface.class); } diff --git a/quantum-client/src/main/java/com/woorea/openstack/quantum/api/SubnetsResource.java b/quantum-client/src/main/java/com/woorea/openstack/quantum/api/SubnetsResource.java index 1864604b2..3f6f5e5c8 100644 --- a/quantum-client/src/main/java/com/woorea/openstack/quantum/api/SubnetsResource.java +++ b/quantum-client/src/main/java/com/woorea/openstack/quantum/api/SubnetsResource.java @@ -39,7 +39,7 @@ public Show show(String netId){ public class List extends OpenStackRequest { public List() { - super(CLIENT, HttpMethod.GET, "subnets", null, Subnets.class); + super(CLIENT, HttpMethod.GET, buildPath("subnets"), null, Subnets.class); } } @@ -57,28 +57,28 @@ public Query(Subnet subnet) { public class Create extends OpenStackRequest { public Create(Subnet subnet) { - super(CLIENT, HttpMethod.POST, "subnets", Entity.json(subnet), Subnet.class); + super(CLIENT, HttpMethod.POST, buildPath("subnets"), Entity.json(subnet), Subnet.class); } } public class Update extends OpenStackRequest { public Update(Subnet subnet) { - super(CLIENT, HttpMethod.PUT, buildPath("subnets/", subnet.getId()), Entity.json(subnet), Subnet.class); + super(CLIENT, HttpMethod.PUT, buildPath("subnets", subnet.getId()), Entity.json(subnet), Subnet.class); } } public class Show extends OpenStackRequest { public Show(String id) { - super(CLIENT, HttpMethod.GET, buildPath("subnets/", id), null, Subnet.class); + super(CLIENT, HttpMethod.GET, buildPath("subnets", id), null, Subnet.class); } } public class Delete extends OpenStackRequest { public Delete(String id){ - super(CLIENT, HttpMethod.DELETE, buildPath("subnets/", id), null, Void.class); + super(CLIENT, HttpMethod.DELETE, buildPath("subnets", id), null, Void.class); } } } From 18adb0d00354bb724e82c1ec9ae314455ed88285 Mon Sep 17 00:00:00 2001 From: Dominik Holler Date: Mon, 23 Jul 2018 16:21:20 +0200 Subject: [PATCH 114/144] [maven-release-plugin] prepare release openstack-java-sdk-3.2.2 --- ceilometer-client/pom.xml | 6 +++--- ceilometer-model/pom.xml | 2 +- cinder-client/pom.xml | 6 +++--- cinder-model/pom.xml | 2 +- glance-client/pom.xml | 6 +++--- glance-model/pom.xml | 2 +- heat-client/pom.xml | 6 +++--- heat-model/pom.xml | 2 +- keystone-client/pom.xml | 6 +++--- keystone-model/pom.xml | 2 +- nova-client/pom.xml | 6 +++--- nova-model/pom.xml | 2 +- .../jersey2-connector/pom.xml | 4 ++-- openstack-client-connectors/pom.xml | 4 ++-- .../resteasy-connector/pom.xml | 2 +- openstack-client/pom.xml | 2 +- openstack-console/pom.xml | 6 +++--- openstack-examples/pom.xml | 16 ++++++++-------- pom.xml | 4 ++-- quantum-client/pom.xml | 6 +++--- quantum-model/pom.xml | 2 +- swift-client/pom.xml | 6 +++--- swift-model/pom.xml | 2 +- 23 files changed, 51 insertions(+), 51 deletions(-) diff --git a/ceilometer-client/pom.xml b/ceilometer-client/pom.xml index f8a9a3fe1..0fb4eb0ff 100644 --- a/ceilometer-client/pom.xml +++ b/ceilometer-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.2-SNAPSHOT + 3.2.2 ceilometer-client OpenStack Ceilometer Client @@ -12,12 +12,12 @@ com.woorea openstack-client - 3.2.2-SNAPSHOT + 3.2.2 com.woorea ceilometer-model - 3.2.2-SNAPSHOT + 3.2.2 diff --git a/ceilometer-model/pom.xml b/ceilometer-model/pom.xml index 2718bdbe8..2846dc6de 100644 --- a/ceilometer-model/pom.xml +++ b/ceilometer-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.2-SNAPSHOT + 3.2.2 ceilometer-model OpenStack Ceilometer Model diff --git a/cinder-client/pom.xml b/cinder-client/pom.xml index b85a04b89..cdcae2be4 100644 --- a/cinder-client/pom.xml +++ b/cinder-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.2-SNAPSHOT + 3.2.2 cinder-client OpenStack Cinder Client @@ -12,13 +12,13 @@ com.woorea openstack-client - 3.2.2-SNAPSHOT + 3.2.2 com.woorea cinder-model - 3.2.2-SNAPSHOT + 3.2.2 \ No newline at end of file diff --git a/cinder-model/pom.xml b/cinder-model/pom.xml index c30b9cb70..14c6e69f1 100644 --- a/cinder-model/pom.xml +++ b/cinder-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.2-SNAPSHOT + 3.2.2 cinder-model OpenStack Cinder Model diff --git a/glance-client/pom.xml b/glance-client/pom.xml index 6eb537e1c..230d7b404 100644 --- a/glance-client/pom.xml +++ b/glance-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.2-SNAPSHOT + 3.2.2 glance-client OpenStack Glance Client @@ -12,13 +12,13 @@ com.woorea openstack-client - 3.2.2-SNAPSHOT + 3.2.2 com.woorea glance-model - 3.2.2-SNAPSHOT + 3.2.2 \ No newline at end of file diff --git a/glance-model/pom.xml b/glance-model/pom.xml index 2efc98be8..d33314c8d 100644 --- a/glance-model/pom.xml +++ b/glance-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.2-SNAPSHOT + 3.2.2 glance-model OpenStack Glance Model diff --git a/heat-client/pom.xml b/heat-client/pom.xml index 7c63daf12..9d46c7666 100644 --- a/heat-client/pom.xml +++ b/heat-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.2-SNAPSHOT + 3.2.2 heat-client OpenStack Heat Client @@ -12,13 +12,13 @@ com.woorea openstack-client - 3.2.2-SNAPSHOT + 3.2.2 com.woorea heat-model - 3.2.2-SNAPSHOT + 3.2.2 \ No newline at end of file diff --git a/heat-model/pom.xml b/heat-model/pom.xml index d7fb92148..3a7045841 100644 --- a/heat-model/pom.xml +++ b/heat-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.2-SNAPSHOT + 3.2.2 heat-model OpenStack Heat Model diff --git a/keystone-client/pom.xml b/keystone-client/pom.xml index 69a46ed43..fe9a7ff61 100644 --- a/keystone-client/pom.xml +++ b/keystone-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.2-SNAPSHOT + 3.2.2 keystone-client OpenStack Keystone Client @@ -12,12 +12,12 @@ com.woorea openstack-client - 3.2.2-SNAPSHOT + 3.2.2 com.woorea keystone-model - 3.2.2-SNAPSHOT + 3.2.2 \ No newline at end of file diff --git a/keystone-model/pom.xml b/keystone-model/pom.xml index 0c8794192..fc59f52d5 100644 --- a/keystone-model/pom.xml +++ b/keystone-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.2-SNAPSHOT + 3.2.2 keystone-model OpenStack Keystone Model diff --git a/nova-client/pom.xml b/nova-client/pom.xml index f967af043..26a667822 100644 --- a/nova-client/pom.xml +++ b/nova-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.2-SNAPSHOT + 3.2.2 nova-client OpenStack Nova Client @@ -12,12 +12,12 @@ com.woorea openstack-client - 3.2.2-SNAPSHOT + 3.2.2 com.woorea nova-model - 3.2.2-SNAPSHOT + 3.2.2 \ No newline at end of file diff --git a/nova-model/pom.xml b/nova-model/pom.xml index e7cfec5c3..fda497249 100644 --- a/nova-model/pom.xml +++ b/nova-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.2-SNAPSHOT + 3.2.2 nova-model OpenStack Nova Model diff --git a/openstack-client-connectors/jersey2-connector/pom.xml b/openstack-client-connectors/jersey2-connector/pom.xml index 1738128d4..2cbfa86c9 100644 --- a/openstack-client-connectors/jersey2-connector/pom.xml +++ b/openstack-client-connectors/jersey2-connector/pom.xml @@ -4,7 +4,7 @@ com.woorea openstack-client-connectors - 3.2.2-SNAPSHOT + 3.2.2 jersey2-connector OpenStack Jersey2 Connector @@ -27,7 +27,7 @@ com.woorea openstack-client - 3.2.2-SNAPSHOT + 3.2.2 diff --git a/openstack-client-connectors/pom.xml b/openstack-client-connectors/pom.xml index b5f29f241..8cb475e37 100644 --- a/openstack-client-connectors/pom.xml +++ b/openstack-client-connectors/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.2-SNAPSHOT + 3.2.2 openstack-client-connectors OpenStack Client Connectors @@ -42,7 +42,7 @@ com.woorea openstack-client - 3.2.2-SNAPSHOT + 3.2.2 \ No newline at end of file diff --git a/openstack-client-connectors/resteasy-connector/pom.xml b/openstack-client-connectors/resteasy-connector/pom.xml index 6cbea9dc8..d509f485c 100644 --- a/openstack-client-connectors/resteasy-connector/pom.xml +++ b/openstack-client-connectors/resteasy-connector/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-client-connectors - 3.2.2-SNAPSHOT + 3.2.2 resteasy-connector OpenStack RESTEasy Connector diff --git a/openstack-client/pom.xml b/openstack-client/pom.xml index c3fcf3510..5e73ff5e9 100644 --- a/openstack-client/pom.xml +++ b/openstack-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.2-SNAPSHOT + 3.2.2 openstack-client OpenStack Client diff --git a/openstack-console/pom.xml b/openstack-console/pom.xml index 2f462ec81..5c97c7e8b 100644 --- a/openstack-console/pom.xml +++ b/openstack-console/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.2-SNAPSHOT + 3.2.2 openstack-console OpenStack Console @@ -22,12 +22,12 @@ com.woorea keystone-client - 3.2.2-SNAPSHOT + 3.2.2 com.woorea nova-client - 3.2.2-SNAPSHOT + 3.2.2 diff --git a/openstack-examples/pom.xml b/openstack-examples/pom.xml index 30d401437..79738c431 100644 --- a/openstack-examples/pom.xml +++ b/openstack-examples/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.2-SNAPSHOT + 3.2.2 openstack-examples OpenStack Examples @@ -12,37 +12,37 @@ com.woorea keystone-client - 3.2.2-SNAPSHOT + 3.2.2 com.woorea nova-client - 3.2.2-SNAPSHOT + 3.2.2 com.woorea heat-client - 3.2.2-SNAPSHOT + 3.2.2 com.woorea swift-client - 3.2.2-SNAPSHOT + 3.2.2 com.woorea quantum-client - 3.2.2-SNAPSHOT + 3.2.2 com.woorea ceilometer-client - 3.2.2-SNAPSHOT + 3.2.2 com.woorea glance-client - 3.2.2-SNAPSHOT + 3.2.2 diff --git a/pom.xml b/pom.xml index 5eedb6ff3..0027f8af6 100644 --- a/pom.xml +++ b/pom.xml @@ -2,7 +2,7 @@ 4.0.0 com.woorea openstack-java-sdk - 3.2.2-SNAPSHOT + 3.2.2 pom OpenStack Java SDK OpenStack Java SDK @@ -107,7 +107,7 @@ org.apache.maven.plugins maven-gpg-plugin - 1.5 + 1.6 ${skip.sign} diff --git a/quantum-client/pom.xml b/quantum-client/pom.xml index 0f3426f02..ff5a3f307 100644 --- a/quantum-client/pom.xml +++ b/quantum-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.2-SNAPSHOT + 3.2.2 quantum-client OpenStack Quantum Client @@ -12,12 +12,12 @@ com.woorea openstack-client - 3.2.2-SNAPSHOT + 3.2.2 com.woorea quantum-model - 3.2.2-SNAPSHOT + 3.2.2 diff --git a/quantum-model/pom.xml b/quantum-model/pom.xml index f8b7ef8d5..6475176a9 100644 --- a/quantum-model/pom.xml +++ b/quantum-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.2-SNAPSHOT + 3.2.2 quantum-model OpenStack Quantum Model diff --git a/swift-client/pom.xml b/swift-client/pom.xml index c0aafe7c1..2a6ae51e4 100644 --- a/swift-client/pom.xml +++ b/swift-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.2-SNAPSHOT + 3.2.2 swift-client OpenStack Swift Client @@ -12,12 +12,12 @@ com.woorea openstack-client - 3.2.2-SNAPSHOT + 3.2.2 com.woorea swift-model - 3.2.2-SNAPSHOT + 3.2.2 \ No newline at end of file diff --git a/swift-model/pom.xml b/swift-model/pom.xml index ebf618b56..fd27017a2 100644 --- a/swift-model/pom.xml +++ b/swift-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.2-SNAPSHOT + 3.2.2 swift-model OpenStack Swift Model From 24ca83f2e28e9b5e6254258934aa63be43324012 Mon Sep 17 00:00:00 2001 From: Dominik Holler Date: Mon, 23 Jul 2018 16:23:49 +0200 Subject: [PATCH 115/144] [maven-release-plugin] prepare for next development iteration --- ceilometer-client/pom.xml | 6 +++--- ceilometer-model/pom.xml | 2 +- cinder-client/pom.xml | 6 +++--- cinder-model/pom.xml | 2 +- glance-client/pom.xml | 6 +++--- glance-model/pom.xml | 2 +- heat-client/pom.xml | 6 +++--- heat-model/pom.xml | 2 +- keystone-client/pom.xml | 6 +++--- keystone-model/pom.xml | 2 +- nova-client/pom.xml | 6 +++--- nova-model/pom.xml | 2 +- .../jersey2-connector/pom.xml | 4 ++-- openstack-client-connectors/pom.xml | 4 ++-- .../resteasy-connector/pom.xml | 2 +- openstack-client/pom.xml | 2 +- openstack-console/pom.xml | 6 +++--- openstack-examples/pom.xml | 16 ++++++++-------- pom.xml | 2 +- quantum-client/pom.xml | 6 +++--- quantum-model/pom.xml | 2 +- swift-client/pom.xml | 6 +++--- swift-model/pom.xml | 2 +- 23 files changed, 50 insertions(+), 50 deletions(-) diff --git a/ceilometer-client/pom.xml b/ceilometer-client/pom.xml index 0fb4eb0ff..3c657af83 100644 --- a/ceilometer-client/pom.xml +++ b/ceilometer-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.2 + 3.2.3-SNAPSHOT ceilometer-client OpenStack Ceilometer Client @@ -12,12 +12,12 @@ com.woorea openstack-client - 3.2.2 + 3.2.3-SNAPSHOT com.woorea ceilometer-model - 3.2.2 + 3.2.3-SNAPSHOT diff --git a/ceilometer-model/pom.xml b/ceilometer-model/pom.xml index 2846dc6de..ed7e7c391 100644 --- a/ceilometer-model/pom.xml +++ b/ceilometer-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.2 + 3.2.3-SNAPSHOT ceilometer-model OpenStack Ceilometer Model diff --git a/cinder-client/pom.xml b/cinder-client/pom.xml index cdcae2be4..1b232cb85 100644 --- a/cinder-client/pom.xml +++ b/cinder-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.2 + 3.2.3-SNAPSHOT cinder-client OpenStack Cinder Client @@ -12,13 +12,13 @@ com.woorea openstack-client - 3.2.2 + 3.2.3-SNAPSHOT com.woorea cinder-model - 3.2.2 + 3.2.3-SNAPSHOT \ No newline at end of file diff --git a/cinder-model/pom.xml b/cinder-model/pom.xml index 14c6e69f1..007f2dd9d 100644 --- a/cinder-model/pom.xml +++ b/cinder-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.2 + 3.2.3-SNAPSHOT cinder-model OpenStack Cinder Model diff --git a/glance-client/pom.xml b/glance-client/pom.xml index 230d7b404..8aa3ef5fe 100644 --- a/glance-client/pom.xml +++ b/glance-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.2 + 3.2.3-SNAPSHOT glance-client OpenStack Glance Client @@ -12,13 +12,13 @@ com.woorea openstack-client - 3.2.2 + 3.2.3-SNAPSHOT com.woorea glance-model - 3.2.2 + 3.2.3-SNAPSHOT \ No newline at end of file diff --git a/glance-model/pom.xml b/glance-model/pom.xml index d33314c8d..203420b61 100644 --- a/glance-model/pom.xml +++ b/glance-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.2 + 3.2.3-SNAPSHOT glance-model OpenStack Glance Model diff --git a/heat-client/pom.xml b/heat-client/pom.xml index 9d46c7666..909b14ec4 100644 --- a/heat-client/pom.xml +++ b/heat-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.2 + 3.2.3-SNAPSHOT heat-client OpenStack Heat Client @@ -12,13 +12,13 @@ com.woorea openstack-client - 3.2.2 + 3.2.3-SNAPSHOT com.woorea heat-model - 3.2.2 + 3.2.3-SNAPSHOT \ No newline at end of file diff --git a/heat-model/pom.xml b/heat-model/pom.xml index 3a7045841..e09d86ab6 100644 --- a/heat-model/pom.xml +++ b/heat-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.2 + 3.2.3-SNAPSHOT heat-model OpenStack Heat Model diff --git a/keystone-client/pom.xml b/keystone-client/pom.xml index fe9a7ff61..50e79ca58 100644 --- a/keystone-client/pom.xml +++ b/keystone-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.2 + 3.2.3-SNAPSHOT keystone-client OpenStack Keystone Client @@ -12,12 +12,12 @@ com.woorea openstack-client - 3.2.2 + 3.2.3-SNAPSHOT com.woorea keystone-model - 3.2.2 + 3.2.3-SNAPSHOT \ No newline at end of file diff --git a/keystone-model/pom.xml b/keystone-model/pom.xml index fc59f52d5..5c542f086 100644 --- a/keystone-model/pom.xml +++ b/keystone-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.2 + 3.2.3-SNAPSHOT keystone-model OpenStack Keystone Model diff --git a/nova-client/pom.xml b/nova-client/pom.xml index 26a667822..e851ea850 100644 --- a/nova-client/pom.xml +++ b/nova-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.2 + 3.2.3-SNAPSHOT nova-client OpenStack Nova Client @@ -12,12 +12,12 @@ com.woorea openstack-client - 3.2.2 + 3.2.3-SNAPSHOT com.woorea nova-model - 3.2.2 + 3.2.3-SNAPSHOT \ No newline at end of file diff --git a/nova-model/pom.xml b/nova-model/pom.xml index fda497249..8321caab7 100644 --- a/nova-model/pom.xml +++ b/nova-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.2 + 3.2.3-SNAPSHOT nova-model OpenStack Nova Model diff --git a/openstack-client-connectors/jersey2-connector/pom.xml b/openstack-client-connectors/jersey2-connector/pom.xml index 2cbfa86c9..8822cd456 100644 --- a/openstack-client-connectors/jersey2-connector/pom.xml +++ b/openstack-client-connectors/jersey2-connector/pom.xml @@ -4,7 +4,7 @@ com.woorea openstack-client-connectors - 3.2.2 + 3.2.3-SNAPSHOT jersey2-connector OpenStack Jersey2 Connector @@ -27,7 +27,7 @@ com.woorea openstack-client - 3.2.2 + 3.2.3-SNAPSHOT diff --git a/openstack-client-connectors/pom.xml b/openstack-client-connectors/pom.xml index 8cb475e37..23c7e5c88 100644 --- a/openstack-client-connectors/pom.xml +++ b/openstack-client-connectors/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.2 + 3.2.3-SNAPSHOT openstack-client-connectors OpenStack Client Connectors @@ -42,7 +42,7 @@ com.woorea openstack-client - 3.2.2 + 3.2.3-SNAPSHOT \ No newline at end of file diff --git a/openstack-client-connectors/resteasy-connector/pom.xml b/openstack-client-connectors/resteasy-connector/pom.xml index d509f485c..591dcc6f6 100644 --- a/openstack-client-connectors/resteasy-connector/pom.xml +++ b/openstack-client-connectors/resteasy-connector/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-client-connectors - 3.2.2 + 3.2.3-SNAPSHOT resteasy-connector OpenStack RESTEasy Connector diff --git a/openstack-client/pom.xml b/openstack-client/pom.xml index 5e73ff5e9..9a412ead4 100644 --- a/openstack-client/pom.xml +++ b/openstack-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.2 + 3.2.3-SNAPSHOT openstack-client OpenStack Client diff --git a/openstack-console/pom.xml b/openstack-console/pom.xml index 5c97c7e8b..8110402c9 100644 --- a/openstack-console/pom.xml +++ b/openstack-console/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.2 + 3.2.3-SNAPSHOT openstack-console OpenStack Console @@ -22,12 +22,12 @@ com.woorea keystone-client - 3.2.2 + 3.2.3-SNAPSHOT com.woorea nova-client - 3.2.2 + 3.2.3-SNAPSHOT diff --git a/openstack-examples/pom.xml b/openstack-examples/pom.xml index 79738c431..21c6c1568 100644 --- a/openstack-examples/pom.xml +++ b/openstack-examples/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.2 + 3.2.3-SNAPSHOT openstack-examples OpenStack Examples @@ -12,37 +12,37 @@ com.woorea keystone-client - 3.2.2 + 3.2.3-SNAPSHOT com.woorea nova-client - 3.2.2 + 3.2.3-SNAPSHOT com.woorea heat-client - 3.2.2 + 3.2.3-SNAPSHOT com.woorea swift-client - 3.2.2 + 3.2.3-SNAPSHOT com.woorea quantum-client - 3.2.2 + 3.2.3-SNAPSHOT com.woorea ceilometer-client - 3.2.2 + 3.2.3-SNAPSHOT com.woorea glance-client - 3.2.2 + 3.2.3-SNAPSHOT diff --git a/pom.xml b/pom.xml index 0027f8af6..0e85bda35 100644 --- a/pom.xml +++ b/pom.xml @@ -2,7 +2,7 @@ 4.0.0 com.woorea openstack-java-sdk - 3.2.2 + 3.2.3-SNAPSHOT pom OpenStack Java SDK OpenStack Java SDK diff --git a/quantum-client/pom.xml b/quantum-client/pom.xml index ff5a3f307..59fc2f0bf 100644 --- a/quantum-client/pom.xml +++ b/quantum-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.2 + 3.2.3-SNAPSHOT quantum-client OpenStack Quantum Client @@ -12,12 +12,12 @@ com.woorea openstack-client - 3.2.2 + 3.2.3-SNAPSHOT com.woorea quantum-model - 3.2.2 + 3.2.3-SNAPSHOT diff --git a/quantum-model/pom.xml b/quantum-model/pom.xml index 6475176a9..3d55fb615 100644 --- a/quantum-model/pom.xml +++ b/quantum-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.2 + 3.2.3-SNAPSHOT quantum-model OpenStack Quantum Model diff --git a/swift-client/pom.xml b/swift-client/pom.xml index 2a6ae51e4..1414c54a0 100644 --- a/swift-client/pom.xml +++ b/swift-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.2 + 3.2.3-SNAPSHOT swift-client OpenStack Swift Client @@ -12,12 +12,12 @@ com.woorea openstack-client - 3.2.2 + 3.2.3-SNAPSHOT com.woorea swift-model - 3.2.2 + 3.2.3-SNAPSHOT \ No newline at end of file diff --git a/swift-model/pom.xml b/swift-model/pom.xml index fd27017a2..0191af90b 100644 --- a/swift-model/pom.xml +++ b/swift-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.2 + 3.2.3-SNAPSHOT swift-model OpenStack Swift Model From cf4d6a09bd9f36544b8013c6d47528b451a76423 Mon Sep 17 00:00:00 2001 From: Dominik Holler Date: Tue, 24 Jul 2018 08:59:18 +0200 Subject: [PATCH 116/144] Revert "Add sonatype.org to pom.xml" This reverts commit 32053dbebdf3c686a1ad484c325f8afc15c17c2a. The nexus-staging-maven-plugin causes trouble in fedora's build system, and might cause trouble in other build systems, too. --- pom.xml | 11 ----------- 1 file changed, 11 deletions(-) diff --git a/pom.xml b/pom.xml index 0e85bda35..2b6579bde 100644 --- a/pom.xml +++ b/pom.xml @@ -131,17 +131,6 @@ maven-resources-plugin 2.6 - - org.sonatype.plugins - nexus-staging-maven-plugin - 1.6.7 - true - - ossrh - https://oss.sonatype.org/ - false - - From 0f81115f281ccedc13b085cf1373eed4afa98896 Mon Sep 17 00:00:00 2001 From: Dominik Holler Date: Tue, 24 Jul 2018 09:28:42 +0200 Subject: [PATCH 117/144] [maven-release-plugin] prepare release openstack-java-sdk-3.2.3 --- ceilometer-client/pom.xml | 6 +++--- ceilometer-model/pom.xml | 2 +- cinder-client/pom.xml | 6 +++--- cinder-model/pom.xml | 2 +- glance-client/pom.xml | 6 +++--- glance-model/pom.xml | 2 +- heat-client/pom.xml | 6 +++--- heat-model/pom.xml | 2 +- keystone-client/pom.xml | 6 +++--- keystone-model/pom.xml | 2 +- nova-client/pom.xml | 6 +++--- nova-model/pom.xml | 2 +- .../jersey2-connector/pom.xml | 4 ++-- openstack-client-connectors/pom.xml | 4 ++-- .../resteasy-connector/pom.xml | 2 +- openstack-client/pom.xml | 2 +- openstack-console/pom.xml | 6 +++--- openstack-examples/pom.xml | 16 ++++++++-------- pom.xml | 2 +- quantum-client/pom.xml | 6 +++--- quantum-model/pom.xml | 2 +- swift-client/pom.xml | 6 +++--- swift-model/pom.xml | 2 +- 23 files changed, 50 insertions(+), 50 deletions(-) diff --git a/ceilometer-client/pom.xml b/ceilometer-client/pom.xml index 3c657af83..c6e21e67e 100644 --- a/ceilometer-client/pom.xml +++ b/ceilometer-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.3-SNAPSHOT + 3.2.3 ceilometer-client OpenStack Ceilometer Client @@ -12,12 +12,12 @@ com.woorea openstack-client - 3.2.3-SNAPSHOT + 3.2.3 com.woorea ceilometer-model - 3.2.3-SNAPSHOT + 3.2.3 diff --git a/ceilometer-model/pom.xml b/ceilometer-model/pom.xml index ed7e7c391..0e839e76a 100644 --- a/ceilometer-model/pom.xml +++ b/ceilometer-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.3-SNAPSHOT + 3.2.3 ceilometer-model OpenStack Ceilometer Model diff --git a/cinder-client/pom.xml b/cinder-client/pom.xml index 1b232cb85..b3d2b87a4 100644 --- a/cinder-client/pom.xml +++ b/cinder-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.3-SNAPSHOT + 3.2.3 cinder-client OpenStack Cinder Client @@ -12,13 +12,13 @@ com.woorea openstack-client - 3.2.3-SNAPSHOT + 3.2.3 com.woorea cinder-model - 3.2.3-SNAPSHOT + 3.2.3 \ No newline at end of file diff --git a/cinder-model/pom.xml b/cinder-model/pom.xml index 007f2dd9d..716814120 100644 --- a/cinder-model/pom.xml +++ b/cinder-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.3-SNAPSHOT + 3.2.3 cinder-model OpenStack Cinder Model diff --git a/glance-client/pom.xml b/glance-client/pom.xml index 8aa3ef5fe..30a3cd798 100644 --- a/glance-client/pom.xml +++ b/glance-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.3-SNAPSHOT + 3.2.3 glance-client OpenStack Glance Client @@ -12,13 +12,13 @@ com.woorea openstack-client - 3.2.3-SNAPSHOT + 3.2.3 com.woorea glance-model - 3.2.3-SNAPSHOT + 3.2.3 \ No newline at end of file diff --git a/glance-model/pom.xml b/glance-model/pom.xml index 203420b61..a76a3d542 100644 --- a/glance-model/pom.xml +++ b/glance-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.3-SNAPSHOT + 3.2.3 glance-model OpenStack Glance Model diff --git a/heat-client/pom.xml b/heat-client/pom.xml index 909b14ec4..a96586300 100644 --- a/heat-client/pom.xml +++ b/heat-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.3-SNAPSHOT + 3.2.3 heat-client OpenStack Heat Client @@ -12,13 +12,13 @@ com.woorea openstack-client - 3.2.3-SNAPSHOT + 3.2.3 com.woorea heat-model - 3.2.3-SNAPSHOT + 3.2.3 \ No newline at end of file diff --git a/heat-model/pom.xml b/heat-model/pom.xml index e09d86ab6..bf757fbf3 100644 --- a/heat-model/pom.xml +++ b/heat-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.3-SNAPSHOT + 3.2.3 heat-model OpenStack Heat Model diff --git a/keystone-client/pom.xml b/keystone-client/pom.xml index 50e79ca58..7326d5038 100644 --- a/keystone-client/pom.xml +++ b/keystone-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.3-SNAPSHOT + 3.2.3 keystone-client OpenStack Keystone Client @@ -12,12 +12,12 @@ com.woorea openstack-client - 3.2.3-SNAPSHOT + 3.2.3 com.woorea keystone-model - 3.2.3-SNAPSHOT + 3.2.3 \ No newline at end of file diff --git a/keystone-model/pom.xml b/keystone-model/pom.xml index 5c542f086..54d872b11 100644 --- a/keystone-model/pom.xml +++ b/keystone-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.3-SNAPSHOT + 3.2.3 keystone-model OpenStack Keystone Model diff --git a/nova-client/pom.xml b/nova-client/pom.xml index e851ea850..c593e5681 100644 --- a/nova-client/pom.xml +++ b/nova-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.3-SNAPSHOT + 3.2.3 nova-client OpenStack Nova Client @@ -12,12 +12,12 @@ com.woorea openstack-client - 3.2.3-SNAPSHOT + 3.2.3 com.woorea nova-model - 3.2.3-SNAPSHOT + 3.2.3 \ No newline at end of file diff --git a/nova-model/pom.xml b/nova-model/pom.xml index 8321caab7..c2c7a07a7 100644 --- a/nova-model/pom.xml +++ b/nova-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.3-SNAPSHOT + 3.2.3 nova-model OpenStack Nova Model diff --git a/openstack-client-connectors/jersey2-connector/pom.xml b/openstack-client-connectors/jersey2-connector/pom.xml index 8822cd456..cf40f2b29 100644 --- a/openstack-client-connectors/jersey2-connector/pom.xml +++ b/openstack-client-connectors/jersey2-connector/pom.xml @@ -4,7 +4,7 @@ com.woorea openstack-client-connectors - 3.2.3-SNAPSHOT + 3.2.3 jersey2-connector OpenStack Jersey2 Connector @@ -27,7 +27,7 @@ com.woorea openstack-client - 3.2.3-SNAPSHOT + 3.2.3 diff --git a/openstack-client-connectors/pom.xml b/openstack-client-connectors/pom.xml index 23c7e5c88..603483e8b 100644 --- a/openstack-client-connectors/pom.xml +++ b/openstack-client-connectors/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.3-SNAPSHOT + 3.2.3 openstack-client-connectors OpenStack Client Connectors @@ -42,7 +42,7 @@ com.woorea openstack-client - 3.2.3-SNAPSHOT + 3.2.3 \ No newline at end of file diff --git a/openstack-client-connectors/resteasy-connector/pom.xml b/openstack-client-connectors/resteasy-connector/pom.xml index 591dcc6f6..3069a4ecb 100644 --- a/openstack-client-connectors/resteasy-connector/pom.xml +++ b/openstack-client-connectors/resteasy-connector/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-client-connectors - 3.2.3-SNAPSHOT + 3.2.3 resteasy-connector OpenStack RESTEasy Connector diff --git a/openstack-client/pom.xml b/openstack-client/pom.xml index 9a412ead4..848ed574d 100644 --- a/openstack-client/pom.xml +++ b/openstack-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.3-SNAPSHOT + 3.2.3 openstack-client OpenStack Client diff --git a/openstack-console/pom.xml b/openstack-console/pom.xml index 8110402c9..03a851bed 100644 --- a/openstack-console/pom.xml +++ b/openstack-console/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.3-SNAPSHOT + 3.2.3 openstack-console OpenStack Console @@ -22,12 +22,12 @@ com.woorea keystone-client - 3.2.3-SNAPSHOT + 3.2.3 com.woorea nova-client - 3.2.3-SNAPSHOT + 3.2.3 diff --git a/openstack-examples/pom.xml b/openstack-examples/pom.xml index 21c6c1568..f0af046c6 100644 --- a/openstack-examples/pom.xml +++ b/openstack-examples/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.3-SNAPSHOT + 3.2.3 openstack-examples OpenStack Examples @@ -12,37 +12,37 @@ com.woorea keystone-client - 3.2.3-SNAPSHOT + 3.2.3 com.woorea nova-client - 3.2.3-SNAPSHOT + 3.2.3 com.woorea heat-client - 3.2.3-SNAPSHOT + 3.2.3 com.woorea swift-client - 3.2.3-SNAPSHOT + 3.2.3 com.woorea quantum-client - 3.2.3-SNAPSHOT + 3.2.3 com.woorea ceilometer-client - 3.2.3-SNAPSHOT + 3.2.3 com.woorea glance-client - 3.2.3-SNAPSHOT + 3.2.3 diff --git a/pom.xml b/pom.xml index 2b6579bde..b3659ef56 100644 --- a/pom.xml +++ b/pom.xml @@ -2,7 +2,7 @@ 4.0.0 com.woorea openstack-java-sdk - 3.2.3-SNAPSHOT + 3.2.3 pom OpenStack Java SDK OpenStack Java SDK diff --git a/quantum-client/pom.xml b/quantum-client/pom.xml index 59fc2f0bf..02843515f 100644 --- a/quantum-client/pom.xml +++ b/quantum-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.3-SNAPSHOT + 3.2.3 quantum-client OpenStack Quantum Client @@ -12,12 +12,12 @@ com.woorea openstack-client - 3.2.3-SNAPSHOT + 3.2.3 com.woorea quantum-model - 3.2.3-SNAPSHOT + 3.2.3 diff --git a/quantum-model/pom.xml b/quantum-model/pom.xml index 3d55fb615..2995e805d 100644 --- a/quantum-model/pom.xml +++ b/quantum-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.3-SNAPSHOT + 3.2.3 quantum-model OpenStack Quantum Model diff --git a/swift-client/pom.xml b/swift-client/pom.xml index 1414c54a0..aac02645d 100644 --- a/swift-client/pom.xml +++ b/swift-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.3-SNAPSHOT + 3.2.3 swift-client OpenStack Swift Client @@ -12,12 +12,12 @@ com.woorea openstack-client - 3.2.3-SNAPSHOT + 3.2.3 com.woorea swift-model - 3.2.3-SNAPSHOT + 3.2.3 \ No newline at end of file diff --git a/swift-model/pom.xml b/swift-model/pom.xml index 0191af90b..dda394ebc 100644 --- a/swift-model/pom.xml +++ b/swift-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.3-SNAPSHOT + 3.2.3 swift-model OpenStack Swift Model From c6f9f5db1d85b7eee7a80512c03eb4b4ca28a0f9 Mon Sep 17 00:00:00 2001 From: Dominik Holler Date: Tue, 24 Jul 2018 09:29:21 +0200 Subject: [PATCH 118/144] [maven-release-plugin] prepare for next development iteration --- ceilometer-client/pom.xml | 6 +++--- ceilometer-model/pom.xml | 2 +- cinder-client/pom.xml | 6 +++--- cinder-model/pom.xml | 2 +- glance-client/pom.xml | 6 +++--- glance-model/pom.xml | 2 +- heat-client/pom.xml | 6 +++--- heat-model/pom.xml | 2 +- keystone-client/pom.xml | 6 +++--- keystone-model/pom.xml | 2 +- nova-client/pom.xml | 6 +++--- nova-model/pom.xml | 2 +- .../jersey2-connector/pom.xml | 4 ++-- openstack-client-connectors/pom.xml | 4 ++-- .../resteasy-connector/pom.xml | 2 +- openstack-client/pom.xml | 2 +- openstack-console/pom.xml | 6 +++--- openstack-examples/pom.xml | 16 ++++++++-------- pom.xml | 2 +- quantum-client/pom.xml | 6 +++--- quantum-model/pom.xml | 2 +- swift-client/pom.xml | 6 +++--- swift-model/pom.xml | 2 +- 23 files changed, 50 insertions(+), 50 deletions(-) diff --git a/ceilometer-client/pom.xml b/ceilometer-client/pom.xml index c6e21e67e..5aa7ade89 100644 --- a/ceilometer-client/pom.xml +++ b/ceilometer-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.3 + 3.2.4-SNAPSHOT ceilometer-client OpenStack Ceilometer Client @@ -12,12 +12,12 @@ com.woorea openstack-client - 3.2.3 + 3.2.4-SNAPSHOT com.woorea ceilometer-model - 3.2.3 + 3.2.4-SNAPSHOT diff --git a/ceilometer-model/pom.xml b/ceilometer-model/pom.xml index 0e839e76a..f679ca001 100644 --- a/ceilometer-model/pom.xml +++ b/ceilometer-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.3 + 3.2.4-SNAPSHOT ceilometer-model OpenStack Ceilometer Model diff --git a/cinder-client/pom.xml b/cinder-client/pom.xml index b3d2b87a4..5460d91e9 100644 --- a/cinder-client/pom.xml +++ b/cinder-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.3 + 3.2.4-SNAPSHOT cinder-client OpenStack Cinder Client @@ -12,13 +12,13 @@ com.woorea openstack-client - 3.2.3 + 3.2.4-SNAPSHOT com.woorea cinder-model - 3.2.3 + 3.2.4-SNAPSHOT \ No newline at end of file diff --git a/cinder-model/pom.xml b/cinder-model/pom.xml index 716814120..ac3c7ce7d 100644 --- a/cinder-model/pom.xml +++ b/cinder-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.3 + 3.2.4-SNAPSHOT cinder-model OpenStack Cinder Model diff --git a/glance-client/pom.xml b/glance-client/pom.xml index 30a3cd798..d72012b65 100644 --- a/glance-client/pom.xml +++ b/glance-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.3 + 3.2.4-SNAPSHOT glance-client OpenStack Glance Client @@ -12,13 +12,13 @@ com.woorea openstack-client - 3.2.3 + 3.2.4-SNAPSHOT com.woorea glance-model - 3.2.3 + 3.2.4-SNAPSHOT \ No newline at end of file diff --git a/glance-model/pom.xml b/glance-model/pom.xml index a76a3d542..0f19435ff 100644 --- a/glance-model/pom.xml +++ b/glance-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.3 + 3.2.4-SNAPSHOT glance-model OpenStack Glance Model diff --git a/heat-client/pom.xml b/heat-client/pom.xml index a96586300..5a13cc7af 100644 --- a/heat-client/pom.xml +++ b/heat-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.3 + 3.2.4-SNAPSHOT heat-client OpenStack Heat Client @@ -12,13 +12,13 @@ com.woorea openstack-client - 3.2.3 + 3.2.4-SNAPSHOT com.woorea heat-model - 3.2.3 + 3.2.4-SNAPSHOT \ No newline at end of file diff --git a/heat-model/pom.xml b/heat-model/pom.xml index bf757fbf3..34da11b4b 100644 --- a/heat-model/pom.xml +++ b/heat-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.3 + 3.2.4-SNAPSHOT heat-model OpenStack Heat Model diff --git a/keystone-client/pom.xml b/keystone-client/pom.xml index 7326d5038..0eb0e4c1a 100644 --- a/keystone-client/pom.xml +++ b/keystone-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.3 + 3.2.4-SNAPSHOT keystone-client OpenStack Keystone Client @@ -12,12 +12,12 @@ com.woorea openstack-client - 3.2.3 + 3.2.4-SNAPSHOT com.woorea keystone-model - 3.2.3 + 3.2.4-SNAPSHOT \ No newline at end of file diff --git a/keystone-model/pom.xml b/keystone-model/pom.xml index 54d872b11..681f0e8fa 100644 --- a/keystone-model/pom.xml +++ b/keystone-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.3 + 3.2.4-SNAPSHOT keystone-model OpenStack Keystone Model diff --git a/nova-client/pom.xml b/nova-client/pom.xml index c593e5681..ed778acae 100644 --- a/nova-client/pom.xml +++ b/nova-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.3 + 3.2.4-SNAPSHOT nova-client OpenStack Nova Client @@ -12,12 +12,12 @@ com.woorea openstack-client - 3.2.3 + 3.2.4-SNAPSHOT com.woorea nova-model - 3.2.3 + 3.2.4-SNAPSHOT \ No newline at end of file diff --git a/nova-model/pom.xml b/nova-model/pom.xml index c2c7a07a7..7aa8a1a89 100644 --- a/nova-model/pom.xml +++ b/nova-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.3 + 3.2.4-SNAPSHOT nova-model OpenStack Nova Model diff --git a/openstack-client-connectors/jersey2-connector/pom.xml b/openstack-client-connectors/jersey2-connector/pom.xml index cf40f2b29..d4de831b1 100644 --- a/openstack-client-connectors/jersey2-connector/pom.xml +++ b/openstack-client-connectors/jersey2-connector/pom.xml @@ -4,7 +4,7 @@ com.woorea openstack-client-connectors - 3.2.3 + 3.2.4-SNAPSHOT jersey2-connector OpenStack Jersey2 Connector @@ -27,7 +27,7 @@ com.woorea openstack-client - 3.2.3 + 3.2.4-SNAPSHOT diff --git a/openstack-client-connectors/pom.xml b/openstack-client-connectors/pom.xml index 603483e8b..712a34193 100644 --- a/openstack-client-connectors/pom.xml +++ b/openstack-client-connectors/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.3 + 3.2.4-SNAPSHOT openstack-client-connectors OpenStack Client Connectors @@ -42,7 +42,7 @@ com.woorea openstack-client - 3.2.3 + 3.2.4-SNAPSHOT \ No newline at end of file diff --git a/openstack-client-connectors/resteasy-connector/pom.xml b/openstack-client-connectors/resteasy-connector/pom.xml index 3069a4ecb..17c5fd733 100644 --- a/openstack-client-connectors/resteasy-connector/pom.xml +++ b/openstack-client-connectors/resteasy-connector/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-client-connectors - 3.2.3 + 3.2.4-SNAPSHOT resteasy-connector OpenStack RESTEasy Connector diff --git a/openstack-client/pom.xml b/openstack-client/pom.xml index 848ed574d..599084dfb 100644 --- a/openstack-client/pom.xml +++ b/openstack-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.3 + 3.2.4-SNAPSHOT openstack-client OpenStack Client diff --git a/openstack-console/pom.xml b/openstack-console/pom.xml index 03a851bed..06796cd7f 100644 --- a/openstack-console/pom.xml +++ b/openstack-console/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.3 + 3.2.4-SNAPSHOT openstack-console OpenStack Console @@ -22,12 +22,12 @@ com.woorea keystone-client - 3.2.3 + 3.2.4-SNAPSHOT com.woorea nova-client - 3.2.3 + 3.2.4-SNAPSHOT diff --git a/openstack-examples/pom.xml b/openstack-examples/pom.xml index f0af046c6..7ea3dd5b0 100644 --- a/openstack-examples/pom.xml +++ b/openstack-examples/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.3 + 3.2.4-SNAPSHOT openstack-examples OpenStack Examples @@ -12,37 +12,37 @@ com.woorea keystone-client - 3.2.3 + 3.2.4-SNAPSHOT com.woorea nova-client - 3.2.3 + 3.2.4-SNAPSHOT com.woorea heat-client - 3.2.3 + 3.2.4-SNAPSHOT com.woorea swift-client - 3.2.3 + 3.2.4-SNAPSHOT com.woorea quantum-client - 3.2.3 + 3.2.4-SNAPSHOT com.woorea ceilometer-client - 3.2.3 + 3.2.4-SNAPSHOT com.woorea glance-client - 3.2.3 + 3.2.4-SNAPSHOT diff --git a/pom.xml b/pom.xml index b3659ef56..c047c40f0 100644 --- a/pom.xml +++ b/pom.xml @@ -2,7 +2,7 @@ 4.0.0 com.woorea openstack-java-sdk - 3.2.3 + 3.2.4-SNAPSHOT pom OpenStack Java SDK OpenStack Java SDK diff --git a/quantum-client/pom.xml b/quantum-client/pom.xml index 02843515f..8d2b1bc38 100644 --- a/quantum-client/pom.xml +++ b/quantum-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.3 + 3.2.4-SNAPSHOT quantum-client OpenStack Quantum Client @@ -12,12 +12,12 @@ com.woorea openstack-client - 3.2.3 + 3.2.4-SNAPSHOT com.woorea quantum-model - 3.2.3 + 3.2.4-SNAPSHOT diff --git a/quantum-model/pom.xml b/quantum-model/pom.xml index 2995e805d..29d52ac1d 100644 --- a/quantum-model/pom.xml +++ b/quantum-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.3 + 3.2.4-SNAPSHOT quantum-model OpenStack Quantum Model diff --git a/swift-client/pom.xml b/swift-client/pom.xml index aac02645d..643c10c3a 100644 --- a/swift-client/pom.xml +++ b/swift-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.3 + 3.2.4-SNAPSHOT swift-client OpenStack Swift Client @@ -12,12 +12,12 @@ com.woorea openstack-client - 3.2.3 + 3.2.4-SNAPSHOT com.woorea swift-model - 3.2.3 + 3.2.4-SNAPSHOT \ No newline at end of file diff --git a/swift-model/pom.xml b/swift-model/pom.xml index dda394ebc..52c8d9841 100644 --- a/swift-model/pom.xml +++ b/swift-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.3 + 3.2.4-SNAPSHOT swift-model OpenStack Swift Model From b6ed0e293a0716af94f71aa79842f6598b43c78b Mon Sep 17 00:00:00 2001 From: Dominik Holler Date: Tue, 24 Jul 2018 18:04:26 +0200 Subject: [PATCH 119/144] Align required versions The examples and the jersey-connector reference the current version of openstack-java-sdk. --- .../jersey-connector/pom.xml | 2 +- openstack-examples/pom.xml | 26 +++++++++++-------- 2 files changed, 16 insertions(+), 12 deletions(-) diff --git a/openstack-client-connectors/jersey-connector/pom.xml b/openstack-client-connectors/jersey-connector/pom.xml index b9b95c496..c4ed454be 100644 --- a/openstack-client-connectors/jersey-connector/pom.xml +++ b/openstack-client-connectors/jersey-connector/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-client-connectors - 3.2.2-SNAPSHOT + 3.2.4-SNAPSHOT jersey-connector OpenStack Jersey Connector diff --git a/openstack-examples/pom.xml b/openstack-examples/pom.xml index 7ea3dd5b0..1469ddf3d 100644 --- a/openstack-examples/pom.xml +++ b/openstack-examples/pom.xml @@ -5,6 +5,10 @@ openstack-java-sdk 3.2.4-SNAPSHOT + + UTF-8 + 3.2.4-SNAPSHOT + openstack-examples OpenStack Examples OpenStack Examples @@ -12,37 +16,37 @@ com.woorea keystone-client - 3.2.4-SNAPSHOT + ${openstack-sdk.version} com.woorea nova-client - 3.2.4-SNAPSHOT + ${openstack-sdk.version} com.woorea heat-client - 3.2.4-SNAPSHOT + ${openstack-sdk.version} com.woorea swift-client - 3.2.4-SNAPSHOT + ${openstack-sdk.version} com.woorea quantum-client - 3.2.4-SNAPSHOT + ${openstack-sdk.version} com.woorea ceilometer-client - 3.2.4-SNAPSHOT + ${openstack-sdk.version} com.woorea glance-client - 3.2.4-SNAPSHOT + ${openstack-sdk.version} @@ -52,7 +56,7 @@ com.woorea jersey-connector - 3.0.0-SNAPSHOT + ${openstack-sdk.version} @@ -65,7 +69,7 @@ com.woorea jersey2-connector - 3.1.0-SNAPSHOT + ${openstack-sdk.version} @@ -75,9 +79,9 @@ com.woorea resteasy-connector - 3.1.0-SNAPSHOT + ${openstack-sdk.version} - \ No newline at end of file + From a37e9538630d475853ecc4fb445cfd88d776e60c Mon Sep 17 00:00:00 2001 From: Dominik Holler Date: Thu, 26 Jul 2018 16:38:20 +0200 Subject: [PATCH 120/144] Add NEWS This file contains highlights, important fixes, or notable enhancement back to version 3.1.0. --- NEWS.md | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 NEWS.md diff --git a/NEWS.md b/NEWS.md new file mode 100644 index 000000000..f183a57ef --- /dev/null +++ b/NEWS.md @@ -0,0 +1,31 @@ +# 3.2.3 / 2018-06-24 +* No user visible changes + +# 3.2.2 / 2018-06-23 +* Add keystone v3 support +* Add missing nova utility methods for server actions +* Add heat support +* Add router support +* All fixes and improvements up to 3.1.3 + +# 3.1.3 / 2018-05-18 +* Cinder: Add support for `os-terminate_connection` +* neutron: Support parameter mtu + +# 3.1.2 / 2017-01-28 +* RESTEasyConnector: Isolate the creation of ClientExecutor + +# 3.1.1 / 2015-05-06 +* cinder: introduce client and model +* java 7 +* Fixes and improvements up to 3.0.6 + +# 3.2.1 / 2013-07-26 +* No user visible changes + +# 3.2.0 / 2013-07-26 +* support quota/limits/usage operations +* logging enhancements + +# 3.1.0 / 2013-07-21 + From c36054ad8f29d62cb7cd0c58cf00cbb8e044e603 Mon Sep 17 00:00:00 2001 From: Dominik Holler Date: Tue, 31 Jul 2018 16:27:27 +0200 Subject: [PATCH 121/144] Add backward compatibility to OpenStackRequest In 5882b5763b854da74b887cf91d5e0fa62ca276c1 the signature of the constructor of OpenStackRequest was modifed. To improve the backward compatibility, the old signature is added as additional method again. --- NEWS.md | 3 +++ .../com/woorea/openstack/base/client/OpenStackRequest.java | 6 +++++- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/NEWS.md b/NEWS.md index f183a57ef..6dec902f0 100644 --- a/NEWS.md +++ b/NEWS.md @@ -1,3 +1,6 @@ +# 3.2.4 / 2018 +* Improved backward compatibility to 3.1.3 + # 3.2.3 / 2018-06-24 * No user visible changes diff --git a/openstack-client/src/main/java/com/woorea/openstack/base/client/OpenStackRequest.java b/openstack-client/src/main/java/com/woorea/openstack/base/client/OpenStackRequest.java index 38cf2b643..5da28bef8 100644 --- a/openstack-client/src/main/java/com/woorea/openstack/base/client/OpenStackRequest.java +++ b/openstack-client/src/main/java/com/woorea/openstack/base/client/OpenStackRequest.java @@ -8,12 +8,16 @@ import java.util.Map; public class OpenStackRequest { - + private OpenStackClient client; public OpenStackRequest() { } + + public OpenStackRequest(OpenStackClient client, HttpMethod method, String path, Entity entity, Class returnType) { + this(client, method, (CharSequence)path, entity, returnType); + } public OpenStackRequest(OpenStackClient client, HttpMethod method, CharSequence path, Entity entity, Class returnType) { this.client = client; From 5396617148183394eb597fe3fe7a7f09b9a9a61a Mon Sep 17 00:00:00 2001 From: Dominik Holler Date: Tue, 31 Jul 2018 16:37:10 +0200 Subject: [PATCH 122/144] RESTEasyConnector: Improve backward compatibility 72b1c2379c78c753f226d915c0dcb7e339ad3bb0 breaks compatibility with applications which are creating raw OpenStackRequest with empty path. But 72b1c2379c78c753f226d915c0dcb7e339ad3bb0 cannot be reverted, this would produce URLs containing double slashes in the path. For this reasons, the empty path case is handled explicitly. --- .../com/woorea/openstack/connector/RESTEasyConnector.java | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/openstack-client-connectors/resteasy-connector/src/main/java/com/woorea/openstack/connector/RESTEasyConnector.java b/openstack-client-connectors/resteasy-connector/src/main/java/com/woorea/openstack/connector/RESTEasyConnector.java index c31a2cee5..ac8d3fd5d 100644 --- a/openstack-client-connectors/resteasy-connector/src/main/java/com/woorea/openstack/connector/RESTEasyConnector.java +++ b/openstack-client-connectors/resteasy-connector/src/main/java/com/woorea/openstack/connector/RESTEasyConnector.java @@ -85,7 +85,11 @@ protected ClientExecutor createClientExecutor() { } public OpenStackResponse request(OpenStackRequest request) { - ClientRequest client = new ClientRequest(UriBuilder.fromUri(request.endpoint() + request.path()), + String requestPath = request.path(); + if (requestPath != null && requestPath.isEmpty()) { + requestPath = "/"; + } + ClientRequest client = new ClientRequest(UriBuilder.fromUri(request.endpoint() + requestPath), createClientExecutor(), providerFactory); for(Map.Entry > entry : request.queryParams().entrySet()) { From 62a8ad12ee0ca20f41ddee8c457f6c74247a29a3 Mon Sep 17 00:00:00 2001 From: Dominik Holler Date: Tue, 14 Aug 2018 17:13:24 +0200 Subject: [PATCH 123/144] [maven-release-plugin] prepare release openstack-java-sdk-3.2.4 --- ceilometer-client/pom.xml | 6 +++--- ceilometer-model/pom.xml | 2 +- cinder-client/pom.xml | 6 +++--- cinder-model/pom.xml | 2 +- glance-client/pom.xml | 6 +++--- glance-model/pom.xml | 2 +- heat-client/pom.xml | 6 +++--- heat-model/pom.xml | 2 +- keystone-client/pom.xml | 6 +++--- keystone-model/pom.xml | 2 +- nova-client/pom.xml | 6 +++--- nova-model/pom.xml | 2 +- openstack-client-connectors/jersey-connector/pom.xml | 2 +- openstack-client-connectors/jersey2-connector/pom.xml | 4 ++-- openstack-client-connectors/pom.xml | 4 ++-- openstack-client-connectors/resteasy-connector/pom.xml | 2 +- openstack-client/pom.xml | 2 +- openstack-console/pom.xml | 6 +++--- openstack-examples/pom.xml | 4 ++-- pom.xml | 2 +- quantum-client/pom.xml | 6 +++--- quantum-model/pom.xml | 2 +- swift-client/pom.xml | 6 +++--- swift-model/pom.xml | 2 +- 24 files changed, 45 insertions(+), 45 deletions(-) diff --git a/ceilometer-client/pom.xml b/ceilometer-client/pom.xml index 5aa7ade89..0ea68bae7 100644 --- a/ceilometer-client/pom.xml +++ b/ceilometer-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.4-SNAPSHOT + 3.2.4 ceilometer-client OpenStack Ceilometer Client @@ -12,12 +12,12 @@ com.woorea openstack-client - 3.2.4-SNAPSHOT + 3.2.4 com.woorea ceilometer-model - 3.2.4-SNAPSHOT + 3.2.4 diff --git a/ceilometer-model/pom.xml b/ceilometer-model/pom.xml index f679ca001..5ab92bfbd 100644 --- a/ceilometer-model/pom.xml +++ b/ceilometer-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.4-SNAPSHOT + 3.2.4 ceilometer-model OpenStack Ceilometer Model diff --git a/cinder-client/pom.xml b/cinder-client/pom.xml index 5460d91e9..9c86e149a 100644 --- a/cinder-client/pom.xml +++ b/cinder-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.4-SNAPSHOT + 3.2.4 cinder-client OpenStack Cinder Client @@ -12,13 +12,13 @@ com.woorea openstack-client - 3.2.4-SNAPSHOT + 3.2.4 com.woorea cinder-model - 3.2.4-SNAPSHOT + 3.2.4 \ No newline at end of file diff --git a/cinder-model/pom.xml b/cinder-model/pom.xml index ac3c7ce7d..f55f1f0de 100644 --- a/cinder-model/pom.xml +++ b/cinder-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.4-SNAPSHOT + 3.2.4 cinder-model OpenStack Cinder Model diff --git a/glance-client/pom.xml b/glance-client/pom.xml index d72012b65..d890824d6 100644 --- a/glance-client/pom.xml +++ b/glance-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.4-SNAPSHOT + 3.2.4 glance-client OpenStack Glance Client @@ -12,13 +12,13 @@ com.woorea openstack-client - 3.2.4-SNAPSHOT + 3.2.4 com.woorea glance-model - 3.2.4-SNAPSHOT + 3.2.4 \ No newline at end of file diff --git a/glance-model/pom.xml b/glance-model/pom.xml index 0f19435ff..facdef831 100644 --- a/glance-model/pom.xml +++ b/glance-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.4-SNAPSHOT + 3.2.4 glance-model OpenStack Glance Model diff --git a/heat-client/pom.xml b/heat-client/pom.xml index 5a13cc7af..903073c97 100644 --- a/heat-client/pom.xml +++ b/heat-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.4-SNAPSHOT + 3.2.4 heat-client OpenStack Heat Client @@ -12,13 +12,13 @@ com.woorea openstack-client - 3.2.4-SNAPSHOT + 3.2.4 com.woorea heat-model - 3.2.4-SNAPSHOT + 3.2.4 \ No newline at end of file diff --git a/heat-model/pom.xml b/heat-model/pom.xml index 34da11b4b..b661b2fec 100644 --- a/heat-model/pom.xml +++ b/heat-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.4-SNAPSHOT + 3.2.4 heat-model OpenStack Heat Model diff --git a/keystone-client/pom.xml b/keystone-client/pom.xml index 0eb0e4c1a..256379fab 100644 --- a/keystone-client/pom.xml +++ b/keystone-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.4-SNAPSHOT + 3.2.4 keystone-client OpenStack Keystone Client @@ -12,12 +12,12 @@ com.woorea openstack-client - 3.2.4-SNAPSHOT + 3.2.4 com.woorea keystone-model - 3.2.4-SNAPSHOT + 3.2.4 \ No newline at end of file diff --git a/keystone-model/pom.xml b/keystone-model/pom.xml index 681f0e8fa..8bd42b553 100644 --- a/keystone-model/pom.xml +++ b/keystone-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.4-SNAPSHOT + 3.2.4 keystone-model OpenStack Keystone Model diff --git a/nova-client/pom.xml b/nova-client/pom.xml index ed778acae..8ecb106a9 100644 --- a/nova-client/pom.xml +++ b/nova-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.4-SNAPSHOT + 3.2.4 nova-client OpenStack Nova Client @@ -12,12 +12,12 @@ com.woorea openstack-client - 3.2.4-SNAPSHOT + 3.2.4 com.woorea nova-model - 3.2.4-SNAPSHOT + 3.2.4 \ No newline at end of file diff --git a/nova-model/pom.xml b/nova-model/pom.xml index 7aa8a1a89..58b3f8288 100644 --- a/nova-model/pom.xml +++ b/nova-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.4-SNAPSHOT + 3.2.4 nova-model OpenStack Nova Model diff --git a/openstack-client-connectors/jersey-connector/pom.xml b/openstack-client-connectors/jersey-connector/pom.xml index c4ed454be..7d7664b30 100644 --- a/openstack-client-connectors/jersey-connector/pom.xml +++ b/openstack-client-connectors/jersey-connector/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-client-connectors - 3.2.4-SNAPSHOT + 3.2.4 jersey-connector OpenStack Jersey Connector diff --git a/openstack-client-connectors/jersey2-connector/pom.xml b/openstack-client-connectors/jersey2-connector/pom.xml index d4de831b1..184d6566f 100644 --- a/openstack-client-connectors/jersey2-connector/pom.xml +++ b/openstack-client-connectors/jersey2-connector/pom.xml @@ -4,7 +4,7 @@ com.woorea openstack-client-connectors - 3.2.4-SNAPSHOT + 3.2.4 jersey2-connector OpenStack Jersey2 Connector @@ -27,7 +27,7 @@ com.woorea openstack-client - 3.2.4-SNAPSHOT + 3.2.4 diff --git a/openstack-client-connectors/pom.xml b/openstack-client-connectors/pom.xml index 712a34193..f6dc9d3cf 100644 --- a/openstack-client-connectors/pom.xml +++ b/openstack-client-connectors/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.4-SNAPSHOT + 3.2.4 openstack-client-connectors OpenStack Client Connectors @@ -42,7 +42,7 @@ com.woorea openstack-client - 3.2.4-SNAPSHOT + 3.2.4 \ No newline at end of file diff --git a/openstack-client-connectors/resteasy-connector/pom.xml b/openstack-client-connectors/resteasy-connector/pom.xml index 17c5fd733..039da6d27 100644 --- a/openstack-client-connectors/resteasy-connector/pom.xml +++ b/openstack-client-connectors/resteasy-connector/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-client-connectors - 3.2.4-SNAPSHOT + 3.2.4 resteasy-connector OpenStack RESTEasy Connector diff --git a/openstack-client/pom.xml b/openstack-client/pom.xml index 599084dfb..bcb82e00b 100644 --- a/openstack-client/pom.xml +++ b/openstack-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.4-SNAPSHOT + 3.2.4 openstack-client OpenStack Client diff --git a/openstack-console/pom.xml b/openstack-console/pom.xml index 06796cd7f..a7be1ac18 100644 --- a/openstack-console/pom.xml +++ b/openstack-console/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.4-SNAPSHOT + 3.2.4 openstack-console OpenStack Console @@ -22,12 +22,12 @@ com.woorea keystone-client - 3.2.4-SNAPSHOT + 3.2.4 com.woorea nova-client - 3.2.4-SNAPSHOT + 3.2.4 diff --git a/openstack-examples/pom.xml b/openstack-examples/pom.xml index 1469ddf3d..58621a0e1 100644 --- a/openstack-examples/pom.xml +++ b/openstack-examples/pom.xml @@ -3,11 +3,11 @@ com.woorea openstack-java-sdk - 3.2.4-SNAPSHOT + 3.2.4 UTF-8 - 3.2.4-SNAPSHOT + 3.2.4 openstack-examples OpenStack Examples diff --git a/pom.xml b/pom.xml index c047c40f0..63a2b4cec 100644 --- a/pom.xml +++ b/pom.xml @@ -2,7 +2,7 @@ 4.0.0 com.woorea openstack-java-sdk - 3.2.4-SNAPSHOT + 3.2.4 pom OpenStack Java SDK OpenStack Java SDK diff --git a/quantum-client/pom.xml b/quantum-client/pom.xml index 8d2b1bc38..899d90898 100644 --- a/quantum-client/pom.xml +++ b/quantum-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.4-SNAPSHOT + 3.2.4 quantum-client OpenStack Quantum Client @@ -12,12 +12,12 @@ com.woorea openstack-client - 3.2.4-SNAPSHOT + 3.2.4 com.woorea quantum-model - 3.2.4-SNAPSHOT + 3.2.4 diff --git a/quantum-model/pom.xml b/quantum-model/pom.xml index 29d52ac1d..baf90c386 100644 --- a/quantum-model/pom.xml +++ b/quantum-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.4-SNAPSHOT + 3.2.4 quantum-model OpenStack Quantum Model diff --git a/swift-client/pom.xml b/swift-client/pom.xml index 643c10c3a..fca0888b9 100644 --- a/swift-client/pom.xml +++ b/swift-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.4-SNAPSHOT + 3.2.4 swift-client OpenStack Swift Client @@ -12,12 +12,12 @@ com.woorea openstack-client - 3.2.4-SNAPSHOT + 3.2.4 com.woorea swift-model - 3.2.4-SNAPSHOT + 3.2.4 \ No newline at end of file diff --git a/swift-model/pom.xml b/swift-model/pom.xml index 52c8d9841..bfc454c0e 100644 --- a/swift-model/pom.xml +++ b/swift-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.4-SNAPSHOT + 3.2.4 swift-model OpenStack Swift Model From e235d79aa2161b3be0b46747d4c5c072ecccbf28 Mon Sep 17 00:00:00 2001 From: Dominik Holler Date: Tue, 14 Aug 2018 17:17:24 +0200 Subject: [PATCH 124/144] [maven-release-plugin] prepare for next development iteration --- ceilometer-client/pom.xml | 6 +++--- ceilometer-model/pom.xml | 2 +- cinder-client/pom.xml | 6 +++--- cinder-model/pom.xml | 2 +- glance-client/pom.xml | 6 +++--- glance-model/pom.xml | 2 +- heat-client/pom.xml | 6 +++--- heat-model/pom.xml | 2 +- keystone-client/pom.xml | 6 +++--- keystone-model/pom.xml | 2 +- nova-client/pom.xml | 6 +++--- nova-model/pom.xml | 2 +- openstack-client-connectors/jersey-connector/pom.xml | 2 +- openstack-client-connectors/jersey2-connector/pom.xml | 4 ++-- openstack-client-connectors/pom.xml | 4 ++-- openstack-client-connectors/resteasy-connector/pom.xml | 2 +- openstack-client/pom.xml | 2 +- openstack-console/pom.xml | 6 +++--- openstack-examples/pom.xml | 4 ++-- pom.xml | 2 +- quantum-client/pom.xml | 6 +++--- quantum-model/pom.xml | 2 +- swift-client/pom.xml | 6 +++--- swift-model/pom.xml | 2 +- 24 files changed, 45 insertions(+), 45 deletions(-) diff --git a/ceilometer-client/pom.xml b/ceilometer-client/pom.xml index 0ea68bae7..4628e3c70 100644 --- a/ceilometer-client/pom.xml +++ b/ceilometer-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.4 + 3.2.5-SNAPSHOT ceilometer-client OpenStack Ceilometer Client @@ -12,12 +12,12 @@ com.woorea openstack-client - 3.2.4 + 3.2.5-SNAPSHOT com.woorea ceilometer-model - 3.2.4 + 3.2.5-SNAPSHOT diff --git a/ceilometer-model/pom.xml b/ceilometer-model/pom.xml index 5ab92bfbd..6192dd760 100644 --- a/ceilometer-model/pom.xml +++ b/ceilometer-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.4 + 3.2.5-SNAPSHOT ceilometer-model OpenStack Ceilometer Model diff --git a/cinder-client/pom.xml b/cinder-client/pom.xml index 9c86e149a..982ac0f97 100644 --- a/cinder-client/pom.xml +++ b/cinder-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.4 + 3.2.5-SNAPSHOT cinder-client OpenStack Cinder Client @@ -12,13 +12,13 @@ com.woorea openstack-client - 3.2.4 + 3.2.5-SNAPSHOT com.woorea cinder-model - 3.2.4 + 3.2.5-SNAPSHOT \ No newline at end of file diff --git a/cinder-model/pom.xml b/cinder-model/pom.xml index f55f1f0de..6106d1113 100644 --- a/cinder-model/pom.xml +++ b/cinder-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.4 + 3.2.5-SNAPSHOT cinder-model OpenStack Cinder Model diff --git a/glance-client/pom.xml b/glance-client/pom.xml index d890824d6..d857e4c8f 100644 --- a/glance-client/pom.xml +++ b/glance-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.4 + 3.2.5-SNAPSHOT glance-client OpenStack Glance Client @@ -12,13 +12,13 @@ com.woorea openstack-client - 3.2.4 + 3.2.5-SNAPSHOT com.woorea glance-model - 3.2.4 + 3.2.5-SNAPSHOT \ No newline at end of file diff --git a/glance-model/pom.xml b/glance-model/pom.xml index facdef831..e0eeb45db 100644 --- a/glance-model/pom.xml +++ b/glance-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.4 + 3.2.5-SNAPSHOT glance-model OpenStack Glance Model diff --git a/heat-client/pom.xml b/heat-client/pom.xml index 903073c97..fdd885a3a 100644 --- a/heat-client/pom.xml +++ b/heat-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.4 + 3.2.5-SNAPSHOT heat-client OpenStack Heat Client @@ -12,13 +12,13 @@ com.woorea openstack-client - 3.2.4 + 3.2.5-SNAPSHOT com.woorea heat-model - 3.2.4 + 3.2.5-SNAPSHOT \ No newline at end of file diff --git a/heat-model/pom.xml b/heat-model/pom.xml index b661b2fec..e44444b9a 100644 --- a/heat-model/pom.xml +++ b/heat-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.4 + 3.2.5-SNAPSHOT heat-model OpenStack Heat Model diff --git a/keystone-client/pom.xml b/keystone-client/pom.xml index 256379fab..cadbed05f 100644 --- a/keystone-client/pom.xml +++ b/keystone-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.4 + 3.2.5-SNAPSHOT keystone-client OpenStack Keystone Client @@ -12,12 +12,12 @@ com.woorea openstack-client - 3.2.4 + 3.2.5-SNAPSHOT com.woorea keystone-model - 3.2.4 + 3.2.5-SNAPSHOT \ No newline at end of file diff --git a/keystone-model/pom.xml b/keystone-model/pom.xml index 8bd42b553..6b8404a3e 100644 --- a/keystone-model/pom.xml +++ b/keystone-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.4 + 3.2.5-SNAPSHOT keystone-model OpenStack Keystone Model diff --git a/nova-client/pom.xml b/nova-client/pom.xml index 8ecb106a9..2a45b7abf 100644 --- a/nova-client/pom.xml +++ b/nova-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.4 + 3.2.5-SNAPSHOT nova-client OpenStack Nova Client @@ -12,12 +12,12 @@ com.woorea openstack-client - 3.2.4 + 3.2.5-SNAPSHOT com.woorea nova-model - 3.2.4 + 3.2.5-SNAPSHOT \ No newline at end of file diff --git a/nova-model/pom.xml b/nova-model/pom.xml index 58b3f8288..cdf3073b1 100644 --- a/nova-model/pom.xml +++ b/nova-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.4 + 3.2.5-SNAPSHOT nova-model OpenStack Nova Model diff --git a/openstack-client-connectors/jersey-connector/pom.xml b/openstack-client-connectors/jersey-connector/pom.xml index 7d7664b30..99da61d9c 100644 --- a/openstack-client-connectors/jersey-connector/pom.xml +++ b/openstack-client-connectors/jersey-connector/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-client-connectors - 3.2.4 + 3.2.5-SNAPSHOT jersey-connector OpenStack Jersey Connector diff --git a/openstack-client-connectors/jersey2-connector/pom.xml b/openstack-client-connectors/jersey2-connector/pom.xml index 184d6566f..3dbed3196 100644 --- a/openstack-client-connectors/jersey2-connector/pom.xml +++ b/openstack-client-connectors/jersey2-connector/pom.xml @@ -4,7 +4,7 @@ com.woorea openstack-client-connectors - 3.2.4 + 3.2.5-SNAPSHOT jersey2-connector OpenStack Jersey2 Connector @@ -27,7 +27,7 @@ com.woorea openstack-client - 3.2.4 + 3.2.5-SNAPSHOT diff --git a/openstack-client-connectors/pom.xml b/openstack-client-connectors/pom.xml index f6dc9d3cf..71c25b49e 100644 --- a/openstack-client-connectors/pom.xml +++ b/openstack-client-connectors/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.4 + 3.2.5-SNAPSHOT openstack-client-connectors OpenStack Client Connectors @@ -42,7 +42,7 @@ com.woorea openstack-client - 3.2.4 + 3.2.5-SNAPSHOT \ No newline at end of file diff --git a/openstack-client-connectors/resteasy-connector/pom.xml b/openstack-client-connectors/resteasy-connector/pom.xml index 039da6d27..6853baad0 100644 --- a/openstack-client-connectors/resteasy-connector/pom.xml +++ b/openstack-client-connectors/resteasy-connector/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-client-connectors - 3.2.4 + 3.2.5-SNAPSHOT resteasy-connector OpenStack RESTEasy Connector diff --git a/openstack-client/pom.xml b/openstack-client/pom.xml index bcb82e00b..29afacbfa 100644 --- a/openstack-client/pom.xml +++ b/openstack-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.4 + 3.2.5-SNAPSHOT openstack-client OpenStack Client diff --git a/openstack-console/pom.xml b/openstack-console/pom.xml index a7be1ac18..b4fc7839c 100644 --- a/openstack-console/pom.xml +++ b/openstack-console/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.4 + 3.2.5-SNAPSHOT openstack-console OpenStack Console @@ -22,12 +22,12 @@ com.woorea keystone-client - 3.2.4 + 3.2.5-SNAPSHOT com.woorea nova-client - 3.2.4 + 3.2.5-SNAPSHOT diff --git a/openstack-examples/pom.xml b/openstack-examples/pom.xml index 58621a0e1..690e5606f 100644 --- a/openstack-examples/pom.xml +++ b/openstack-examples/pom.xml @@ -3,11 +3,11 @@ com.woorea openstack-java-sdk - 3.2.4 + 3.2.5-SNAPSHOT UTF-8 - 3.2.4 + 3.2.5-SNAPSHOT openstack-examples OpenStack Examples diff --git a/pom.xml b/pom.xml index 63a2b4cec..a993e34dc 100644 --- a/pom.xml +++ b/pom.xml @@ -2,7 +2,7 @@ 4.0.0 com.woorea openstack-java-sdk - 3.2.4 + 3.2.5-SNAPSHOT pom OpenStack Java SDK OpenStack Java SDK diff --git a/quantum-client/pom.xml b/quantum-client/pom.xml index 899d90898..0be8a1282 100644 --- a/quantum-client/pom.xml +++ b/quantum-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.4 + 3.2.5-SNAPSHOT quantum-client OpenStack Quantum Client @@ -12,12 +12,12 @@ com.woorea openstack-client - 3.2.4 + 3.2.5-SNAPSHOT com.woorea quantum-model - 3.2.4 + 3.2.5-SNAPSHOT diff --git a/quantum-model/pom.xml b/quantum-model/pom.xml index baf90c386..6ed8db4d6 100644 --- a/quantum-model/pom.xml +++ b/quantum-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.4 + 3.2.5-SNAPSHOT quantum-model OpenStack Quantum Model diff --git a/swift-client/pom.xml b/swift-client/pom.xml index fca0888b9..08e0c767b 100644 --- a/swift-client/pom.xml +++ b/swift-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.4 + 3.2.5-SNAPSHOT swift-client OpenStack Swift Client @@ -12,12 +12,12 @@ com.woorea openstack-client - 3.2.4 + 3.2.5-SNAPSHOT com.woorea swift-model - 3.2.4 + 3.2.5-SNAPSHOT \ No newline at end of file diff --git a/swift-model/pom.xml b/swift-model/pom.xml index bfc454c0e..b97619f8a 100644 --- a/swift-model/pom.xml +++ b/swift-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.4 + 3.2.5-SNAPSHOT swift-model OpenStack Swift Model From 35788166003da8e785154b9c90070105ee48c610 Mon Sep 17 00:00:00 2001 From: Miguel Duarte Barroso Date: Wed, 14 Nov 2018 13:55:59 +0100 Subject: [PATCH 125/144] Implement the port_security_enabled attribute for neutron networks The port_security_enabled attribute is used to specify the default port security value of all ports created in the given network. --- NEWS.md | 3 +++ .../openstack/quantum/model/Network.java | 26 ++++++++++++++++++- .../openstack/quantum/model/NetworkTest.java | 5 ++++ 3 files changed, 33 insertions(+), 1 deletion(-) diff --git a/NEWS.md b/NEWS.md index 6dec902f0..72c0742d1 100644 --- a/NEWS.md +++ b/NEWS.md @@ -1,3 +1,6 @@ +# 3.2.5 / 2018-11-14 +* neutron: Add support for `port_security_enabled` on Networks + # 3.2.4 / 2018 * Improved backward compatibility to 3.1.3 diff --git a/quantum-model/src/main/java/com/woorea/openstack/quantum/model/Network.java b/quantum-model/src/main/java/com/woorea/openstack/quantum/model/Network.java index 853858fc5..40e037018 100644 --- a/quantum-model/src/main/java/com/woorea/openstack/quantum/model/Network.java +++ b/quantum-model/src/main/java/com/woorea/openstack/quantum/model/Network.java @@ -43,6 +43,9 @@ public class Network implements Serializable { private Integer mtu; + @JsonProperty("port_security_enabled") + private Boolean portSecurityEnabled; + /** * @return the status */ @@ -276,6 +279,26 @@ public void setMtu(Integer mtu) { this.mtu = mtu; } + /** + * @return the portSecurityEnabled + */ + @JsonIgnore + public boolean isPortSecurityEnabled() { + return portSecurityEnabled; + } + + public Boolean getPortSecurityEnabled() { + return portSecurityEnabled; + } + + /** + * + * @param portSecurityEnabled enable / disable the default portSecurityEnabled for all future ports in this network + */ + public void setPortSecurityEnabled(Boolean portSecurityEnabled) { + this.portSecurityEnabled = portSecurityEnabled; + } + /* * (non-Javadoc) * @@ -287,6 +310,7 @@ public String toString() { + subnets + ", status=" + status + ", admin_state_up=" + adminStateUp + ", tenant_id=" + tenantId + ", shared=" + shared + ", mtu=" + mtu + ", provider:physical_network=" + providerPhysicalNetwork + ", provider:network_type=" + providerNetworkType + ", router:external=" + - routerExternal + ", provider:segmentation_id=" + providerSegmentationId + "]"; + routerExternal + ", provider:segmentation_id=" + providerSegmentationId + + ", port_security_enabled=" + portSecurityEnabled + "]"; } } diff --git a/quantum-model/src/test/java/com/woorea/openstack/quantum/model/NetworkTest.java b/quantum-model/src/test/java/com/woorea/openstack/quantum/model/NetworkTest.java index b6255b993..d0649fb81 100644 --- a/quantum-model/src/test/java/com/woorea/openstack/quantum/model/NetworkTest.java +++ b/quantum-model/src/test/java/com/woorea/openstack/quantum/model/NetworkTest.java @@ -37,6 +37,8 @@ public class NetworkTest { private static final String ROUTER_EXTERNAL = "routerExternal"; + private static final Boolean PORT_SECURITY_ENABLED = Boolean.FALSE; + /** * JSON with read only attributes. */ @@ -70,6 +72,7 @@ public void testSerialization() throws Exception { network.setName(NAME); network.setShared(SHARED); network.setTenantId(TENANT_ID); + network.setPortSecurityEnabled(PORT_SECURITY_ENABLED); serializedNetwork = objectMapper.writeValueAsString(network); assertThat(serializedNetwork, not(containsString(ID))); @@ -83,6 +86,7 @@ public void testSerialization() throws Exception { assertThat(serializedNetwork, containsString(PROVIDER_NETWORK_TYPE)); assertThat(serializedNetwork, containsString(PROVIDER_PHYSICAL_NETWORK)); assertThat(serializedNetwork, containsString(Integer.toString(PROVIDER_SEGMENTATION_ID))); + assertThat(serializedNetwork, containsString("\"port_security_enabled\" : " + PORT_SECURITY_ENABLED)); } @Test @@ -115,5 +119,6 @@ public void testDeserialization() throws Exception { assertThat(network.getProviderNetworkType(), is(equalTo(PROVIDER_NETWORK_TYPE))); assertThat(network.getProviderPhysicalNetwork(), is(equalTo(PROVIDER_PHYSICAL_NETWORK))); assertThat(network.getProviderSegmentationId(), is(equalTo(PROVIDER_SEGMENTATION_ID))); + assertThat(network.getPortSecurityEnabled(), is(equalTo(PORT_SECURITY_ENABLED))); } } From b152d3cded1e0acb3359fd9b777983e268e3a938 Mon Sep 17 00:00:00 2001 From: Dominik Holler Date: Thu, 22 Nov 2018 13:30:20 +0100 Subject: [PATCH 126/144] [maven-release-plugin] prepare release openstack-java-sdk-3.2.5 --- ceilometer-client/pom.xml | 6 +++--- ceilometer-model/pom.xml | 2 +- cinder-client/pom.xml | 6 +++--- cinder-model/pom.xml | 2 +- glance-client/pom.xml | 6 +++--- glance-model/pom.xml | 2 +- heat-client/pom.xml | 6 +++--- heat-model/pom.xml | 2 +- keystone-client/pom.xml | 6 +++--- keystone-model/pom.xml | 2 +- nova-client/pom.xml | 6 +++--- nova-model/pom.xml | 2 +- openstack-client-connectors/jersey2-connector/pom.xml | 4 ++-- openstack-client-connectors/pom.xml | 4 ++-- openstack-client-connectors/resteasy-connector/pom.xml | 2 +- openstack-client/pom.xml | 2 +- openstack-console/pom.xml | 6 +++--- openstack-examples/pom.xml | 4 ++-- pom.xml | 2 +- quantum-client/pom.xml | 6 +++--- quantum-model/pom.xml | 2 +- swift-client/pom.xml | 6 +++--- swift-model/pom.xml | 2 +- 23 files changed, 44 insertions(+), 44 deletions(-) diff --git a/ceilometer-client/pom.xml b/ceilometer-client/pom.xml index 4628e3c70..041015b08 100644 --- a/ceilometer-client/pom.xml +++ b/ceilometer-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.5-SNAPSHOT + 3.2.5 ceilometer-client OpenStack Ceilometer Client @@ -12,12 +12,12 @@ com.woorea openstack-client - 3.2.5-SNAPSHOT + 3.2.5 com.woorea ceilometer-model - 3.2.5-SNAPSHOT + 3.2.5 diff --git a/ceilometer-model/pom.xml b/ceilometer-model/pom.xml index 6192dd760..d9912ee76 100644 --- a/ceilometer-model/pom.xml +++ b/ceilometer-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.5-SNAPSHOT + 3.2.5 ceilometer-model OpenStack Ceilometer Model diff --git a/cinder-client/pom.xml b/cinder-client/pom.xml index 982ac0f97..445d947da 100644 --- a/cinder-client/pom.xml +++ b/cinder-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.5-SNAPSHOT + 3.2.5 cinder-client OpenStack Cinder Client @@ -12,13 +12,13 @@ com.woorea openstack-client - 3.2.5-SNAPSHOT + 3.2.5 com.woorea cinder-model - 3.2.5-SNAPSHOT + 3.2.5 \ No newline at end of file diff --git a/cinder-model/pom.xml b/cinder-model/pom.xml index 6106d1113..3cb77a469 100644 --- a/cinder-model/pom.xml +++ b/cinder-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.5-SNAPSHOT + 3.2.5 cinder-model OpenStack Cinder Model diff --git a/glance-client/pom.xml b/glance-client/pom.xml index d857e4c8f..b137a676e 100644 --- a/glance-client/pom.xml +++ b/glance-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.5-SNAPSHOT + 3.2.5 glance-client OpenStack Glance Client @@ -12,13 +12,13 @@ com.woorea openstack-client - 3.2.5-SNAPSHOT + 3.2.5 com.woorea glance-model - 3.2.5-SNAPSHOT + 3.2.5 \ No newline at end of file diff --git a/glance-model/pom.xml b/glance-model/pom.xml index e0eeb45db..77440c4e6 100644 --- a/glance-model/pom.xml +++ b/glance-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.5-SNAPSHOT + 3.2.5 glance-model OpenStack Glance Model diff --git a/heat-client/pom.xml b/heat-client/pom.xml index fdd885a3a..b3d20890a 100644 --- a/heat-client/pom.xml +++ b/heat-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.5-SNAPSHOT + 3.2.5 heat-client OpenStack Heat Client @@ -12,13 +12,13 @@ com.woorea openstack-client - 3.2.5-SNAPSHOT + 3.2.5 com.woorea heat-model - 3.2.5-SNAPSHOT + 3.2.5 \ No newline at end of file diff --git a/heat-model/pom.xml b/heat-model/pom.xml index e44444b9a..3dd48b3f2 100644 --- a/heat-model/pom.xml +++ b/heat-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.5-SNAPSHOT + 3.2.5 heat-model OpenStack Heat Model diff --git a/keystone-client/pom.xml b/keystone-client/pom.xml index cadbed05f..5728c346b 100644 --- a/keystone-client/pom.xml +++ b/keystone-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.5-SNAPSHOT + 3.2.5 keystone-client OpenStack Keystone Client @@ -12,12 +12,12 @@ com.woorea openstack-client - 3.2.5-SNAPSHOT + 3.2.5 com.woorea keystone-model - 3.2.5-SNAPSHOT + 3.2.5 \ No newline at end of file diff --git a/keystone-model/pom.xml b/keystone-model/pom.xml index 6b8404a3e..76491670f 100644 --- a/keystone-model/pom.xml +++ b/keystone-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.5-SNAPSHOT + 3.2.5 keystone-model OpenStack Keystone Model diff --git a/nova-client/pom.xml b/nova-client/pom.xml index 2a45b7abf..5334816d5 100644 --- a/nova-client/pom.xml +++ b/nova-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.5-SNAPSHOT + 3.2.5 nova-client OpenStack Nova Client @@ -12,12 +12,12 @@ com.woorea openstack-client - 3.2.5-SNAPSHOT + 3.2.5 com.woorea nova-model - 3.2.5-SNAPSHOT + 3.2.5 \ No newline at end of file diff --git a/nova-model/pom.xml b/nova-model/pom.xml index cdf3073b1..b6a27cc1b 100644 --- a/nova-model/pom.xml +++ b/nova-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.5-SNAPSHOT + 3.2.5 nova-model OpenStack Nova Model diff --git a/openstack-client-connectors/jersey2-connector/pom.xml b/openstack-client-connectors/jersey2-connector/pom.xml index 3dbed3196..c44ce0f87 100644 --- a/openstack-client-connectors/jersey2-connector/pom.xml +++ b/openstack-client-connectors/jersey2-connector/pom.xml @@ -4,7 +4,7 @@ com.woorea openstack-client-connectors - 3.2.5-SNAPSHOT + 3.2.5 jersey2-connector OpenStack Jersey2 Connector @@ -27,7 +27,7 @@ com.woorea openstack-client - 3.2.5-SNAPSHOT + 3.2.5 diff --git a/openstack-client-connectors/pom.xml b/openstack-client-connectors/pom.xml index 71c25b49e..61a917f7f 100644 --- a/openstack-client-connectors/pom.xml +++ b/openstack-client-connectors/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.5-SNAPSHOT + 3.2.5 openstack-client-connectors OpenStack Client Connectors @@ -42,7 +42,7 @@ com.woorea openstack-client - 3.2.5-SNAPSHOT + 3.2.5 \ No newline at end of file diff --git a/openstack-client-connectors/resteasy-connector/pom.xml b/openstack-client-connectors/resteasy-connector/pom.xml index 6853baad0..330888fe5 100644 --- a/openstack-client-connectors/resteasy-connector/pom.xml +++ b/openstack-client-connectors/resteasy-connector/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-client-connectors - 3.2.5-SNAPSHOT + 3.2.5 resteasy-connector OpenStack RESTEasy Connector diff --git a/openstack-client/pom.xml b/openstack-client/pom.xml index 29afacbfa..fa39cee5a 100644 --- a/openstack-client/pom.xml +++ b/openstack-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.5-SNAPSHOT + 3.2.5 openstack-client OpenStack Client diff --git a/openstack-console/pom.xml b/openstack-console/pom.xml index b4fc7839c..6e6bb02f1 100644 --- a/openstack-console/pom.xml +++ b/openstack-console/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.5-SNAPSHOT + 3.2.5 openstack-console OpenStack Console @@ -22,12 +22,12 @@ com.woorea keystone-client - 3.2.5-SNAPSHOT + 3.2.5 com.woorea nova-client - 3.2.5-SNAPSHOT + 3.2.5 diff --git a/openstack-examples/pom.xml b/openstack-examples/pom.xml index 690e5606f..189e412a9 100644 --- a/openstack-examples/pom.xml +++ b/openstack-examples/pom.xml @@ -3,11 +3,11 @@ com.woorea openstack-java-sdk - 3.2.5-SNAPSHOT + 3.2.5 UTF-8 - 3.2.5-SNAPSHOT + 3.2.5 openstack-examples OpenStack Examples diff --git a/pom.xml b/pom.xml index a993e34dc..76e6846b7 100644 --- a/pom.xml +++ b/pom.xml @@ -2,7 +2,7 @@ 4.0.0 com.woorea openstack-java-sdk - 3.2.5-SNAPSHOT + 3.2.5 pom OpenStack Java SDK OpenStack Java SDK diff --git a/quantum-client/pom.xml b/quantum-client/pom.xml index 0be8a1282..da3bb93ef 100644 --- a/quantum-client/pom.xml +++ b/quantum-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.5-SNAPSHOT + 3.2.5 quantum-client OpenStack Quantum Client @@ -12,12 +12,12 @@ com.woorea openstack-client - 3.2.5-SNAPSHOT + 3.2.5 com.woorea quantum-model - 3.2.5-SNAPSHOT + 3.2.5 diff --git a/quantum-model/pom.xml b/quantum-model/pom.xml index 6ed8db4d6..08c193c0b 100644 --- a/quantum-model/pom.xml +++ b/quantum-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.5-SNAPSHOT + 3.2.5 quantum-model OpenStack Quantum Model diff --git a/swift-client/pom.xml b/swift-client/pom.xml index 08e0c767b..c11b7e4de 100644 --- a/swift-client/pom.xml +++ b/swift-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.5-SNAPSHOT + 3.2.5 swift-client OpenStack Swift Client @@ -12,12 +12,12 @@ com.woorea openstack-client - 3.2.5-SNAPSHOT + 3.2.5 com.woorea swift-model - 3.2.5-SNAPSHOT + 3.2.5 \ No newline at end of file diff --git a/swift-model/pom.xml b/swift-model/pom.xml index b97619f8a..ae4d9d4f5 100644 --- a/swift-model/pom.xml +++ b/swift-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.5-SNAPSHOT + 3.2.5 swift-model OpenStack Swift Model From 82923e21771d371cec8bab9e74428479d73f61c1 Mon Sep 17 00:00:00 2001 From: Dominik Holler Date: Thu, 22 Nov 2018 13:30:51 +0100 Subject: [PATCH 127/144] [maven-release-plugin] prepare for next development iteration --- ceilometer-client/pom.xml | 6 +++--- ceilometer-model/pom.xml | 2 +- cinder-client/pom.xml | 6 +++--- cinder-model/pom.xml | 2 +- glance-client/pom.xml | 6 +++--- glance-model/pom.xml | 2 +- heat-client/pom.xml | 6 +++--- heat-model/pom.xml | 2 +- keystone-client/pom.xml | 6 +++--- keystone-model/pom.xml | 2 +- nova-client/pom.xml | 6 +++--- nova-model/pom.xml | 2 +- openstack-client-connectors/jersey2-connector/pom.xml | 4 ++-- openstack-client-connectors/pom.xml | 4 ++-- openstack-client-connectors/resteasy-connector/pom.xml | 2 +- openstack-client/pom.xml | 2 +- openstack-console/pom.xml | 6 +++--- openstack-examples/pom.xml | 2 +- pom.xml | 2 +- quantum-client/pom.xml | 6 +++--- quantum-model/pom.xml | 2 +- swift-client/pom.xml | 6 +++--- swift-model/pom.xml | 2 +- 23 files changed, 43 insertions(+), 43 deletions(-) diff --git a/ceilometer-client/pom.xml b/ceilometer-client/pom.xml index 041015b08..63a16992f 100644 --- a/ceilometer-client/pom.xml +++ b/ceilometer-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.5 + 3.2.6-SNAPSHOT ceilometer-client OpenStack Ceilometer Client @@ -12,12 +12,12 @@ com.woorea openstack-client - 3.2.5 + 3.2.6-SNAPSHOT com.woorea ceilometer-model - 3.2.5 + 3.2.6-SNAPSHOT diff --git a/ceilometer-model/pom.xml b/ceilometer-model/pom.xml index d9912ee76..3c6c7ddc8 100644 --- a/ceilometer-model/pom.xml +++ b/ceilometer-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.5 + 3.2.6-SNAPSHOT ceilometer-model OpenStack Ceilometer Model diff --git a/cinder-client/pom.xml b/cinder-client/pom.xml index 445d947da..30aced054 100644 --- a/cinder-client/pom.xml +++ b/cinder-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.5 + 3.2.6-SNAPSHOT cinder-client OpenStack Cinder Client @@ -12,13 +12,13 @@ com.woorea openstack-client - 3.2.5 + 3.2.6-SNAPSHOT com.woorea cinder-model - 3.2.5 + 3.2.6-SNAPSHOT \ No newline at end of file diff --git a/cinder-model/pom.xml b/cinder-model/pom.xml index 3cb77a469..75ad7c4b7 100644 --- a/cinder-model/pom.xml +++ b/cinder-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.5 + 3.2.6-SNAPSHOT cinder-model OpenStack Cinder Model diff --git a/glance-client/pom.xml b/glance-client/pom.xml index b137a676e..2a35404e9 100644 --- a/glance-client/pom.xml +++ b/glance-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.5 + 3.2.6-SNAPSHOT glance-client OpenStack Glance Client @@ -12,13 +12,13 @@ com.woorea openstack-client - 3.2.5 + 3.2.6-SNAPSHOT com.woorea glance-model - 3.2.5 + 3.2.6-SNAPSHOT \ No newline at end of file diff --git a/glance-model/pom.xml b/glance-model/pom.xml index 77440c4e6..38fbb18f0 100644 --- a/glance-model/pom.xml +++ b/glance-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.5 + 3.2.6-SNAPSHOT glance-model OpenStack Glance Model diff --git a/heat-client/pom.xml b/heat-client/pom.xml index b3d20890a..e0f6def87 100644 --- a/heat-client/pom.xml +++ b/heat-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.5 + 3.2.6-SNAPSHOT heat-client OpenStack Heat Client @@ -12,13 +12,13 @@ com.woorea openstack-client - 3.2.5 + 3.2.6-SNAPSHOT com.woorea heat-model - 3.2.5 + 3.2.6-SNAPSHOT \ No newline at end of file diff --git a/heat-model/pom.xml b/heat-model/pom.xml index 3dd48b3f2..6a36a1dce 100644 --- a/heat-model/pom.xml +++ b/heat-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.5 + 3.2.6-SNAPSHOT heat-model OpenStack Heat Model diff --git a/keystone-client/pom.xml b/keystone-client/pom.xml index 5728c346b..9cd2b15cb 100644 --- a/keystone-client/pom.xml +++ b/keystone-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.5 + 3.2.6-SNAPSHOT keystone-client OpenStack Keystone Client @@ -12,12 +12,12 @@ com.woorea openstack-client - 3.2.5 + 3.2.6-SNAPSHOT com.woorea keystone-model - 3.2.5 + 3.2.6-SNAPSHOT \ No newline at end of file diff --git a/keystone-model/pom.xml b/keystone-model/pom.xml index 76491670f..0a562f77d 100644 --- a/keystone-model/pom.xml +++ b/keystone-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.5 + 3.2.6-SNAPSHOT keystone-model OpenStack Keystone Model diff --git a/nova-client/pom.xml b/nova-client/pom.xml index 5334816d5..8dc894fb7 100644 --- a/nova-client/pom.xml +++ b/nova-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.5 + 3.2.6-SNAPSHOT nova-client OpenStack Nova Client @@ -12,12 +12,12 @@ com.woorea openstack-client - 3.2.5 + 3.2.6-SNAPSHOT com.woorea nova-model - 3.2.5 + 3.2.6-SNAPSHOT \ No newline at end of file diff --git a/nova-model/pom.xml b/nova-model/pom.xml index b6a27cc1b..813a7f228 100644 --- a/nova-model/pom.xml +++ b/nova-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.5 + 3.2.6-SNAPSHOT nova-model OpenStack Nova Model diff --git a/openstack-client-connectors/jersey2-connector/pom.xml b/openstack-client-connectors/jersey2-connector/pom.xml index c44ce0f87..f99daabe5 100644 --- a/openstack-client-connectors/jersey2-connector/pom.xml +++ b/openstack-client-connectors/jersey2-connector/pom.xml @@ -4,7 +4,7 @@ com.woorea openstack-client-connectors - 3.2.5 + 3.2.6-SNAPSHOT jersey2-connector OpenStack Jersey2 Connector @@ -27,7 +27,7 @@ com.woorea openstack-client - 3.2.5 + 3.2.6-SNAPSHOT diff --git a/openstack-client-connectors/pom.xml b/openstack-client-connectors/pom.xml index 61a917f7f..36ef44181 100644 --- a/openstack-client-connectors/pom.xml +++ b/openstack-client-connectors/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.5 + 3.2.6-SNAPSHOT openstack-client-connectors OpenStack Client Connectors @@ -42,7 +42,7 @@ com.woorea openstack-client - 3.2.5 + 3.2.6-SNAPSHOT \ No newline at end of file diff --git a/openstack-client-connectors/resteasy-connector/pom.xml b/openstack-client-connectors/resteasy-connector/pom.xml index 330888fe5..dbf3fdea2 100644 --- a/openstack-client-connectors/resteasy-connector/pom.xml +++ b/openstack-client-connectors/resteasy-connector/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-client-connectors - 3.2.5 + 3.2.6-SNAPSHOT resteasy-connector OpenStack RESTEasy Connector diff --git a/openstack-client/pom.xml b/openstack-client/pom.xml index fa39cee5a..e40d0ad0a 100644 --- a/openstack-client/pom.xml +++ b/openstack-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.5 + 3.2.6-SNAPSHOT openstack-client OpenStack Client diff --git a/openstack-console/pom.xml b/openstack-console/pom.xml index 6e6bb02f1..6c9e76e09 100644 --- a/openstack-console/pom.xml +++ b/openstack-console/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.5 + 3.2.6-SNAPSHOT openstack-console OpenStack Console @@ -22,12 +22,12 @@ com.woorea keystone-client - 3.2.5 + 3.2.6-SNAPSHOT com.woorea nova-client - 3.2.5 + 3.2.6-SNAPSHOT diff --git a/openstack-examples/pom.xml b/openstack-examples/pom.xml index 189e412a9..f643a0621 100644 --- a/openstack-examples/pom.xml +++ b/openstack-examples/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.5 + 3.2.6-SNAPSHOT UTF-8 diff --git a/pom.xml b/pom.xml index 76e6846b7..e4f7f8678 100644 --- a/pom.xml +++ b/pom.xml @@ -2,7 +2,7 @@ 4.0.0 com.woorea openstack-java-sdk - 3.2.5 + 3.2.6-SNAPSHOT pom OpenStack Java SDK OpenStack Java SDK diff --git a/quantum-client/pom.xml b/quantum-client/pom.xml index da3bb93ef..4d202cf45 100644 --- a/quantum-client/pom.xml +++ b/quantum-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.5 + 3.2.6-SNAPSHOT quantum-client OpenStack Quantum Client @@ -12,12 +12,12 @@ com.woorea openstack-client - 3.2.5 + 3.2.6-SNAPSHOT com.woorea quantum-model - 3.2.5 + 3.2.6-SNAPSHOT diff --git a/quantum-model/pom.xml b/quantum-model/pom.xml index 08c193c0b..551cc2d4e 100644 --- a/quantum-model/pom.xml +++ b/quantum-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.5 + 3.2.6-SNAPSHOT quantum-model OpenStack Quantum Model diff --git a/swift-client/pom.xml b/swift-client/pom.xml index c11b7e4de..89085796e 100644 --- a/swift-client/pom.xml +++ b/swift-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.5 + 3.2.6-SNAPSHOT swift-client OpenStack Swift Client @@ -12,12 +12,12 @@ com.woorea openstack-client - 3.2.5 + 3.2.6-SNAPSHOT com.woorea swift-model - 3.2.5 + 3.2.6-SNAPSHOT \ No newline at end of file diff --git a/swift-model/pom.xml b/swift-model/pom.xml index ae4d9d4f5..1acc4fcde 100644 --- a/swift-model/pom.xml +++ b/swift-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.5 + 3.2.6-SNAPSHOT swift-model OpenStack Swift Model From c1b1ee08e9cbb5c1a01b8f9d71d5d18c6fc50adb Mon Sep 17 00:00:00 2001 From: Dominik Holler Date: Thu, 22 Nov 2018 17:56:57 +0100 Subject: [PATCH 128/144] Align versions The examples and the jersey-connector reference the current version of openstack-java-sdk. --- openstack-client-connectors/jersey-connector/pom.xml | 2 +- openstack-examples/pom.xml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/openstack-client-connectors/jersey-connector/pom.xml b/openstack-client-connectors/jersey-connector/pom.xml index 99da61d9c..1ebbd381d 100644 --- a/openstack-client-connectors/jersey-connector/pom.xml +++ b/openstack-client-connectors/jersey-connector/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-client-connectors - 3.2.5-SNAPSHOT + 3.2.6-SNAPSHOT jersey-connector OpenStack Jersey Connector diff --git a/openstack-examples/pom.xml b/openstack-examples/pom.xml index f643a0621..e0c19554e 100644 --- a/openstack-examples/pom.xml +++ b/openstack-examples/pom.xml @@ -7,7 +7,7 @@ UTF-8 - 3.2.5 + 3.2.6-SNAPSHOT openstack-examples OpenStack Examples From 46e40a1c5d64ee4855d1b8100d95f61a05d0a1ab Mon Sep 17 00:00:00 2001 From: HelloCoCooo <46306510+HelloCoCooo@users.noreply.github.com> Date: Thu, 31 Jan 2019 10:16:30 +0800 Subject: [PATCH 129/144] fix dependency conflict issue fix dependency conflict issue for org.codehaus.jackson:jackson-core-asl: jar --- openstack-client-connectors/resteasy-connector/pom.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/openstack-client-connectors/resteasy-connector/pom.xml b/openstack-client-connectors/resteasy-connector/pom.xml index dbf3fdea2..dbd7dfd11 100644 --- a/openstack-client-connectors/resteasy-connector/pom.xml +++ b/openstack-client-connectors/resteasy-connector/pom.xml @@ -17,7 +17,7 @@ org.codehaus.jackson jackson-jaxrs - 1.9.4 + 1.9.13 commons-httpclient @@ -25,4 +25,4 @@ 3.1 - \ No newline at end of file + From bcd60e62da2f9b1b2c8d42c0cd8fc058b7424569 Mon Sep 17 00:00:00 2001 From: Dominik Holler Date: Thu, 2 May 2019 17:02:10 +0200 Subject: [PATCH 130/144] RESTEasyConnector: Support RESTEasy 3.6.3.Final Avoid extending the ResteasyProviderFactory and using hte related protected methods. --- .../connector/RESTEasyConnector.java | 37 +++++++------------ 1 file changed, 13 insertions(+), 24 deletions(-) diff --git a/openstack-client-connectors/resteasy-connector/src/main/java/com/woorea/openstack/connector/RESTEasyConnector.java b/openstack-client-connectors/resteasy-connector/src/main/java/com/woorea/openstack/connector/RESTEasyConnector.java index ac8d3fd5d..41b1bafa4 100644 --- a/openstack-client-connectors/resteasy-connector/src/main/java/com/woorea/openstack/connector/RESTEasyConnector.java +++ b/openstack-client-connectors/resteasy-connector/src/main/java/com/woorea/openstack/connector/RESTEasyConnector.java @@ -4,8 +4,11 @@ import java.util.Map; import java.util.Map.Entry; +import javax.ws.rs.Produces; +import javax.ws.rs.core.MediaType; import javax.ws.rs.core.UriBuilder; import javax.ws.rs.ext.ContextResolver; +import javax.ws.rs.ext.Provider; import org.apache.commons.httpclient.HttpStatus; import org.codehaus.jackson.jaxrs.JacksonJsonProvider; @@ -31,32 +34,15 @@ public class RESTEasyConnector implements OpenStackClientConnector { public static ObjectMapper WRAPPED_MAPPER; - static class OpenStackProviderFactory extends ResteasyProviderFactory { - - private JacksonJsonProvider jsonProvider; - private InputStreamProvider streamProvider; - - public OpenStackProviderFactory() { - super(); - - addContextResolver(new ContextResolver() { - public ObjectMapper getContext(Class type) { - return type.getAnnotation(JsonRootName.class) == null ? DEFAULT_MAPPER : WRAPPED_MAPPER; - } - }); - - jsonProvider = new JacksonJsonProvider(); - addMessageBodyReader(jsonProvider); - addMessageBodyWriter(jsonProvider); - - streamProvider = new InputStreamProvider(); - addMessageBodyReader(streamProvider); - addMessageBodyWriter(streamProvider); + @Provider + @Produces(MediaType.APPLICATION_JSON) + static class ObjectMapperContextResolver implements ContextResolver { + public ObjectMapper getContext(Class type) { + return type.getAnnotation(JsonRootName.class) == null ? DEFAULT_MAPPER : WRAPPED_MAPPER; } - } - private static OpenStackProviderFactory providerFactory; + private static ResteasyProviderFactory providerFactory; static { DEFAULT_MAPPER = new ObjectMapper(); @@ -77,7 +63,10 @@ public ObjectMapper getContext(Class type) { WRAPPED_MAPPER.disable(DeserializationConfig.Feature.FAIL_ON_UNKNOWN_PROPERTIES); WRAPPED_MAPPER.enable(DeserializationConfig.Feature.ACCEPT_EMPTY_STRING_AS_NULL_OBJECT); - providerFactory = new OpenStackProviderFactory(); + providerFactory = new ResteasyProviderFactory(); + providerFactory.registerProviderInstance(new JacksonJsonProvider()); + providerFactory.registerProviderInstance(new ObjectMapperContextResolver()); + providerFactory.registerProviderInstance(new InputStreamProvider()); } protected ClientExecutor createClientExecutor() { From 89a969eeede2a6dde6672d96e2535642ede8614c Mon Sep 17 00:00:00 2001 From: Dominik Holler Date: Fri, 3 May 2019 13:15:19 +0200 Subject: [PATCH 131/144] [maven-release-plugin] prepare release openstack-java-sdk-3.2.6 --- ceilometer-client/pom.xml | 6 +++--- ceilometer-model/pom.xml | 2 +- cinder-client/pom.xml | 6 +++--- cinder-model/pom.xml | 2 +- glance-client/pom.xml | 6 +++--- glance-model/pom.xml | 2 +- heat-client/pom.xml | 6 +++--- heat-model/pom.xml | 2 +- keystone-client/pom.xml | 6 +++--- keystone-model/pom.xml | 2 +- nova-client/pom.xml | 6 +++--- nova-model/pom.xml | 2 +- openstack-client-connectors/jersey-connector/pom.xml | 2 +- openstack-client-connectors/jersey2-connector/pom.xml | 4 ++-- openstack-client-connectors/pom.xml | 4 ++-- openstack-client-connectors/resteasy-connector/pom.xml | 2 +- openstack-client/pom.xml | 2 +- openstack-console/pom.xml | 6 +++--- openstack-examples/pom.xml | 4 ++-- pom.xml | 2 +- quantum-client/pom.xml | 6 +++--- quantum-model/pom.xml | 2 +- swift-client/pom.xml | 6 +++--- swift-model/pom.xml | 2 +- 24 files changed, 45 insertions(+), 45 deletions(-) diff --git a/ceilometer-client/pom.xml b/ceilometer-client/pom.xml index 63a16992f..24c8c3353 100644 --- a/ceilometer-client/pom.xml +++ b/ceilometer-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.6-SNAPSHOT + 3.2.6 ceilometer-client OpenStack Ceilometer Client @@ -12,12 +12,12 @@ com.woorea openstack-client - 3.2.6-SNAPSHOT + 3.2.6 com.woorea ceilometer-model - 3.2.6-SNAPSHOT + 3.2.6 diff --git a/ceilometer-model/pom.xml b/ceilometer-model/pom.xml index 3c6c7ddc8..3e8f0719f 100644 --- a/ceilometer-model/pom.xml +++ b/ceilometer-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.6-SNAPSHOT + 3.2.6 ceilometer-model OpenStack Ceilometer Model diff --git a/cinder-client/pom.xml b/cinder-client/pom.xml index 30aced054..e52925acc 100644 --- a/cinder-client/pom.xml +++ b/cinder-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.6-SNAPSHOT + 3.2.6 cinder-client OpenStack Cinder Client @@ -12,13 +12,13 @@ com.woorea openstack-client - 3.2.6-SNAPSHOT + 3.2.6 com.woorea cinder-model - 3.2.6-SNAPSHOT + 3.2.6 \ No newline at end of file diff --git a/cinder-model/pom.xml b/cinder-model/pom.xml index 75ad7c4b7..b7f80bdcf 100644 --- a/cinder-model/pom.xml +++ b/cinder-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.6-SNAPSHOT + 3.2.6 cinder-model OpenStack Cinder Model diff --git a/glance-client/pom.xml b/glance-client/pom.xml index 2a35404e9..f2584ae39 100644 --- a/glance-client/pom.xml +++ b/glance-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.6-SNAPSHOT + 3.2.6 glance-client OpenStack Glance Client @@ -12,13 +12,13 @@ com.woorea openstack-client - 3.2.6-SNAPSHOT + 3.2.6 com.woorea glance-model - 3.2.6-SNAPSHOT + 3.2.6 \ No newline at end of file diff --git a/glance-model/pom.xml b/glance-model/pom.xml index 38fbb18f0..678b58ea2 100644 --- a/glance-model/pom.xml +++ b/glance-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.6-SNAPSHOT + 3.2.6 glance-model OpenStack Glance Model diff --git a/heat-client/pom.xml b/heat-client/pom.xml index e0f6def87..cffe73e9f 100644 --- a/heat-client/pom.xml +++ b/heat-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.6-SNAPSHOT + 3.2.6 heat-client OpenStack Heat Client @@ -12,13 +12,13 @@ com.woorea openstack-client - 3.2.6-SNAPSHOT + 3.2.6 com.woorea heat-model - 3.2.6-SNAPSHOT + 3.2.6 \ No newline at end of file diff --git a/heat-model/pom.xml b/heat-model/pom.xml index 6a36a1dce..27d5bc6a4 100644 --- a/heat-model/pom.xml +++ b/heat-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.6-SNAPSHOT + 3.2.6 heat-model OpenStack Heat Model diff --git a/keystone-client/pom.xml b/keystone-client/pom.xml index 9cd2b15cb..b0a922ab7 100644 --- a/keystone-client/pom.xml +++ b/keystone-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.6-SNAPSHOT + 3.2.6 keystone-client OpenStack Keystone Client @@ -12,12 +12,12 @@ com.woorea openstack-client - 3.2.6-SNAPSHOT + 3.2.6 com.woorea keystone-model - 3.2.6-SNAPSHOT + 3.2.6 \ No newline at end of file diff --git a/keystone-model/pom.xml b/keystone-model/pom.xml index 0a562f77d..06127a955 100644 --- a/keystone-model/pom.xml +++ b/keystone-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.6-SNAPSHOT + 3.2.6 keystone-model OpenStack Keystone Model diff --git a/nova-client/pom.xml b/nova-client/pom.xml index 8dc894fb7..db100d08f 100644 --- a/nova-client/pom.xml +++ b/nova-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.6-SNAPSHOT + 3.2.6 nova-client OpenStack Nova Client @@ -12,12 +12,12 @@ com.woorea openstack-client - 3.2.6-SNAPSHOT + 3.2.6 com.woorea nova-model - 3.2.6-SNAPSHOT + 3.2.6 \ No newline at end of file diff --git a/nova-model/pom.xml b/nova-model/pom.xml index 813a7f228..ba7e50789 100644 --- a/nova-model/pom.xml +++ b/nova-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.6-SNAPSHOT + 3.2.6 nova-model OpenStack Nova Model diff --git a/openstack-client-connectors/jersey-connector/pom.xml b/openstack-client-connectors/jersey-connector/pom.xml index 1ebbd381d..073f7f413 100644 --- a/openstack-client-connectors/jersey-connector/pom.xml +++ b/openstack-client-connectors/jersey-connector/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-client-connectors - 3.2.6-SNAPSHOT + 3.2.6 jersey-connector OpenStack Jersey Connector diff --git a/openstack-client-connectors/jersey2-connector/pom.xml b/openstack-client-connectors/jersey2-connector/pom.xml index f99daabe5..13072f5e4 100644 --- a/openstack-client-connectors/jersey2-connector/pom.xml +++ b/openstack-client-connectors/jersey2-connector/pom.xml @@ -4,7 +4,7 @@ com.woorea openstack-client-connectors - 3.2.6-SNAPSHOT + 3.2.6 jersey2-connector OpenStack Jersey2 Connector @@ -27,7 +27,7 @@ com.woorea openstack-client - 3.2.6-SNAPSHOT + 3.2.6 diff --git a/openstack-client-connectors/pom.xml b/openstack-client-connectors/pom.xml index 36ef44181..d4c6e70d5 100644 --- a/openstack-client-connectors/pom.xml +++ b/openstack-client-connectors/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.6-SNAPSHOT + 3.2.6 openstack-client-connectors OpenStack Client Connectors @@ -42,7 +42,7 @@ com.woorea openstack-client - 3.2.6-SNAPSHOT + 3.2.6 \ No newline at end of file diff --git a/openstack-client-connectors/resteasy-connector/pom.xml b/openstack-client-connectors/resteasy-connector/pom.xml index dbd7dfd11..74044d457 100644 --- a/openstack-client-connectors/resteasy-connector/pom.xml +++ b/openstack-client-connectors/resteasy-connector/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-client-connectors - 3.2.6-SNAPSHOT + 3.2.6 resteasy-connector OpenStack RESTEasy Connector diff --git a/openstack-client/pom.xml b/openstack-client/pom.xml index e40d0ad0a..b5667d3c2 100644 --- a/openstack-client/pom.xml +++ b/openstack-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.6-SNAPSHOT + 3.2.6 openstack-client OpenStack Client diff --git a/openstack-console/pom.xml b/openstack-console/pom.xml index 6c9e76e09..44ae0f5ee 100644 --- a/openstack-console/pom.xml +++ b/openstack-console/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.6-SNAPSHOT + 3.2.6 openstack-console OpenStack Console @@ -22,12 +22,12 @@ com.woorea keystone-client - 3.2.6-SNAPSHOT + 3.2.6 com.woorea nova-client - 3.2.6-SNAPSHOT + 3.2.6 diff --git a/openstack-examples/pom.xml b/openstack-examples/pom.xml index e0c19554e..36a0bedc0 100644 --- a/openstack-examples/pom.xml +++ b/openstack-examples/pom.xml @@ -3,11 +3,11 @@ com.woorea openstack-java-sdk - 3.2.6-SNAPSHOT + 3.2.6 UTF-8 - 3.2.6-SNAPSHOT + 3.2.6 openstack-examples OpenStack Examples diff --git a/pom.xml b/pom.xml index e4f7f8678..420d01498 100644 --- a/pom.xml +++ b/pom.xml @@ -2,7 +2,7 @@ 4.0.0 com.woorea openstack-java-sdk - 3.2.6-SNAPSHOT + 3.2.6 pom OpenStack Java SDK OpenStack Java SDK diff --git a/quantum-client/pom.xml b/quantum-client/pom.xml index 4d202cf45..41969ee98 100644 --- a/quantum-client/pom.xml +++ b/quantum-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.6-SNAPSHOT + 3.2.6 quantum-client OpenStack Quantum Client @@ -12,12 +12,12 @@ com.woorea openstack-client - 3.2.6-SNAPSHOT + 3.2.6 com.woorea quantum-model - 3.2.6-SNAPSHOT + 3.2.6 diff --git a/quantum-model/pom.xml b/quantum-model/pom.xml index 551cc2d4e..a25a1fd08 100644 --- a/quantum-model/pom.xml +++ b/quantum-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.6-SNAPSHOT + 3.2.6 quantum-model OpenStack Quantum Model diff --git a/swift-client/pom.xml b/swift-client/pom.xml index 89085796e..dfb156fbd 100644 --- a/swift-client/pom.xml +++ b/swift-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.6-SNAPSHOT + 3.2.6 swift-client OpenStack Swift Client @@ -12,12 +12,12 @@ com.woorea openstack-client - 3.2.6-SNAPSHOT + 3.2.6 com.woorea swift-model - 3.2.6-SNAPSHOT + 3.2.6 \ No newline at end of file diff --git a/swift-model/pom.xml b/swift-model/pom.xml index 1acc4fcde..48446760e 100644 --- a/swift-model/pom.xml +++ b/swift-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.6-SNAPSHOT + 3.2.6 swift-model OpenStack Swift Model From be161d6128614f3d7439a41e3d3a8176f638c18f Mon Sep 17 00:00:00 2001 From: Dominik Holler Date: Fri, 3 May 2019 13:15:59 +0200 Subject: [PATCH 132/144] [maven-release-plugin] prepare for next development iteration --- ceilometer-client/pom.xml | 6 +++--- ceilometer-model/pom.xml | 2 +- cinder-client/pom.xml | 6 +++--- cinder-model/pom.xml | 2 +- glance-client/pom.xml | 6 +++--- glance-model/pom.xml | 2 +- heat-client/pom.xml | 6 +++--- heat-model/pom.xml | 2 +- keystone-client/pom.xml | 6 +++--- keystone-model/pom.xml | 2 +- nova-client/pom.xml | 6 +++--- nova-model/pom.xml | 2 +- openstack-client-connectors/jersey-connector/pom.xml | 2 +- openstack-client-connectors/jersey2-connector/pom.xml | 4 ++-- openstack-client-connectors/pom.xml | 4 ++-- openstack-client-connectors/resteasy-connector/pom.xml | 2 +- openstack-client/pom.xml | 2 +- openstack-console/pom.xml | 6 +++--- openstack-examples/pom.xml | 2 +- pom.xml | 2 +- quantum-client/pom.xml | 6 +++--- quantum-model/pom.xml | 2 +- swift-client/pom.xml | 6 +++--- swift-model/pom.xml | 2 +- 24 files changed, 44 insertions(+), 44 deletions(-) diff --git a/ceilometer-client/pom.xml b/ceilometer-client/pom.xml index 24c8c3353..880aebdee 100644 --- a/ceilometer-client/pom.xml +++ b/ceilometer-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.6 + 3.2.7-SNAPSHOT ceilometer-client OpenStack Ceilometer Client @@ -12,12 +12,12 @@ com.woorea openstack-client - 3.2.6 + 3.2.7-SNAPSHOT com.woorea ceilometer-model - 3.2.6 + 3.2.7-SNAPSHOT diff --git a/ceilometer-model/pom.xml b/ceilometer-model/pom.xml index 3e8f0719f..23a42a6cf 100644 --- a/ceilometer-model/pom.xml +++ b/ceilometer-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.6 + 3.2.7-SNAPSHOT ceilometer-model OpenStack Ceilometer Model diff --git a/cinder-client/pom.xml b/cinder-client/pom.xml index e52925acc..2dbbbbc5f 100644 --- a/cinder-client/pom.xml +++ b/cinder-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.6 + 3.2.7-SNAPSHOT cinder-client OpenStack Cinder Client @@ -12,13 +12,13 @@ com.woorea openstack-client - 3.2.6 + 3.2.7-SNAPSHOT com.woorea cinder-model - 3.2.6 + 3.2.7-SNAPSHOT \ No newline at end of file diff --git a/cinder-model/pom.xml b/cinder-model/pom.xml index b7f80bdcf..3ccf80ad0 100644 --- a/cinder-model/pom.xml +++ b/cinder-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.6 + 3.2.7-SNAPSHOT cinder-model OpenStack Cinder Model diff --git a/glance-client/pom.xml b/glance-client/pom.xml index f2584ae39..0a33d0ed4 100644 --- a/glance-client/pom.xml +++ b/glance-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.6 + 3.2.7-SNAPSHOT glance-client OpenStack Glance Client @@ -12,13 +12,13 @@ com.woorea openstack-client - 3.2.6 + 3.2.7-SNAPSHOT com.woorea glance-model - 3.2.6 + 3.2.7-SNAPSHOT \ No newline at end of file diff --git a/glance-model/pom.xml b/glance-model/pom.xml index 678b58ea2..aacf927a6 100644 --- a/glance-model/pom.xml +++ b/glance-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.6 + 3.2.7-SNAPSHOT glance-model OpenStack Glance Model diff --git a/heat-client/pom.xml b/heat-client/pom.xml index cffe73e9f..05f94751c 100644 --- a/heat-client/pom.xml +++ b/heat-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.6 + 3.2.7-SNAPSHOT heat-client OpenStack Heat Client @@ -12,13 +12,13 @@ com.woorea openstack-client - 3.2.6 + 3.2.7-SNAPSHOT com.woorea heat-model - 3.2.6 + 3.2.7-SNAPSHOT \ No newline at end of file diff --git a/heat-model/pom.xml b/heat-model/pom.xml index 27d5bc6a4..53385d5f9 100644 --- a/heat-model/pom.xml +++ b/heat-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.6 + 3.2.7-SNAPSHOT heat-model OpenStack Heat Model diff --git a/keystone-client/pom.xml b/keystone-client/pom.xml index b0a922ab7..4166f5491 100644 --- a/keystone-client/pom.xml +++ b/keystone-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.6 + 3.2.7-SNAPSHOT keystone-client OpenStack Keystone Client @@ -12,12 +12,12 @@ com.woorea openstack-client - 3.2.6 + 3.2.7-SNAPSHOT com.woorea keystone-model - 3.2.6 + 3.2.7-SNAPSHOT \ No newline at end of file diff --git a/keystone-model/pom.xml b/keystone-model/pom.xml index 06127a955..870b16a33 100644 --- a/keystone-model/pom.xml +++ b/keystone-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.6 + 3.2.7-SNAPSHOT keystone-model OpenStack Keystone Model diff --git a/nova-client/pom.xml b/nova-client/pom.xml index db100d08f..4324da54b 100644 --- a/nova-client/pom.xml +++ b/nova-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.6 + 3.2.7-SNAPSHOT nova-client OpenStack Nova Client @@ -12,12 +12,12 @@ com.woorea openstack-client - 3.2.6 + 3.2.7-SNAPSHOT com.woorea nova-model - 3.2.6 + 3.2.7-SNAPSHOT \ No newline at end of file diff --git a/nova-model/pom.xml b/nova-model/pom.xml index ba7e50789..71eefd224 100644 --- a/nova-model/pom.xml +++ b/nova-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.6 + 3.2.7-SNAPSHOT nova-model OpenStack Nova Model diff --git a/openstack-client-connectors/jersey-connector/pom.xml b/openstack-client-connectors/jersey-connector/pom.xml index 073f7f413..94fbe52d7 100644 --- a/openstack-client-connectors/jersey-connector/pom.xml +++ b/openstack-client-connectors/jersey-connector/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-client-connectors - 3.2.6 + 3.2.7-SNAPSHOT jersey-connector OpenStack Jersey Connector diff --git a/openstack-client-connectors/jersey2-connector/pom.xml b/openstack-client-connectors/jersey2-connector/pom.xml index 13072f5e4..938bb160b 100644 --- a/openstack-client-connectors/jersey2-connector/pom.xml +++ b/openstack-client-connectors/jersey2-connector/pom.xml @@ -4,7 +4,7 @@ com.woorea openstack-client-connectors - 3.2.6 + 3.2.7-SNAPSHOT jersey2-connector OpenStack Jersey2 Connector @@ -27,7 +27,7 @@ com.woorea openstack-client - 3.2.6 + 3.2.7-SNAPSHOT diff --git a/openstack-client-connectors/pom.xml b/openstack-client-connectors/pom.xml index d4c6e70d5..b70f92b9e 100644 --- a/openstack-client-connectors/pom.xml +++ b/openstack-client-connectors/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.6 + 3.2.7-SNAPSHOT openstack-client-connectors OpenStack Client Connectors @@ -42,7 +42,7 @@ com.woorea openstack-client - 3.2.6 + 3.2.7-SNAPSHOT \ No newline at end of file diff --git a/openstack-client-connectors/resteasy-connector/pom.xml b/openstack-client-connectors/resteasy-connector/pom.xml index 74044d457..8855ea87a 100644 --- a/openstack-client-connectors/resteasy-connector/pom.xml +++ b/openstack-client-connectors/resteasy-connector/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-client-connectors - 3.2.6 + 3.2.7-SNAPSHOT resteasy-connector OpenStack RESTEasy Connector diff --git a/openstack-client/pom.xml b/openstack-client/pom.xml index b5667d3c2..00fda3102 100644 --- a/openstack-client/pom.xml +++ b/openstack-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.6 + 3.2.7-SNAPSHOT openstack-client OpenStack Client diff --git a/openstack-console/pom.xml b/openstack-console/pom.xml index 44ae0f5ee..06497b003 100644 --- a/openstack-console/pom.xml +++ b/openstack-console/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.6 + 3.2.7-SNAPSHOT openstack-console OpenStack Console @@ -22,12 +22,12 @@ com.woorea keystone-client - 3.2.6 + 3.2.7-SNAPSHOT com.woorea nova-client - 3.2.6 + 3.2.7-SNAPSHOT diff --git a/openstack-examples/pom.xml b/openstack-examples/pom.xml index 36a0bedc0..16198a0b7 100644 --- a/openstack-examples/pom.xml +++ b/openstack-examples/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.6 + 3.2.7-SNAPSHOT UTF-8 diff --git a/pom.xml b/pom.xml index 420d01498..0cf0929c8 100644 --- a/pom.xml +++ b/pom.xml @@ -2,7 +2,7 @@ 4.0.0 com.woorea openstack-java-sdk - 3.2.6 + 3.2.7-SNAPSHOT pom OpenStack Java SDK OpenStack Java SDK diff --git a/quantum-client/pom.xml b/quantum-client/pom.xml index 41969ee98..871d26257 100644 --- a/quantum-client/pom.xml +++ b/quantum-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.6 + 3.2.7-SNAPSHOT quantum-client OpenStack Quantum Client @@ -12,12 +12,12 @@ com.woorea openstack-client - 3.2.6 + 3.2.7-SNAPSHOT com.woorea quantum-model - 3.2.6 + 3.2.7-SNAPSHOT diff --git a/quantum-model/pom.xml b/quantum-model/pom.xml index a25a1fd08..1d93ebc34 100644 --- a/quantum-model/pom.xml +++ b/quantum-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.6 + 3.2.7-SNAPSHOT quantum-model OpenStack Quantum Model diff --git a/swift-client/pom.xml b/swift-client/pom.xml index dfb156fbd..2d6326a53 100644 --- a/swift-client/pom.xml +++ b/swift-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.6 + 3.2.7-SNAPSHOT swift-client OpenStack Swift Client @@ -12,12 +12,12 @@ com.woorea openstack-client - 3.2.6 + 3.2.7-SNAPSHOT com.woorea swift-model - 3.2.6 + 3.2.7-SNAPSHOT \ No newline at end of file diff --git a/swift-model/pom.xml b/swift-model/pom.xml index 48446760e..3384ca430 100644 --- a/swift-model/pom.xml +++ b/swift-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.6 + 3.2.7-SNAPSHOT swift-model OpenStack Swift Model From 8aca0cb670cada8c6197a65826e02f3b75b1af81 Mon Sep 17 00:00:00 2001 From: Dominik Holler Date: Fri, 3 May 2019 17:09:28 +0200 Subject: [PATCH 133/144] Remove maven-gpg-plugin --- pom.xml | 21 --------------------- 1 file changed, 21 deletions(-) diff --git a/pom.xml b/pom.xml index 0cf0929c8..eb915629b 100644 --- a/pom.xml +++ b/pom.xml @@ -7,10 +7,6 @@ OpenStack Java SDK OpenStack Java SDK - - false - - org.sonatype.oss oss-parent @@ -104,23 +100,6 @@ UTF-8 - - org.apache.maven.plugins - maven-gpg-plugin - 1.6 - - ${skip.sign} - - - - sign-artifacts - verify - - sign - - - - org.apache.maven.plugins maven-eclipse-plugin From 1e4d8d2f390ee946f5fc4571f4765a20306e1bce Mon Sep 17 00:00:00 2001 From: Dominik Holler Date: Fri, 3 May 2019 17:12:47 +0200 Subject: [PATCH 134/144] Update NEWS --- NEWS.md | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/NEWS.md b/NEWS.md index 72c0742d1..9eced7fc2 100644 --- a/NEWS.md +++ b/NEWS.md @@ -1,3 +1,9 @@ +# 3.2.7 / 2019-05-03 +* Remove maven-gpg-plugin + +# 3.2.6 / 2019-05-03 +* RESTEasyConnector: Support RESTEasy 3.6.3.Final + # 3.2.5 / 2018-11-14 * neutron: Add support for `port_security_enabled` on Networks From c9bffcddb6184e339a136c56d3bc6a9a32d7f76f Mon Sep 17 00:00:00 2001 From: Dominik Holler Date: Fri, 3 May 2019 17:26:30 +0200 Subject: [PATCH 135/144] [maven-release-plugin] prepare release openstack-java-sdk-3.2.7 --- ceilometer-client/pom.xml | 6 +++--- ceilometer-model/pom.xml | 2 +- cinder-client/pom.xml | 6 +++--- cinder-model/pom.xml | 2 +- glance-client/pom.xml | 6 +++--- glance-model/pom.xml | 2 +- heat-client/pom.xml | 6 +++--- heat-model/pom.xml | 2 +- keystone-client/pom.xml | 6 +++--- keystone-model/pom.xml | 2 +- nova-client/pom.xml | 6 +++--- nova-model/pom.xml | 2 +- openstack-client-connectors/jersey-connector/pom.xml | 2 +- openstack-client-connectors/jersey2-connector/pom.xml | 4 ++-- openstack-client-connectors/pom.xml | 4 ++-- openstack-client-connectors/resteasy-connector/pom.xml | 2 +- openstack-client/pom.xml | 2 +- openstack-console/pom.xml | 6 +++--- openstack-examples/pom.xml | 4 ++-- pom.xml | 2 +- quantum-client/pom.xml | 6 +++--- quantum-model/pom.xml | 2 +- swift-client/pom.xml | 6 +++--- swift-model/pom.xml | 2 +- 24 files changed, 45 insertions(+), 45 deletions(-) diff --git a/ceilometer-client/pom.xml b/ceilometer-client/pom.xml index 880aebdee..cf890738b 100644 --- a/ceilometer-client/pom.xml +++ b/ceilometer-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.7-SNAPSHOT + 3.2.7 ceilometer-client OpenStack Ceilometer Client @@ -12,12 +12,12 @@ com.woorea openstack-client - 3.2.7-SNAPSHOT + 3.2.7 com.woorea ceilometer-model - 3.2.7-SNAPSHOT + 3.2.7 diff --git a/ceilometer-model/pom.xml b/ceilometer-model/pom.xml index 23a42a6cf..10d0c4df8 100644 --- a/ceilometer-model/pom.xml +++ b/ceilometer-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.7-SNAPSHOT + 3.2.7 ceilometer-model OpenStack Ceilometer Model diff --git a/cinder-client/pom.xml b/cinder-client/pom.xml index 2dbbbbc5f..c6f075bc7 100644 --- a/cinder-client/pom.xml +++ b/cinder-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.7-SNAPSHOT + 3.2.7 cinder-client OpenStack Cinder Client @@ -12,13 +12,13 @@ com.woorea openstack-client - 3.2.7-SNAPSHOT + 3.2.7 com.woorea cinder-model - 3.2.7-SNAPSHOT + 3.2.7 \ No newline at end of file diff --git a/cinder-model/pom.xml b/cinder-model/pom.xml index 3ccf80ad0..143e701b9 100644 --- a/cinder-model/pom.xml +++ b/cinder-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.7-SNAPSHOT + 3.2.7 cinder-model OpenStack Cinder Model diff --git a/glance-client/pom.xml b/glance-client/pom.xml index 0a33d0ed4..a8c5f2e08 100644 --- a/glance-client/pom.xml +++ b/glance-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.7-SNAPSHOT + 3.2.7 glance-client OpenStack Glance Client @@ -12,13 +12,13 @@ com.woorea openstack-client - 3.2.7-SNAPSHOT + 3.2.7 com.woorea glance-model - 3.2.7-SNAPSHOT + 3.2.7 \ No newline at end of file diff --git a/glance-model/pom.xml b/glance-model/pom.xml index aacf927a6..0faa482ae 100644 --- a/glance-model/pom.xml +++ b/glance-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.7-SNAPSHOT + 3.2.7 glance-model OpenStack Glance Model diff --git a/heat-client/pom.xml b/heat-client/pom.xml index 05f94751c..693be992a 100644 --- a/heat-client/pom.xml +++ b/heat-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.7-SNAPSHOT + 3.2.7 heat-client OpenStack Heat Client @@ -12,13 +12,13 @@ com.woorea openstack-client - 3.2.7-SNAPSHOT + 3.2.7 com.woorea heat-model - 3.2.7-SNAPSHOT + 3.2.7 \ No newline at end of file diff --git a/heat-model/pom.xml b/heat-model/pom.xml index 53385d5f9..8c30b6d21 100644 --- a/heat-model/pom.xml +++ b/heat-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.7-SNAPSHOT + 3.2.7 heat-model OpenStack Heat Model diff --git a/keystone-client/pom.xml b/keystone-client/pom.xml index 4166f5491..d66af32bb 100644 --- a/keystone-client/pom.xml +++ b/keystone-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.7-SNAPSHOT + 3.2.7 keystone-client OpenStack Keystone Client @@ -12,12 +12,12 @@ com.woorea openstack-client - 3.2.7-SNAPSHOT + 3.2.7 com.woorea keystone-model - 3.2.7-SNAPSHOT + 3.2.7 \ No newline at end of file diff --git a/keystone-model/pom.xml b/keystone-model/pom.xml index 870b16a33..afd86ca57 100644 --- a/keystone-model/pom.xml +++ b/keystone-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.7-SNAPSHOT + 3.2.7 keystone-model OpenStack Keystone Model diff --git a/nova-client/pom.xml b/nova-client/pom.xml index 4324da54b..1aa5d1a77 100644 --- a/nova-client/pom.xml +++ b/nova-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.7-SNAPSHOT + 3.2.7 nova-client OpenStack Nova Client @@ -12,12 +12,12 @@ com.woorea openstack-client - 3.2.7-SNAPSHOT + 3.2.7 com.woorea nova-model - 3.2.7-SNAPSHOT + 3.2.7 \ No newline at end of file diff --git a/nova-model/pom.xml b/nova-model/pom.xml index 71eefd224..3b61e01c2 100644 --- a/nova-model/pom.xml +++ b/nova-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.7-SNAPSHOT + 3.2.7 nova-model OpenStack Nova Model diff --git a/openstack-client-connectors/jersey-connector/pom.xml b/openstack-client-connectors/jersey-connector/pom.xml index 94fbe52d7..6face1bc5 100644 --- a/openstack-client-connectors/jersey-connector/pom.xml +++ b/openstack-client-connectors/jersey-connector/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-client-connectors - 3.2.7-SNAPSHOT + 3.2.7 jersey-connector OpenStack Jersey Connector diff --git a/openstack-client-connectors/jersey2-connector/pom.xml b/openstack-client-connectors/jersey2-connector/pom.xml index 938bb160b..e5c2a248d 100644 --- a/openstack-client-connectors/jersey2-connector/pom.xml +++ b/openstack-client-connectors/jersey2-connector/pom.xml @@ -4,7 +4,7 @@ com.woorea openstack-client-connectors - 3.2.7-SNAPSHOT + 3.2.7 jersey2-connector OpenStack Jersey2 Connector @@ -27,7 +27,7 @@ com.woorea openstack-client - 3.2.7-SNAPSHOT + 3.2.7 diff --git a/openstack-client-connectors/pom.xml b/openstack-client-connectors/pom.xml index b70f92b9e..3d1a698b0 100644 --- a/openstack-client-connectors/pom.xml +++ b/openstack-client-connectors/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.7-SNAPSHOT + 3.2.7 openstack-client-connectors OpenStack Client Connectors @@ -42,7 +42,7 @@ com.woorea openstack-client - 3.2.7-SNAPSHOT + 3.2.7 \ No newline at end of file diff --git a/openstack-client-connectors/resteasy-connector/pom.xml b/openstack-client-connectors/resteasy-connector/pom.xml index 8855ea87a..dc309907c 100644 --- a/openstack-client-connectors/resteasy-connector/pom.xml +++ b/openstack-client-connectors/resteasy-connector/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-client-connectors - 3.2.7-SNAPSHOT + 3.2.7 resteasy-connector OpenStack RESTEasy Connector diff --git a/openstack-client/pom.xml b/openstack-client/pom.xml index 00fda3102..6d631c89b 100644 --- a/openstack-client/pom.xml +++ b/openstack-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.7-SNAPSHOT + 3.2.7 openstack-client OpenStack Client diff --git a/openstack-console/pom.xml b/openstack-console/pom.xml index 06497b003..509438d4f 100644 --- a/openstack-console/pom.xml +++ b/openstack-console/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.7-SNAPSHOT + 3.2.7 openstack-console OpenStack Console @@ -22,12 +22,12 @@ com.woorea keystone-client - 3.2.7-SNAPSHOT + 3.2.7 com.woorea nova-client - 3.2.7-SNAPSHOT + 3.2.7 diff --git a/openstack-examples/pom.xml b/openstack-examples/pom.xml index 16198a0b7..84fd55c53 100644 --- a/openstack-examples/pom.xml +++ b/openstack-examples/pom.xml @@ -3,11 +3,11 @@ com.woorea openstack-java-sdk - 3.2.7-SNAPSHOT + 3.2.7 UTF-8 - 3.2.6 + 3.2.7 openstack-examples OpenStack Examples diff --git a/pom.xml b/pom.xml index eb915629b..659684be1 100644 --- a/pom.xml +++ b/pom.xml @@ -2,7 +2,7 @@ 4.0.0 com.woorea openstack-java-sdk - 3.2.7-SNAPSHOT + 3.2.7 pom OpenStack Java SDK OpenStack Java SDK diff --git a/quantum-client/pom.xml b/quantum-client/pom.xml index 871d26257..24100d99f 100644 --- a/quantum-client/pom.xml +++ b/quantum-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.7-SNAPSHOT + 3.2.7 quantum-client OpenStack Quantum Client @@ -12,12 +12,12 @@ com.woorea openstack-client - 3.2.7-SNAPSHOT + 3.2.7 com.woorea quantum-model - 3.2.7-SNAPSHOT + 3.2.7 diff --git a/quantum-model/pom.xml b/quantum-model/pom.xml index 1d93ebc34..26adfd6c3 100644 --- a/quantum-model/pom.xml +++ b/quantum-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.7-SNAPSHOT + 3.2.7 quantum-model OpenStack Quantum Model diff --git a/swift-client/pom.xml b/swift-client/pom.xml index 2d6326a53..24937c50b 100644 --- a/swift-client/pom.xml +++ b/swift-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.7-SNAPSHOT + 3.2.7 swift-client OpenStack Swift Client @@ -12,12 +12,12 @@ com.woorea openstack-client - 3.2.7-SNAPSHOT + 3.2.7 com.woorea swift-model - 3.2.7-SNAPSHOT + 3.2.7 \ No newline at end of file diff --git a/swift-model/pom.xml b/swift-model/pom.xml index 3384ca430..62a2e840e 100644 --- a/swift-model/pom.xml +++ b/swift-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.7-SNAPSHOT + 3.2.7 swift-model OpenStack Swift Model From f051e742337e8a6796e92f6f05913f3510e448c5 Mon Sep 17 00:00:00 2001 From: Dominik Holler Date: Fri, 3 May 2019 17:29:20 +0200 Subject: [PATCH 136/144] [maven-release-plugin] prepare for next development iteration --- ceilometer-client/pom.xml | 6 +++--- ceilometer-model/pom.xml | 2 +- cinder-client/pom.xml | 6 +++--- cinder-model/pom.xml | 2 +- glance-client/pom.xml | 6 +++--- glance-model/pom.xml | 2 +- heat-client/pom.xml | 6 +++--- heat-model/pom.xml | 2 +- keystone-client/pom.xml | 6 +++--- keystone-model/pom.xml | 2 +- nova-client/pom.xml | 6 +++--- nova-model/pom.xml | 2 +- openstack-client-connectors/jersey-connector/pom.xml | 2 +- openstack-client-connectors/jersey2-connector/pom.xml | 4 ++-- openstack-client-connectors/pom.xml | 4 ++-- openstack-client-connectors/resteasy-connector/pom.xml | 2 +- openstack-client/pom.xml | 2 +- openstack-console/pom.xml | 6 +++--- openstack-examples/pom.xml | 4 ++-- pom.xml | 2 +- quantum-client/pom.xml | 6 +++--- quantum-model/pom.xml | 2 +- swift-client/pom.xml | 6 +++--- swift-model/pom.xml | 2 +- 24 files changed, 45 insertions(+), 45 deletions(-) diff --git a/ceilometer-client/pom.xml b/ceilometer-client/pom.xml index cf890738b..7827feaaa 100644 --- a/ceilometer-client/pom.xml +++ b/ceilometer-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.7 + 3.2.8-SNAPSHOT ceilometer-client OpenStack Ceilometer Client @@ -12,12 +12,12 @@ com.woorea openstack-client - 3.2.7 + 3.2.8-SNAPSHOT com.woorea ceilometer-model - 3.2.7 + 3.2.8-SNAPSHOT diff --git a/ceilometer-model/pom.xml b/ceilometer-model/pom.xml index 10d0c4df8..cca729a10 100644 --- a/ceilometer-model/pom.xml +++ b/ceilometer-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.7 + 3.2.8-SNAPSHOT ceilometer-model OpenStack Ceilometer Model diff --git a/cinder-client/pom.xml b/cinder-client/pom.xml index c6f075bc7..67852c8ac 100644 --- a/cinder-client/pom.xml +++ b/cinder-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.7 + 3.2.8-SNAPSHOT cinder-client OpenStack Cinder Client @@ -12,13 +12,13 @@ com.woorea openstack-client - 3.2.7 + 3.2.8-SNAPSHOT com.woorea cinder-model - 3.2.7 + 3.2.8-SNAPSHOT \ No newline at end of file diff --git a/cinder-model/pom.xml b/cinder-model/pom.xml index 143e701b9..bc1ecde54 100644 --- a/cinder-model/pom.xml +++ b/cinder-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.7 + 3.2.8-SNAPSHOT cinder-model OpenStack Cinder Model diff --git a/glance-client/pom.xml b/glance-client/pom.xml index a8c5f2e08..fdcccfa19 100644 --- a/glance-client/pom.xml +++ b/glance-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.7 + 3.2.8-SNAPSHOT glance-client OpenStack Glance Client @@ -12,13 +12,13 @@ com.woorea openstack-client - 3.2.7 + 3.2.8-SNAPSHOT com.woorea glance-model - 3.2.7 + 3.2.8-SNAPSHOT \ No newline at end of file diff --git a/glance-model/pom.xml b/glance-model/pom.xml index 0faa482ae..307bf335a 100644 --- a/glance-model/pom.xml +++ b/glance-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.7 + 3.2.8-SNAPSHOT glance-model OpenStack Glance Model diff --git a/heat-client/pom.xml b/heat-client/pom.xml index 693be992a..fe2df7444 100644 --- a/heat-client/pom.xml +++ b/heat-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.7 + 3.2.8-SNAPSHOT heat-client OpenStack Heat Client @@ -12,13 +12,13 @@ com.woorea openstack-client - 3.2.7 + 3.2.8-SNAPSHOT com.woorea heat-model - 3.2.7 + 3.2.8-SNAPSHOT \ No newline at end of file diff --git a/heat-model/pom.xml b/heat-model/pom.xml index 8c30b6d21..febbdec5d 100644 --- a/heat-model/pom.xml +++ b/heat-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.7 + 3.2.8-SNAPSHOT heat-model OpenStack Heat Model diff --git a/keystone-client/pom.xml b/keystone-client/pom.xml index d66af32bb..7e4c6e1c4 100644 --- a/keystone-client/pom.xml +++ b/keystone-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.7 + 3.2.8-SNAPSHOT keystone-client OpenStack Keystone Client @@ -12,12 +12,12 @@ com.woorea openstack-client - 3.2.7 + 3.2.8-SNAPSHOT com.woorea keystone-model - 3.2.7 + 3.2.8-SNAPSHOT \ No newline at end of file diff --git a/keystone-model/pom.xml b/keystone-model/pom.xml index afd86ca57..1a690bd9c 100644 --- a/keystone-model/pom.xml +++ b/keystone-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.7 + 3.2.8-SNAPSHOT keystone-model OpenStack Keystone Model diff --git a/nova-client/pom.xml b/nova-client/pom.xml index 1aa5d1a77..91421416c 100644 --- a/nova-client/pom.xml +++ b/nova-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.7 + 3.2.8-SNAPSHOT nova-client OpenStack Nova Client @@ -12,12 +12,12 @@ com.woorea openstack-client - 3.2.7 + 3.2.8-SNAPSHOT com.woorea nova-model - 3.2.7 + 3.2.8-SNAPSHOT \ No newline at end of file diff --git a/nova-model/pom.xml b/nova-model/pom.xml index 3b61e01c2..20445f54a 100644 --- a/nova-model/pom.xml +++ b/nova-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.7 + 3.2.8-SNAPSHOT nova-model OpenStack Nova Model diff --git a/openstack-client-connectors/jersey-connector/pom.xml b/openstack-client-connectors/jersey-connector/pom.xml index 6face1bc5..36677c4b9 100644 --- a/openstack-client-connectors/jersey-connector/pom.xml +++ b/openstack-client-connectors/jersey-connector/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-client-connectors - 3.2.7 + 3.2.8-SNAPSHOT jersey-connector OpenStack Jersey Connector diff --git a/openstack-client-connectors/jersey2-connector/pom.xml b/openstack-client-connectors/jersey2-connector/pom.xml index e5c2a248d..9bceae888 100644 --- a/openstack-client-connectors/jersey2-connector/pom.xml +++ b/openstack-client-connectors/jersey2-connector/pom.xml @@ -4,7 +4,7 @@ com.woorea openstack-client-connectors - 3.2.7 + 3.2.8-SNAPSHOT jersey2-connector OpenStack Jersey2 Connector @@ -27,7 +27,7 @@ com.woorea openstack-client - 3.2.7 + 3.2.8-SNAPSHOT diff --git a/openstack-client-connectors/pom.xml b/openstack-client-connectors/pom.xml index 3d1a698b0..2878a9059 100644 --- a/openstack-client-connectors/pom.xml +++ b/openstack-client-connectors/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.7 + 3.2.8-SNAPSHOT openstack-client-connectors OpenStack Client Connectors @@ -42,7 +42,7 @@ com.woorea openstack-client - 3.2.7 + 3.2.8-SNAPSHOT \ No newline at end of file diff --git a/openstack-client-connectors/resteasy-connector/pom.xml b/openstack-client-connectors/resteasy-connector/pom.xml index dc309907c..5a6de809f 100644 --- a/openstack-client-connectors/resteasy-connector/pom.xml +++ b/openstack-client-connectors/resteasy-connector/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-client-connectors - 3.2.7 + 3.2.8-SNAPSHOT resteasy-connector OpenStack RESTEasy Connector diff --git a/openstack-client/pom.xml b/openstack-client/pom.xml index 6d631c89b..760d34902 100644 --- a/openstack-client/pom.xml +++ b/openstack-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.7 + 3.2.8-SNAPSHOT openstack-client OpenStack Client diff --git a/openstack-console/pom.xml b/openstack-console/pom.xml index 509438d4f..741f625dc 100644 --- a/openstack-console/pom.xml +++ b/openstack-console/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.7 + 3.2.8-SNAPSHOT openstack-console OpenStack Console @@ -22,12 +22,12 @@ com.woorea keystone-client - 3.2.7 + 3.2.8-SNAPSHOT com.woorea nova-client - 3.2.7 + 3.2.8-SNAPSHOT diff --git a/openstack-examples/pom.xml b/openstack-examples/pom.xml index 84fd55c53..4f23e9165 100644 --- a/openstack-examples/pom.xml +++ b/openstack-examples/pom.xml @@ -3,11 +3,11 @@ com.woorea openstack-java-sdk - 3.2.7 + 3.2.8-SNAPSHOT UTF-8 - 3.2.7 + 3.2.8-SNAPSHOT openstack-examples OpenStack Examples diff --git a/pom.xml b/pom.xml index 659684be1..d6134bc4c 100644 --- a/pom.xml +++ b/pom.xml @@ -2,7 +2,7 @@ 4.0.0 com.woorea openstack-java-sdk - 3.2.7 + 3.2.8-SNAPSHOT pom OpenStack Java SDK OpenStack Java SDK diff --git a/quantum-client/pom.xml b/quantum-client/pom.xml index 24100d99f..295ddbe20 100644 --- a/quantum-client/pom.xml +++ b/quantum-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.7 + 3.2.8-SNAPSHOT quantum-client OpenStack Quantum Client @@ -12,12 +12,12 @@ com.woorea openstack-client - 3.2.7 + 3.2.8-SNAPSHOT com.woorea quantum-model - 3.2.7 + 3.2.8-SNAPSHOT diff --git a/quantum-model/pom.xml b/quantum-model/pom.xml index 26adfd6c3..b3d7d6d03 100644 --- a/quantum-model/pom.xml +++ b/quantum-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.7 + 3.2.8-SNAPSHOT quantum-model OpenStack Quantum Model diff --git a/swift-client/pom.xml b/swift-client/pom.xml index 24937c50b..65e1da30c 100644 --- a/swift-client/pom.xml +++ b/swift-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.7 + 3.2.8-SNAPSHOT swift-client OpenStack Swift Client @@ -12,12 +12,12 @@ com.woorea openstack-client - 3.2.7 + 3.2.8-SNAPSHOT com.woorea swift-model - 3.2.7 + 3.2.8-SNAPSHOT \ No newline at end of file diff --git a/swift-model/pom.xml b/swift-model/pom.xml index 62a2e840e..de6c1e6e9 100644 --- a/swift-model/pom.xml +++ b/swift-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.7 + 3.2.8-SNAPSHOT swift-model OpenStack Swift Model From 9879d1a4ba2f8261d0075cadd8d3f4caa468da3b Mon Sep 17 00:00:00 2001 From: Dominik Holler Date: Fri, 31 Jan 2020 16:59:22 +0100 Subject: [PATCH 137/144] Add explicit dependency to jaxb-api The explicit dependency to jaxb-api is required for Java11 compatibility. --- nova-model/pom.xml | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/nova-model/pom.xml b/nova-model/pom.xml index 20445f54a..e3c594888 100644 --- a/nova-model/pom.xml +++ b/nova-model/pom.xml @@ -5,6 +5,13 @@ openstack-java-sdk 3.2.8-SNAPSHOT + + + javax.xml.bind + jaxb-api + 2.2.12 + + nova-model OpenStack Nova Model OpenStack Nova Model From 237db5ca16c1dc0e60dfa56b87d169fcec5288f6 Mon Sep 17 00:00:00 2001 From: Dominik Holler Date: Wed, 29 Jan 2020 17:47:23 +0100 Subject: [PATCH 138/144] jackson upgraded to com.fasterxml version 2.9.x --- NEWS.md | 3 ++ .../openstack/ceilometer/v2/model/Meter.java | 2 +- .../ceilometer/v2/model/Resource.java | 2 +- .../openstack/ceilometer/v2/model/Sample.java | 2 +- .../ceilometer/v2/model/Statistics.java | 2 +- .../cinder/model/BaseConnection.java | 2 +- .../openstack/cinder/model/Capabilities.java | 4 +-- .../cinder/model/ConnectionForInitialize.java | 2 +- .../cinder/model/ConnectionForTerminate.java | 2 +- .../cinder/model/ConnectionInfo.java | 4 +-- .../woorea/openstack/cinder/model/Limits.java | 4 +-- .../woorea/openstack/cinder/model/Pool.java | 4 +-- .../woorea/openstack/cinder/model/Pools.java | 2 +- .../openstack/cinder/model/Snapshot.java | 4 +-- .../cinder/model/SnapshotForCreate.java | 4 +-- .../cinder/model/SnapshotForUpdate.java | 2 +- .../openstack/cinder/model/Snapshots.java | 2 +- .../woorea/openstack/cinder/model/Volume.java | 4 +-- .../cinder/model/VolumeForCreate.java | 4 +-- .../cinder/model/VolumeForExtend.java | 4 +-- .../cinder/model/VolumeForImageCreate.java | 4 +-- .../cinder/model/VolumeForUpdate.java | 2 +- .../openstack/cinder/model/VolumeType.java | 4 +-- .../cinder/model/VolumeTypeForCreate.java | 4 +-- .../openstack/cinder/model/VolumeTypes.java | 2 +- .../openstack/cinder/model/Volumes.java | 2 +- .../openstack/glance/ImagesResource.java | 2 +- .../woorea/openstack/glance/model/Image.java | 6 ++-- .../openstack/glance/model/ImageMember.java | 2 +- .../openstack/glance/model/ImageMembers.java | 2 +- .../woorea/openstack/glance/model/Images.java | 2 +- .../openstack/glance/model/SharedImages.java | 2 +- .../heat/model/CreateStackParam.java | 2 +- .../openstack/heat/model/Explanation.java | 4 +-- .../com/woorea/openstack/heat/model/Link.java | 2 +- .../woorea/openstack/heat/model/Resource.java | 2 +- .../openstack/heat/model/Resources.java | 2 +- .../woorea/openstack/heat/model/Stack.java | 6 ++-- .../woorea/openstack/heat/model/Stacks.java | 2 +- .../openstack/keystone/model/Access.java | 6 ++-- .../keystone/model/Authentication.java | 2 +- .../openstack/keystone/model/Endpoint.java | 4 +-- .../openstack/keystone/model/Endpoints.java | 2 +- .../openstack/keystone/model/Error.java | 2 +- .../woorea/openstack/keystone/model/Role.java | 2 +- .../openstack/keystone/model/Roles.java | 2 +- .../openstack/keystone/model/Service.java | 2 +- .../openstack/keystone/model/Services.java | 2 +- .../openstack/keystone/model/Tenant.java | 4 +-- .../openstack/keystone/model/Tenants.java | 2 +- .../openstack/keystone/model/Token.java | 2 +- .../woorea/openstack/keystone/model/User.java | 4 +-- .../openstack/keystone/model/Users.java | 2 +- .../model/authentication/AccessKey.java | 2 +- .../authentication/TokenAuthentication.java | 2 +- .../authentication/UsernamePassword.java | 2 +- .../keystone/v3/model/Authentication.java | 2 +- .../keystone/v3/model/Credential.java | 2 +- .../keystone/v3/model/Credentials.java | 2 +- .../openstack/keystone/v3/model/Domain.java | 2 +- .../openstack/keystone/v3/model/Domains.java | 2 +- .../openstack/keystone/v3/model/Endpoint.java | 4 +-- .../keystone/v3/model/Endpoints.java | 2 +- .../openstack/keystone/v3/model/Group.java | 4 +-- .../openstack/keystone/v3/model/Groups.java | 2 +- .../openstack/keystone/v3/model/Policies.java | 2 +- .../openstack/keystone/v3/model/Policy.java | 2 +- .../openstack/keystone/v3/model/Project.java | 4 +-- .../openstack/keystone/v3/model/Projects.java | 2 +- .../openstack/keystone/v3/model/Role.java | 2 +- .../openstack/keystone/v3/model/Roles.java | 2 +- .../openstack/keystone/v3/model/Service.java | 2 +- .../openstack/keystone/v3/model/Services.java | 2 +- .../openstack/keystone/v3/model/Token.java | 6 ++-- .../openstack/keystone/v3/model/User.java | 4 +-- .../openstack/keystone/v3/model/Users.java | 2 +- .../openstack/nova/model/Certificate.java | 4 +-- .../openstack/nova/model/Cloudpipe.java | 2 +- .../openstack/nova/model/Cloudpipes.java | 2 +- .../openstack/nova/model/Extension.java | 2 +- .../openstack/nova/model/Extensions.java | 2 +- .../woorea/openstack/nova/model/Flavor.java | 4 +-- .../openstack/nova/model/FlavorForCreate.java | 4 +-- .../woorea/openstack/nova/model/Flavors.java | 2 +- .../openstack/nova/model/FloatingIp.java | 4 +-- .../nova/model/FloatingIpDomain.java | 4 +-- .../nova/model/FloatingIpDomains.java | 2 +- .../openstack/nova/model/FloatingIpPools.java | 2 +- .../openstack/nova/model/FloatingIps.java | 2 +- .../com/woorea/openstack/nova/model/Host.java | 2 +- .../openstack/nova/model/HostAggregate.java | 4 +-- .../openstack/nova/model/HostAggregates.java | 2 +- .../woorea/openstack/nova/model/Hosts.java | 2 +- .../openstack/nova/model/Hypervisor.java | 4 +-- .../openstack/nova/model/Hypervisors.java | 2 +- .../woorea/openstack/nova/model/Image.java | 4 +-- .../openstack/nova/model/ImageFromVolume.java | 4 +-- .../woorea/openstack/nova/model/Images.java | 2 +- .../woorea/openstack/nova/model/KeyPair.java | 4 +-- .../woorea/openstack/nova/model/KeyPairs.java | 2 +- .../woorea/openstack/nova/model/Limits.java | 4 +-- .../woorea/openstack/nova/model/Network.java | 4 +-- .../nova/model/NetworkForCreate.java | 4 +-- .../woorea/openstack/nova/model/Networks.java | 2 +- .../woorea/openstack/nova/model/QuotaSet.java | 4 +-- .../openstack/nova/model/SecurityGroup.java | 4 +-- .../nova/model/SecurityGroupForCreate.java | 2 +- .../model/SecurityGroupRuleForCreate.java | 4 +-- .../openstack/nova/model/SecurityGroups.java | 2 +- .../woorea/openstack/nova/model/Server.java | 8 ++--- .../openstack/nova/model/ServerAction.java | 4 +-- .../openstack/nova/model/ServerForCreate.java | 4 +-- .../woorea/openstack/nova/model/Servers.java | 2 +- .../woorea/openstack/nova/model/Service.java | 4 +-- .../woorea/openstack/nova/model/Services.java | 2 +- .../nova/model/SimpleTenantUsage.java | 4 +-- .../nova/model/SimpleTenantUsages.java | 2 +- .../woorea/openstack/nova/model/Snapshot.java | 4 +-- .../nova/model/SnapshotForCreate.java | 4 +-- .../openstack/nova/model/Snapshots.java | 2 +- .../woorea/openstack/nova/model/Volume.java | 4 +-- .../nova/model/VolumeAttachment.java | 2 +- .../nova/model/VolumeAttachments.java | 2 +- .../openstack/nova/model/VolumeForCreate.java | 4 +-- .../nova/model/VolumeForImageCreate.java | 4 +-- .../openstack/nova/model/VolumeType.java | 2 +- .../openstack/nova/model/VolumeTypes.java | 2 +- .../woorea/openstack/nova/model/Volumes.java | 2 +- .../jersey-connector/pom.xml | 6 ++-- .../openstack/connector/JerseyConnector.java | 36 +++++++++---------- .../woorea/openstack/connector/OpenStack.java | 35 +++++++++--------- .../resteasy-connector/pom.xml | 6 ++-- .../connector/RESTEasyConnector.java | 36 +++++++++---------- pom.xml | 6 ++-- .../quantum/api/query/AbsOpenStackCmd.java | 2 +- .../openstack/quantum/model/GatewayInfo.java | 2 +- .../openstack/quantum/model/Network.java | 8 ++--- .../quantum/model/NetworkForCreate.java | 2 +- .../openstack/quantum/model/Networks.java | 2 +- .../woorea/openstack/quantum/model/Port.java | 11 +++--- .../quantum/model/PortForCreate.java | 2 +- .../woorea/openstack/quantum/model/Ports.java | 2 +- .../openstack/quantum/model/Router.java | 4 +-- .../quantum/model/RouterForAddInterface.java | 2 +- .../quantum/model/RouterForCreate.java | 4 +-- .../quantum/model/RouterInterface.java | 4 +-- .../openstack/quantum/model/Routers.java | 2 +- .../openstack/quantum/model/Subnet.java | 13 +++---- .../quantum/model/SubnetForCreate.java | 4 +-- .../openstack/quantum/model/Subnets.java | 2 +- .../openstack/quantum/model/NetworkTest.java | 2 +- .../openstack/quantum/model/PortTest.java | 19 +++++----- .../openstack/quantum/model/SubnetTest.java | 2 +- .../openstack/swift/model/Container.java | 2 +- .../woorea/openstack/swift/model/Object.java | 3 +- 155 files changed, 297 insertions(+), 291 deletions(-) diff --git a/NEWS.md b/NEWS.md index 9eced7fc2..d73bd803b 100644 --- a/NEWS.md +++ b/NEWS.md @@ -1,3 +1,6 @@ +# 3.2.8 / 2020-01-29 +* jackson upgraded to com.fasterxml version 2.9.x + # 3.2.7 / 2019-05-03 * Remove maven-gpg-plugin diff --git a/ceilometer-model/src/main/java/com/woorea/openstack/ceilometer/v2/model/Meter.java b/ceilometer-model/src/main/java/com/woorea/openstack/ceilometer/v2/model/Meter.java index df9182f9c..53f192b54 100644 --- a/ceilometer-model/src/main/java/com/woorea/openstack/ceilometer/v2/model/Meter.java +++ b/ceilometer-model/src/main/java/com/woorea/openstack/ceilometer/v2/model/Meter.java @@ -1,6 +1,6 @@ package com.woorea.openstack.ceilometer.v2.model; -import org.codehaus.jackson.annotate.JsonProperty; +import com.fasterxml.jackson.annotation.JsonProperty; public class Meter { diff --git a/ceilometer-model/src/main/java/com/woorea/openstack/ceilometer/v2/model/Resource.java b/ceilometer-model/src/main/java/com/woorea/openstack/ceilometer/v2/model/Resource.java index 24e14aa3d..7ca1fb089 100644 --- a/ceilometer-model/src/main/java/com/woorea/openstack/ceilometer/v2/model/Resource.java +++ b/ceilometer-model/src/main/java/com/woorea/openstack/ceilometer/v2/model/Resource.java @@ -2,7 +2,7 @@ import java.util.Map; -import org.codehaus.jackson.annotate.JsonProperty; +import com.fasterxml.jackson.annotation.JsonProperty; public class Resource { //{"resource_id": "23b55841eedd41e99d5f3f32149ca086", "timestamp": "2013-03-03T15:19:00", "project_id": "23b55841eedd41e99d5f3f32149ca086", "user_id": null, "metadata": {}} diff --git a/ceilometer-model/src/main/java/com/woorea/openstack/ceilometer/v2/model/Sample.java b/ceilometer-model/src/main/java/com/woorea/openstack/ceilometer/v2/model/Sample.java index 8827de466..c17d34159 100644 --- a/ceilometer-model/src/main/java/com/woorea/openstack/ceilometer/v2/model/Sample.java +++ b/ceilometer-model/src/main/java/com/woorea/openstack/ceilometer/v2/model/Sample.java @@ -2,7 +2,7 @@ import java.util.Map; -import org.codehaus.jackson.annotate.JsonProperty; +import com.fasterxml.jackson.annotation.JsonProperty; public class Sample { diff --git a/ceilometer-model/src/main/java/com/woorea/openstack/ceilometer/v2/model/Statistics.java b/ceilometer-model/src/main/java/com/woorea/openstack/ceilometer/v2/model/Statistics.java index 5a34fe54b..f8236aa21 100644 --- a/ceilometer-model/src/main/java/com/woorea/openstack/ceilometer/v2/model/Statistics.java +++ b/ceilometer-model/src/main/java/com/woorea/openstack/ceilometer/v2/model/Statistics.java @@ -2,7 +2,7 @@ import java.math.BigDecimal; -import org.codehaus.jackson.annotate.JsonProperty; +import com.fasterxml.jackson.annotation.JsonProperty; public class Statistics { diff --git a/cinder-model/src/main/java/com/woorea/openstack/cinder/model/BaseConnection.java b/cinder-model/src/main/java/com/woorea/openstack/cinder/model/BaseConnection.java index cca3514f2..e2fc8c2ed 100644 --- a/cinder-model/src/main/java/com/woorea/openstack/cinder/model/BaseConnection.java +++ b/cinder-model/src/main/java/com/woorea/openstack/cinder/model/BaseConnection.java @@ -4,7 +4,7 @@ import java.util.HashMap; import java.util.Map; -import org.codehaus.jackson.annotate.JsonProperty; +import com.fasterxml.jackson.annotation.JsonProperty; public abstract class BaseConnection implements Serializable { @JsonProperty("connector") diff --git a/cinder-model/src/main/java/com/woorea/openstack/cinder/model/Capabilities.java b/cinder-model/src/main/java/com/woorea/openstack/cinder/model/Capabilities.java index 1f16002a2..c8cd98b6b 100644 --- a/cinder-model/src/main/java/com/woorea/openstack/cinder/model/Capabilities.java +++ b/cinder-model/src/main/java/com/woorea/openstack/cinder/model/Capabilities.java @@ -3,8 +3,8 @@ import java.io.Serializable; import java.util.List; import java.util.Map; -import org.codehaus.jackson.annotate.JsonProperty; -import org.codehaus.jackson.map.annotate.JsonRootName; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonRootName; /** * Model for Volume diff --git a/cinder-model/src/main/java/com/woorea/openstack/cinder/model/ConnectionForInitialize.java b/cinder-model/src/main/java/com/woorea/openstack/cinder/model/ConnectionForInitialize.java index 76ff7b784..47218054c 100644 --- a/cinder-model/src/main/java/com/woorea/openstack/cinder/model/ConnectionForInitialize.java +++ b/cinder-model/src/main/java/com/woorea/openstack/cinder/model/ConnectionForInitialize.java @@ -1,6 +1,6 @@ package com.woorea.openstack.cinder.model; -import org.codehaus.jackson.map.annotate.JsonRootName; +import com.fasterxml.jackson.annotation.JsonRootName; import java.io.Serializable; diff --git a/cinder-model/src/main/java/com/woorea/openstack/cinder/model/ConnectionForTerminate.java b/cinder-model/src/main/java/com/woorea/openstack/cinder/model/ConnectionForTerminate.java index 0777ab472..7fee326b4 100644 --- a/cinder-model/src/main/java/com/woorea/openstack/cinder/model/ConnectionForTerminate.java +++ b/cinder-model/src/main/java/com/woorea/openstack/cinder/model/ConnectionForTerminate.java @@ -1,6 +1,6 @@ package com.woorea.openstack.cinder.model; -import org.codehaus.jackson.map.annotate.JsonRootName; +import com.fasterxml.jackson.annotation.JsonRootName; import java.io.Serializable; diff --git a/cinder-model/src/main/java/com/woorea/openstack/cinder/model/ConnectionInfo.java b/cinder-model/src/main/java/com/woorea/openstack/cinder/model/ConnectionInfo.java index 039fc8088..362aaca02 100644 --- a/cinder-model/src/main/java/com/woorea/openstack/cinder/model/ConnectionInfo.java +++ b/cinder-model/src/main/java/com/woorea/openstack/cinder/model/ConnectionInfo.java @@ -3,8 +3,8 @@ import java.io.Serializable; import java.util.Map; -import org.codehaus.jackson.annotate.JsonProperty; -import org.codehaus.jackson.map.annotate.JsonRootName; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonRootName; @JsonRootName("connection_info") public class ConnectionInfo implements Serializable { diff --git a/cinder-model/src/main/java/com/woorea/openstack/cinder/model/Limits.java b/cinder-model/src/main/java/com/woorea/openstack/cinder/model/Limits.java index 356b6bde7..d6ef7762d 100644 --- a/cinder-model/src/main/java/com/woorea/openstack/cinder/model/Limits.java +++ b/cinder-model/src/main/java/com/woorea/openstack/cinder/model/Limits.java @@ -1,7 +1,7 @@ package com.woorea.openstack.cinder.model; -import org.codehaus.jackson.annotate.JsonProperty; -import org.codehaus.jackson.map.annotate.JsonRootName; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonRootName; import java.io.Serializable; import java.util.Calendar; diff --git a/cinder-model/src/main/java/com/woorea/openstack/cinder/model/Pool.java b/cinder-model/src/main/java/com/woorea/openstack/cinder/model/Pool.java index 4ba069fac..1e8da7166 100644 --- a/cinder-model/src/main/java/com/woorea/openstack/cinder/model/Pool.java +++ b/cinder-model/src/main/java/com/woorea/openstack/cinder/model/Pool.java @@ -3,8 +3,8 @@ import java.io.Serializable; import java.util.List; import java.util.Map; -import org.codehaus.jackson.annotate.JsonProperty; -import org.codehaus.jackson.map.annotate.JsonRootName; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonRootName; /** * Model for Pool diff --git a/cinder-model/src/main/java/com/woorea/openstack/cinder/model/Pools.java b/cinder-model/src/main/java/com/woorea/openstack/cinder/model/Pools.java index c7d0ec7e6..3816362f7 100644 --- a/cinder-model/src/main/java/com/woorea/openstack/cinder/model/Pools.java +++ b/cinder-model/src/main/java/com/woorea/openstack/cinder/model/Pools.java @@ -3,7 +3,7 @@ import java.io.Serializable; import java.util.Iterator; import java.util.List; -import org.codehaus.jackson.annotate.JsonProperty; +import com.fasterxml.jackson.annotation.JsonProperty; /** * Model for List of pools diff --git a/cinder-model/src/main/java/com/woorea/openstack/cinder/model/Snapshot.java b/cinder-model/src/main/java/com/woorea/openstack/cinder/model/Snapshot.java index 3f45febc8..60b7ef13f 100644 --- a/cinder-model/src/main/java/com/woorea/openstack/cinder/model/Snapshot.java +++ b/cinder-model/src/main/java/com/woorea/openstack/cinder/model/Snapshot.java @@ -3,8 +3,8 @@ import java.io.Serializable; import java.util.Map; -import org.codehaus.jackson.annotate.JsonProperty; -import org.codehaus.jackson.map.annotate.JsonRootName; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonRootName; @JsonRootName("snapshot") public class Snapshot implements Serializable { diff --git a/cinder-model/src/main/java/com/woorea/openstack/cinder/model/SnapshotForCreate.java b/cinder-model/src/main/java/com/woorea/openstack/cinder/model/SnapshotForCreate.java index 738b550c9..3634fcb0a 100644 --- a/cinder-model/src/main/java/com/woorea/openstack/cinder/model/SnapshotForCreate.java +++ b/cinder-model/src/main/java/com/woorea/openstack/cinder/model/SnapshotForCreate.java @@ -2,8 +2,8 @@ import java.io.Serializable; -import org.codehaus.jackson.annotate.JsonProperty; -import org.codehaus.jackson.map.annotate.JsonRootName; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonRootName; @JsonRootName("snapshot") public class SnapshotForCreate implements Serializable { diff --git a/cinder-model/src/main/java/com/woorea/openstack/cinder/model/SnapshotForUpdate.java b/cinder-model/src/main/java/com/woorea/openstack/cinder/model/SnapshotForUpdate.java index 4dbe13366..525ef3c31 100644 --- a/cinder-model/src/main/java/com/woorea/openstack/cinder/model/SnapshotForUpdate.java +++ b/cinder-model/src/main/java/com/woorea/openstack/cinder/model/SnapshotForUpdate.java @@ -2,7 +2,7 @@ import java.io.Serializable; -import org.codehaus.jackson.map.annotate.JsonRootName; +import com.fasterxml.jackson.annotation.JsonRootName; @JsonRootName("snapshot") public class SnapshotForUpdate implements Serializable { diff --git a/cinder-model/src/main/java/com/woorea/openstack/cinder/model/Snapshots.java b/cinder-model/src/main/java/com/woorea/openstack/cinder/model/Snapshots.java index 6ee9ddd39..176b1c459 100644 --- a/cinder-model/src/main/java/com/woorea/openstack/cinder/model/Snapshots.java +++ b/cinder-model/src/main/java/com/woorea/openstack/cinder/model/Snapshots.java @@ -4,7 +4,7 @@ import java.util.Iterator; import java.util.List; -import org.codehaus.jackson.annotate.JsonProperty; +import com.fasterxml.jackson.annotation.JsonProperty; public class Snapshots implements Iterable, Serializable { diff --git a/cinder-model/src/main/java/com/woorea/openstack/cinder/model/Volume.java b/cinder-model/src/main/java/com/woorea/openstack/cinder/model/Volume.java index ddd2c3f1d..a5fda3f20 100644 --- a/cinder-model/src/main/java/com/woorea/openstack/cinder/model/Volume.java +++ b/cinder-model/src/main/java/com/woorea/openstack/cinder/model/Volume.java @@ -1,7 +1,7 @@ package com.woorea.openstack.cinder.model; -import org.codehaus.jackson.annotate.JsonProperty; -import org.codehaus.jackson.map.annotate.JsonRootName; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonRootName; import java.io.Serializable; import java.util.List; diff --git a/cinder-model/src/main/java/com/woorea/openstack/cinder/model/VolumeForCreate.java b/cinder-model/src/main/java/com/woorea/openstack/cinder/model/VolumeForCreate.java index ea0b92ba0..44e6eced8 100644 --- a/cinder-model/src/main/java/com/woorea/openstack/cinder/model/VolumeForCreate.java +++ b/cinder-model/src/main/java/com/woorea/openstack/cinder/model/VolumeForCreate.java @@ -3,8 +3,8 @@ import java.io.Serializable; import java.util.Map; -import org.codehaus.jackson.annotate.JsonProperty; -import org.codehaus.jackson.map.annotate.JsonRootName; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonRootName; @JsonRootName("volume") public class VolumeForCreate implements Serializable { diff --git a/cinder-model/src/main/java/com/woorea/openstack/cinder/model/VolumeForExtend.java b/cinder-model/src/main/java/com/woorea/openstack/cinder/model/VolumeForExtend.java index 7c4c3d3c6..5a73dc870 100644 --- a/cinder-model/src/main/java/com/woorea/openstack/cinder/model/VolumeForExtend.java +++ b/cinder-model/src/main/java/com/woorea/openstack/cinder/model/VolumeForExtend.java @@ -2,8 +2,8 @@ import java.io.Serializable; -import org.codehaus.jackson.annotate.JsonProperty; -import org.codehaus.jackson.map.annotate.JsonRootName; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonRootName; @JsonRootName("os-extend") public class VolumeForExtend implements Serializable { diff --git a/cinder-model/src/main/java/com/woorea/openstack/cinder/model/VolumeForImageCreate.java b/cinder-model/src/main/java/com/woorea/openstack/cinder/model/VolumeForImageCreate.java index eb6d913a6..4e67566f6 100644 --- a/cinder-model/src/main/java/com/woorea/openstack/cinder/model/VolumeForImageCreate.java +++ b/cinder-model/src/main/java/com/woorea/openstack/cinder/model/VolumeForImageCreate.java @@ -2,8 +2,8 @@ import java.io.Serializable; -import org.codehaus.jackson.annotate.JsonProperty; -import org.codehaus.jackson.map.annotate.JsonRootName; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonRootName; @JsonRootName("os-volume_upload_image") public class VolumeForImageCreate implements Serializable { diff --git a/cinder-model/src/main/java/com/woorea/openstack/cinder/model/VolumeForUpdate.java b/cinder-model/src/main/java/com/woorea/openstack/cinder/model/VolumeForUpdate.java index 3d2c079f9..6ea3306ca 100644 --- a/cinder-model/src/main/java/com/woorea/openstack/cinder/model/VolumeForUpdate.java +++ b/cinder-model/src/main/java/com/woorea/openstack/cinder/model/VolumeForUpdate.java @@ -2,7 +2,7 @@ import java.io.Serializable; -import org.codehaus.jackson.map.annotate.JsonRootName; +import com.fasterxml.jackson.annotation.JsonRootName; @JsonRootName("volume") public class VolumeForUpdate implements Serializable { diff --git a/cinder-model/src/main/java/com/woorea/openstack/cinder/model/VolumeType.java b/cinder-model/src/main/java/com/woorea/openstack/cinder/model/VolumeType.java index 21a5556cf..702fc41b2 100644 --- a/cinder-model/src/main/java/com/woorea/openstack/cinder/model/VolumeType.java +++ b/cinder-model/src/main/java/com/woorea/openstack/cinder/model/VolumeType.java @@ -3,8 +3,8 @@ import java.io.Serializable; import java.util.Map; -import org.codehaus.jackson.annotate.JsonProperty; -import org.codehaus.jackson.map.annotate.JsonRootName; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonRootName; @JsonRootName("volume_type") public class VolumeType implements Serializable { diff --git a/cinder-model/src/main/java/com/woorea/openstack/cinder/model/VolumeTypeForCreate.java b/cinder-model/src/main/java/com/woorea/openstack/cinder/model/VolumeTypeForCreate.java index 9c7d8483f..aaa6992e4 100644 --- a/cinder-model/src/main/java/com/woorea/openstack/cinder/model/VolumeTypeForCreate.java +++ b/cinder-model/src/main/java/com/woorea/openstack/cinder/model/VolumeTypeForCreate.java @@ -3,8 +3,8 @@ import java.io.Serializable; import java.util.Map; -import org.codehaus.jackson.annotate.JsonProperty; -import org.codehaus.jackson.map.annotate.JsonRootName; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonRootName; @JsonRootName("volume_type") public class VolumeTypeForCreate implements Serializable { diff --git a/cinder-model/src/main/java/com/woorea/openstack/cinder/model/VolumeTypes.java b/cinder-model/src/main/java/com/woorea/openstack/cinder/model/VolumeTypes.java index 7a6826e11..f341cafdd 100644 --- a/cinder-model/src/main/java/com/woorea/openstack/cinder/model/VolumeTypes.java +++ b/cinder-model/src/main/java/com/woorea/openstack/cinder/model/VolumeTypes.java @@ -4,7 +4,7 @@ import java.util.Iterator; import java.util.List; -import org.codehaus.jackson.annotate.JsonProperty; +import com.fasterxml.jackson.annotation.JsonProperty; public class VolumeTypes implements Iterable, Serializable { diff --git a/cinder-model/src/main/java/com/woorea/openstack/cinder/model/Volumes.java b/cinder-model/src/main/java/com/woorea/openstack/cinder/model/Volumes.java index 4f8781e0a..6de026556 100644 --- a/cinder-model/src/main/java/com/woorea/openstack/cinder/model/Volumes.java +++ b/cinder-model/src/main/java/com/woorea/openstack/cinder/model/Volumes.java @@ -4,7 +4,7 @@ import java.util.Iterator; import java.util.List; -import org.codehaus.jackson.annotate.JsonProperty; +import com.fasterxml.jackson.annotation.JsonProperty; public class Volumes implements Iterable, Serializable { diff --git a/glance-client/src/main/java/com/woorea/openstack/glance/ImagesResource.java b/glance-client/src/main/java/com/woorea/openstack/glance/ImagesResource.java index ae46548db..aa56b7a0b 100644 --- a/glance-client/src/main/java/com/woorea/openstack/glance/ImagesResource.java +++ b/glance-client/src/main/java/com/woorea/openstack/glance/ImagesResource.java @@ -5,7 +5,7 @@ import java.util.HashMap; import java.util.Map; -import org.codehaus.jackson.annotate.JsonProperty; +import com.fasterxml.jackson.annotation.JsonProperty; import com.woorea.openstack.base.client.Entity; import com.woorea.openstack.base.client.HttpMethod; diff --git a/glance-model/src/main/java/com/woorea/openstack/glance/model/Image.java b/glance-model/src/main/java/com/woorea/openstack/glance/model/Image.java index 5d1167a28..3ad874629 100644 --- a/glance-model/src/main/java/com/woorea/openstack/glance/model/Image.java +++ b/glance-model/src/main/java/com/woorea/openstack/glance/model/Image.java @@ -5,9 +5,9 @@ import java.util.HashMap; import java.util.Map; -import org.codehaus.jackson.annotate.JsonIgnoreProperties; -import org.codehaus.jackson.annotate.JsonProperty; -import org.codehaus.jackson.map.annotate.JsonRootName; +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonRootName; @JsonRootName("image") @JsonIgnoreProperties(ignoreUnknown = true) diff --git a/glance-model/src/main/java/com/woorea/openstack/glance/model/ImageMember.java b/glance-model/src/main/java/com/woorea/openstack/glance/model/ImageMember.java index 4b8c3e753..0977fa34e 100644 --- a/glance-model/src/main/java/com/woorea/openstack/glance/model/ImageMember.java +++ b/glance-model/src/main/java/com/woorea/openstack/glance/model/ImageMember.java @@ -2,7 +2,7 @@ import java.io.Serializable; -import org.codehaus.jackson.annotate.JsonProperty; +import com.fasterxml.jackson.annotation.JsonProperty; public class ImageMember implements Serializable { diff --git a/glance-model/src/main/java/com/woorea/openstack/glance/model/ImageMembers.java b/glance-model/src/main/java/com/woorea/openstack/glance/model/ImageMembers.java index 68aa17612..fc5193253 100644 --- a/glance-model/src/main/java/com/woorea/openstack/glance/model/ImageMembers.java +++ b/glance-model/src/main/java/com/woorea/openstack/glance/model/ImageMembers.java @@ -4,7 +4,7 @@ import java.util.Iterator; import java.util.List; -import org.codehaus.jackson.annotate.JsonProperty; +import com.fasterxml.jackson.annotation.JsonProperty; public class ImageMembers implements Iterable, Serializable { diff --git a/glance-model/src/main/java/com/woorea/openstack/glance/model/Images.java b/glance-model/src/main/java/com/woorea/openstack/glance/model/Images.java index af612ba1d..348ac29c1 100644 --- a/glance-model/src/main/java/com/woorea/openstack/glance/model/Images.java +++ b/glance-model/src/main/java/com/woorea/openstack/glance/model/Images.java @@ -4,7 +4,7 @@ import java.util.Iterator; import java.util.List; -import org.codehaus.jackson.annotate.JsonProperty; +import com.fasterxml.jackson.annotation.JsonProperty; public class Images implements Iterable, Serializable { diff --git a/glance-model/src/main/java/com/woorea/openstack/glance/model/SharedImages.java b/glance-model/src/main/java/com/woorea/openstack/glance/model/SharedImages.java index 111d0942b..78ca09764 100644 --- a/glance-model/src/main/java/com/woorea/openstack/glance/model/SharedImages.java +++ b/glance-model/src/main/java/com/woorea/openstack/glance/model/SharedImages.java @@ -4,7 +4,7 @@ import java.util.Iterator; import java.util.List; -import org.codehaus.jackson.annotate.JsonProperty; +import com.fasterxml.jackson.annotation.JsonProperty; public class SharedImages implements Iterable, Serializable { diff --git a/heat-model/src/main/java/com/woorea/openstack/heat/model/CreateStackParam.java b/heat-model/src/main/java/com/woorea/openstack/heat/model/CreateStackParam.java index ebdddfa09..f602719d6 100644 --- a/heat-model/src/main/java/com/woorea/openstack/heat/model/CreateStackParam.java +++ b/heat-model/src/main/java/com/woorea/openstack/heat/model/CreateStackParam.java @@ -1,6 +1,6 @@ package com.woorea.openstack.heat.model; -import org.codehaus.jackson.annotate.JsonProperty; +import com.fasterxml.jackson.annotation.JsonProperty; import java.util.Map; diff --git a/heat-model/src/main/java/com/woorea/openstack/heat/model/Explanation.java b/heat-model/src/main/java/com/woorea/openstack/heat/model/Explanation.java index 7e255643a..b14577418 100644 --- a/heat-model/src/main/java/com/woorea/openstack/heat/model/Explanation.java +++ b/heat-model/src/main/java/com/woorea/openstack/heat/model/Explanation.java @@ -1,7 +1,7 @@ package com.woorea.openstack.heat.model; -import org.codehaus.jackson.annotate.JsonProperty; -import org.codehaus.jackson.map.annotate.JsonRootName; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonRootName; @JsonRootName("error") public class Explanation { diff --git a/heat-model/src/main/java/com/woorea/openstack/heat/model/Link.java b/heat-model/src/main/java/com/woorea/openstack/heat/model/Link.java index ec1970fd6..1f9d5826e 100644 --- a/heat-model/src/main/java/com/woorea/openstack/heat/model/Link.java +++ b/heat-model/src/main/java/com/woorea/openstack/heat/model/Link.java @@ -1,6 +1,6 @@ package com.woorea.openstack.heat.model; -import org.codehaus.jackson.annotate.JsonProperty; +import com.fasterxml.jackson.annotation.JsonProperty; public class Link { @JsonProperty("href") diff --git a/heat-model/src/main/java/com/woorea/openstack/heat/model/Resource.java b/heat-model/src/main/java/com/woorea/openstack/heat/model/Resource.java index 159bbcda2..58c1a1ae4 100644 --- a/heat-model/src/main/java/com/woorea/openstack/heat/model/Resource.java +++ b/heat-model/src/main/java/com/woorea/openstack/heat/model/Resource.java @@ -1,6 +1,6 @@ package com.woorea.openstack.heat.model; -import org.codehaus.jackson.annotate.JsonProperty; +import com.fasterxml.jackson.annotation.JsonProperty; import java.util.Date; import java.util.List; diff --git a/heat-model/src/main/java/com/woorea/openstack/heat/model/Resources.java b/heat-model/src/main/java/com/woorea/openstack/heat/model/Resources.java index 068c5e08c..a8d9023f8 100644 --- a/heat-model/src/main/java/com/woorea/openstack/heat/model/Resources.java +++ b/heat-model/src/main/java/com/woorea/openstack/heat/model/Resources.java @@ -1,6 +1,6 @@ package com.woorea.openstack.heat.model; -import org.codehaus.jackson.annotate.JsonProperty; +import com.fasterxml.jackson.annotation.JsonProperty; import java.io.Serializable; import java.util.Iterator; diff --git a/heat-model/src/main/java/com/woorea/openstack/heat/model/Stack.java b/heat-model/src/main/java/com/woorea/openstack/heat/model/Stack.java index 9ed8f245c..b27bbc1ab 100644 --- a/heat-model/src/main/java/com/woorea/openstack/heat/model/Stack.java +++ b/heat-model/src/main/java/com/woorea/openstack/heat/model/Stack.java @@ -1,8 +1,8 @@ package com.woorea.openstack.heat.model; -import org.codehaus.jackson.annotate.JsonIgnoreProperties; -import org.codehaus.jackson.annotate.JsonProperty; -import org.codehaus.jackson.map.annotate.JsonRootName; +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonRootName; import java.util.Date; import java.util.List; diff --git a/heat-model/src/main/java/com/woorea/openstack/heat/model/Stacks.java b/heat-model/src/main/java/com/woorea/openstack/heat/model/Stacks.java index 6f174aa1b..5731f5b7a 100644 --- a/heat-model/src/main/java/com/woorea/openstack/heat/model/Stacks.java +++ b/heat-model/src/main/java/com/woorea/openstack/heat/model/Stacks.java @@ -1,6 +1,6 @@ package com.woorea.openstack.heat.model; -import org.codehaus.jackson.annotate.JsonProperty; +import com.fasterxml.jackson.annotation.JsonProperty; import java.io.Serializable; import java.util.Iterator; diff --git a/keystone-model/src/main/java/com/woorea/openstack/keystone/model/Access.java b/keystone-model/src/main/java/com/woorea/openstack/keystone/model/Access.java index a7968ff44..f4f37d80a 100644 --- a/keystone-model/src/main/java/com/woorea/openstack/keystone/model/Access.java +++ b/keystone-model/src/main/java/com/woorea/openstack/keystone/model/Access.java @@ -4,9 +4,9 @@ import java.util.List; import java.util.Map; -import org.codehaus.jackson.annotate.JsonIgnoreProperties; -import org.codehaus.jackson.annotate.JsonProperty; -import org.codehaus.jackson.map.annotate.JsonRootName; +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonRootName; @JsonRootName("access") public class Access implements Serializable { diff --git a/keystone-model/src/main/java/com/woorea/openstack/keystone/model/Authentication.java b/keystone-model/src/main/java/com/woorea/openstack/keystone/model/Authentication.java index f5c8f5c9d..b795b3d05 100644 --- a/keystone-model/src/main/java/com/woorea/openstack/keystone/model/Authentication.java +++ b/keystone-model/src/main/java/com/woorea/openstack/keystone/model/Authentication.java @@ -2,7 +2,7 @@ import java.io.Serializable; -import org.codehaus.jackson.map.annotate.JsonRootName; +import com.fasterxml.jackson.annotation.JsonRootName; public abstract class Authentication implements Serializable { diff --git a/keystone-model/src/main/java/com/woorea/openstack/keystone/model/Endpoint.java b/keystone-model/src/main/java/com/woorea/openstack/keystone/model/Endpoint.java index f179e2542..77f195d7d 100644 --- a/keystone-model/src/main/java/com/woorea/openstack/keystone/model/Endpoint.java +++ b/keystone-model/src/main/java/com/woorea/openstack/keystone/model/Endpoint.java @@ -2,8 +2,8 @@ import java.io.Serializable; -import org.codehaus.jackson.annotate.JsonProperty; -import org.codehaus.jackson.map.annotate.JsonRootName; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonRootName; @JsonRootName("endpoint") public class Endpoint implements Serializable { diff --git a/keystone-model/src/main/java/com/woorea/openstack/keystone/model/Endpoints.java b/keystone-model/src/main/java/com/woorea/openstack/keystone/model/Endpoints.java index d7a58983c..395ce3671 100644 --- a/keystone-model/src/main/java/com/woorea/openstack/keystone/model/Endpoints.java +++ b/keystone-model/src/main/java/com/woorea/openstack/keystone/model/Endpoints.java @@ -4,7 +4,7 @@ import java.util.Iterator; import java.util.List; -import org.codehaus.jackson.annotate.JsonProperty; +import com.fasterxml.jackson.annotation.JsonProperty; public class Endpoints implements Iterable, Serializable { diff --git a/keystone-model/src/main/java/com/woorea/openstack/keystone/model/Error.java b/keystone-model/src/main/java/com/woorea/openstack/keystone/model/Error.java index 5549f4c83..b8997c565 100644 --- a/keystone-model/src/main/java/com/woorea/openstack/keystone/model/Error.java +++ b/keystone-model/src/main/java/com/woorea/openstack/keystone/model/Error.java @@ -2,7 +2,7 @@ import java.io.Serializable; -import org.codehaus.jackson.map.annotate.JsonRootName; +import com.fasterxml.jackson.annotation.JsonRootName; @JsonRootName("error") public class Error implements Serializable { diff --git a/keystone-model/src/main/java/com/woorea/openstack/keystone/model/Role.java b/keystone-model/src/main/java/com/woorea/openstack/keystone/model/Role.java index 993b0d9e2..cddd06ee7 100644 --- a/keystone-model/src/main/java/com/woorea/openstack/keystone/model/Role.java +++ b/keystone-model/src/main/java/com/woorea/openstack/keystone/model/Role.java @@ -2,7 +2,7 @@ import java.io.Serializable; -import org.codehaus.jackson.map.annotate.JsonRootName; +import com.fasterxml.jackson.annotation.JsonRootName; @JsonRootName("role") public class Role implements Serializable { diff --git a/keystone-model/src/main/java/com/woorea/openstack/keystone/model/Roles.java b/keystone-model/src/main/java/com/woorea/openstack/keystone/model/Roles.java index 22e18ed95..669612b57 100644 --- a/keystone-model/src/main/java/com/woorea/openstack/keystone/model/Roles.java +++ b/keystone-model/src/main/java/com/woorea/openstack/keystone/model/Roles.java @@ -4,7 +4,7 @@ import java.util.Iterator; import java.util.List; -import org.codehaus.jackson.annotate.JsonProperty; +import com.fasterxml.jackson.annotation.JsonProperty; public class Roles implements Iterable, Serializable { diff --git a/keystone-model/src/main/java/com/woorea/openstack/keystone/model/Service.java b/keystone-model/src/main/java/com/woorea/openstack/keystone/model/Service.java index ed9eb53ec..b4c85a8f5 100644 --- a/keystone-model/src/main/java/com/woorea/openstack/keystone/model/Service.java +++ b/keystone-model/src/main/java/com/woorea/openstack/keystone/model/Service.java @@ -2,7 +2,7 @@ import java.io.Serializable; -import org.codehaus.jackson.map.annotate.JsonRootName; +import com.fasterxml.jackson.annotation.JsonRootName; @JsonRootName("OS-KSADM:service") public class Service implements Serializable { diff --git a/keystone-model/src/main/java/com/woorea/openstack/keystone/model/Services.java b/keystone-model/src/main/java/com/woorea/openstack/keystone/model/Services.java index 5c7958cf1..8596ad34f 100644 --- a/keystone-model/src/main/java/com/woorea/openstack/keystone/model/Services.java +++ b/keystone-model/src/main/java/com/woorea/openstack/keystone/model/Services.java @@ -4,7 +4,7 @@ import java.util.Iterator; import java.util.List; -import org.codehaus.jackson.annotate.JsonProperty; +import com.fasterxml.jackson.annotation.JsonProperty; public class Services implements Iterable, Serializable { diff --git a/keystone-model/src/main/java/com/woorea/openstack/keystone/model/Tenant.java b/keystone-model/src/main/java/com/woorea/openstack/keystone/model/Tenant.java index a20b71b7e..1498082da 100644 --- a/keystone-model/src/main/java/com/woorea/openstack/keystone/model/Tenant.java +++ b/keystone-model/src/main/java/com/woorea/openstack/keystone/model/Tenant.java @@ -2,8 +2,8 @@ import java.io.Serializable; -import org.codehaus.jackson.annotate.JsonIgnoreProperties; -import org.codehaus.jackson.map.annotate.JsonRootName; +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonRootName; @JsonRootName("tenant") @JsonIgnoreProperties(ignoreUnknown=true) diff --git a/keystone-model/src/main/java/com/woorea/openstack/keystone/model/Tenants.java b/keystone-model/src/main/java/com/woorea/openstack/keystone/model/Tenants.java index 51e370c02..3af7c3486 100644 --- a/keystone-model/src/main/java/com/woorea/openstack/keystone/model/Tenants.java +++ b/keystone-model/src/main/java/com/woorea/openstack/keystone/model/Tenants.java @@ -4,7 +4,7 @@ import java.util.Iterator; import java.util.List; -import org.codehaus.jackson.annotate.JsonProperty; +import com.fasterxml.jackson.annotation.JsonProperty; public class Tenants implements Iterable, Serializable { diff --git a/keystone-model/src/main/java/com/woorea/openstack/keystone/model/Token.java b/keystone-model/src/main/java/com/woorea/openstack/keystone/model/Token.java index 0f0b6ccb2..934387bcd 100644 --- a/keystone-model/src/main/java/com/woorea/openstack/keystone/model/Token.java +++ b/keystone-model/src/main/java/com/woorea/openstack/keystone/model/Token.java @@ -1,6 +1,6 @@ package com.woorea.openstack.keystone.model; -import org.codehaus.jackson.annotate.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import java.util.Calendar; diff --git a/keystone-model/src/main/java/com/woorea/openstack/keystone/model/User.java b/keystone-model/src/main/java/com/woorea/openstack/keystone/model/User.java index a308d609e..cce8cfb27 100644 --- a/keystone-model/src/main/java/com/woorea/openstack/keystone/model/User.java +++ b/keystone-model/src/main/java/com/woorea/openstack/keystone/model/User.java @@ -2,8 +2,8 @@ import java.io.Serializable; -import org.codehaus.jackson.annotate.JsonProperty; -import org.codehaus.jackson.map.annotate.JsonRootName; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonRootName; @JsonRootName("user") public class User implements Serializable { diff --git a/keystone-model/src/main/java/com/woorea/openstack/keystone/model/Users.java b/keystone-model/src/main/java/com/woorea/openstack/keystone/model/Users.java index c88aabcf9..772b0050a 100644 --- a/keystone-model/src/main/java/com/woorea/openstack/keystone/model/Users.java +++ b/keystone-model/src/main/java/com/woorea/openstack/keystone/model/Users.java @@ -4,7 +4,7 @@ import java.util.Iterator; import java.util.List; -import org.codehaus.jackson.annotate.JsonProperty; +import com.fasterxml.jackson.annotation.JsonProperty; public class Users implements Iterable, Serializable { diff --git a/keystone-model/src/main/java/com/woorea/openstack/keystone/model/authentication/AccessKey.java b/keystone-model/src/main/java/com/woorea/openstack/keystone/model/authentication/AccessKey.java index 4767450a5..40e99822b 100644 --- a/keystone-model/src/main/java/com/woorea/openstack/keystone/model/authentication/AccessKey.java +++ b/keystone-model/src/main/java/com/woorea/openstack/keystone/model/authentication/AccessKey.java @@ -1,6 +1,6 @@ package com.woorea.openstack.keystone.model.authentication; -import org.codehaus.jackson.map.annotate.JsonRootName; +import com.fasterxml.jackson.annotation.JsonRootName; import com.woorea.openstack.keystone.model.Authentication; diff --git a/keystone-model/src/main/java/com/woorea/openstack/keystone/model/authentication/TokenAuthentication.java b/keystone-model/src/main/java/com/woorea/openstack/keystone/model/authentication/TokenAuthentication.java index 68cfcd2c5..99ea64efb 100644 --- a/keystone-model/src/main/java/com/woorea/openstack/keystone/model/authentication/TokenAuthentication.java +++ b/keystone-model/src/main/java/com/woorea/openstack/keystone/model/authentication/TokenAuthentication.java @@ -1,6 +1,6 @@ package com.woorea.openstack.keystone.model.authentication; -import org.codehaus.jackson.map.annotate.JsonRootName; +import com.fasterxml.jackson.annotation.JsonRootName; import com.woorea.openstack.keystone.model.Authentication; diff --git a/keystone-model/src/main/java/com/woorea/openstack/keystone/model/authentication/UsernamePassword.java b/keystone-model/src/main/java/com/woorea/openstack/keystone/model/authentication/UsernamePassword.java index ee94692bd..69f7c6573 100644 --- a/keystone-model/src/main/java/com/woorea/openstack/keystone/model/authentication/UsernamePassword.java +++ b/keystone-model/src/main/java/com/woorea/openstack/keystone/model/authentication/UsernamePassword.java @@ -1,6 +1,6 @@ package com.woorea.openstack.keystone.model.authentication; -import org.codehaus.jackson.map.annotate.JsonRootName; +import com.fasterxml.jackson.annotation.JsonRootName; import com.woorea.openstack.keystone.model.Authentication; diff --git a/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Authentication.java b/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Authentication.java index 7caffb0b7..df5236383 100644 --- a/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Authentication.java +++ b/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Authentication.java @@ -4,7 +4,7 @@ import java.util.ArrayList; import java.util.List; -import org.codehaus.jackson.map.annotate.JsonRootName; +import com.fasterxml.jackson.annotation.JsonRootName; @JsonRootName("auth") public class Authentication implements Serializable { diff --git a/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Credential.java b/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Credential.java index ef40a2a51..a0c14ce67 100644 --- a/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Credential.java +++ b/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Credential.java @@ -3,7 +3,7 @@ import java.util.HashMap; import java.util.Map; -import org.codehaus.jackson.map.annotate.JsonRootName; +import com.fasterxml.jackson.annotation.JsonRootName; @JsonRootName("credential") public class Credential { diff --git a/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Credentials.java b/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Credentials.java index 36eeda6ea..39ba56771 100644 --- a/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Credentials.java +++ b/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Credentials.java @@ -4,7 +4,7 @@ import java.util.Iterator; import java.util.List; -import org.codehaus.jackson.annotate.JsonProperty; +import com.fasterxml.jackson.annotation.JsonProperty; public class Credentials implements Iterable, Serializable { diff --git a/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Domain.java b/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Domain.java index 9df4fe2d7..875c4b63c 100644 --- a/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Domain.java +++ b/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Domain.java @@ -1,6 +1,6 @@ package com.woorea.openstack.keystone.v3.model; -import org.codehaus.jackson.map.annotate.JsonRootName; +import com.fasterxml.jackson.annotation.JsonRootName; @JsonRootName("domain") public class Domain { diff --git a/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Domains.java b/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Domains.java index e42a6c495..ee03fbc47 100644 --- a/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Domains.java +++ b/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Domains.java @@ -4,7 +4,7 @@ import java.util.Iterator; import java.util.List; -import org.codehaus.jackson.annotate.JsonProperty; +import com.fasterxml.jackson.annotation.JsonProperty; public class Domains implements Iterable, Serializable { diff --git a/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Endpoint.java b/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Endpoint.java index 213e6905b..08456bc1f 100644 --- a/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Endpoint.java +++ b/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Endpoint.java @@ -1,7 +1,7 @@ package com.woorea.openstack.keystone.v3.model; -import org.codehaus.jackson.annotate.JsonProperty; -import org.codehaus.jackson.map.annotate.JsonRootName; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonRootName; @JsonRootName("endpoint") public class Endpoint { diff --git a/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Endpoints.java b/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Endpoints.java index 146e88b5b..617db7edd 100644 --- a/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Endpoints.java +++ b/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Endpoints.java @@ -4,7 +4,7 @@ import java.util.Iterator; import java.util.List; -import org.codehaus.jackson.annotate.JsonProperty; +import com.fasterxml.jackson.annotation.JsonProperty; public class Endpoints implements Iterable, Serializable { diff --git a/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Group.java b/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Group.java index 5e718b536..7cd28ad7a 100644 --- a/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Group.java +++ b/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Group.java @@ -1,7 +1,7 @@ package com.woorea.openstack.keystone.v3.model; -import org.codehaus.jackson.annotate.JsonProperty; -import org.codehaus.jackson.map.annotate.JsonRootName; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonRootName; @JsonRootName("group") public class Group { diff --git a/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Groups.java b/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Groups.java index cc7b276fa..4085636d2 100644 --- a/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Groups.java +++ b/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Groups.java @@ -4,7 +4,7 @@ import java.util.Iterator; import java.util.List; -import org.codehaus.jackson.annotate.JsonProperty; +import com.fasterxml.jackson.annotation.JsonProperty; public class Groups implements Iterable, Serializable { diff --git a/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Policies.java b/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Policies.java index 42da856d5..25e10c106 100644 --- a/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Policies.java +++ b/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Policies.java @@ -4,7 +4,7 @@ import java.util.Iterator; import java.util.List; -import org.codehaus.jackson.annotate.JsonProperty; +import com.fasterxml.jackson.annotation.JsonProperty; public class Policies implements Iterable, Serializable { diff --git a/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Policy.java b/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Policy.java index 5abf84440..d0ccde815 100644 --- a/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Policy.java +++ b/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Policy.java @@ -3,7 +3,7 @@ import java.util.HashMap; import java.util.Map; -import org.codehaus.jackson.map.annotate.JsonRootName; +import com.fasterxml.jackson.annotation.JsonRootName; @JsonRootName("policy") public class Policy { diff --git a/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Project.java b/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Project.java index 070336eb1..cca3d73c1 100644 --- a/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Project.java +++ b/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Project.java @@ -1,7 +1,7 @@ package com.woorea.openstack.keystone.v3.model; -import org.codehaus.jackson.annotate.JsonProperty; -import org.codehaus.jackson.map.annotate.JsonRootName; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonRootName; @JsonRootName("project") public class Project { diff --git a/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Projects.java b/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Projects.java index fa390644a..1826fb8b9 100644 --- a/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Projects.java +++ b/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Projects.java @@ -4,7 +4,7 @@ import java.util.Iterator; import java.util.List; -import org.codehaus.jackson.annotate.JsonProperty; +import com.fasterxml.jackson.annotation.JsonProperty; public class Projects implements Iterable, Serializable { diff --git a/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Role.java b/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Role.java index 09d47a110..bd2933b1d 100644 --- a/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Role.java +++ b/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Role.java @@ -2,7 +2,7 @@ import java.io.Serializable; -import org.codehaus.jackson.map.annotate.JsonRootName; +import com.fasterxml.jackson.annotation.JsonRootName; @JsonRootName("role") public class Role implements Serializable { diff --git a/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Roles.java b/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Roles.java index 5a4e3b41f..92b688dc9 100644 --- a/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Roles.java +++ b/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Roles.java @@ -4,7 +4,7 @@ import java.util.Iterator; import java.util.List; -import org.codehaus.jackson.annotate.JsonProperty; +import com.fasterxml.jackson.annotation.JsonProperty; public class Roles implements Iterable, Serializable { diff --git a/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Service.java b/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Service.java index 578f2c181..6e123603b 100644 --- a/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Service.java +++ b/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Service.java @@ -1,6 +1,6 @@ package com.woorea.openstack.keystone.v3.model; -import org.codehaus.jackson.map.annotate.JsonRootName; +import com.fasterxml.jackson.annotation.JsonRootName; @JsonRootName("service") public class Service { diff --git a/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Services.java b/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Services.java index 4383aeca2..7066fe45a 100644 --- a/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Services.java +++ b/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Services.java @@ -4,7 +4,7 @@ import java.util.Iterator; import java.util.List; -import org.codehaus.jackson.annotate.JsonProperty; +import com.fasterxml.jackson.annotation.JsonProperty; import com.woorea.openstack.keystone.model.Service; diff --git a/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Token.java b/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Token.java index aee6fe550..3151adfcd 100644 --- a/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Token.java +++ b/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Token.java @@ -4,9 +4,9 @@ import java.util.Calendar; import java.util.List; -import org.codehaus.jackson.annotate.JsonIgnoreProperties; -import org.codehaus.jackson.annotate.JsonProperty; -import org.codehaus.jackson.map.annotate.JsonRootName; +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonRootName; @JsonRootName("token") @JsonIgnoreProperties(ignoreUnknown=true) diff --git a/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/User.java b/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/User.java index 3b1787ba3..ed68e16b5 100644 --- a/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/User.java +++ b/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/User.java @@ -1,7 +1,7 @@ package com.woorea.openstack.keystone.v3.model; -import org.codehaus.jackson.annotate.JsonProperty; -import org.codehaus.jackson.map.annotate.JsonRootName; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonRootName; @JsonRootName("user") public class User { diff --git a/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Users.java b/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Users.java index fa3c6d4ac..c7af1899b 100644 --- a/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Users.java +++ b/keystone-model/src/main/java/com/woorea/openstack/keystone/v3/model/Users.java @@ -4,7 +4,7 @@ import java.util.Iterator; import java.util.List; -import org.codehaus.jackson.annotate.JsonProperty; +import com.fasterxml.jackson.annotation.JsonProperty; import com.woorea.openstack.keystone.model.User; diff --git a/nova-model/src/main/java/com/woorea/openstack/nova/model/Certificate.java b/nova-model/src/main/java/com/woorea/openstack/nova/model/Certificate.java index b69eb3c60..d93a978e6 100644 --- a/nova-model/src/main/java/com/woorea/openstack/nova/model/Certificate.java +++ b/nova-model/src/main/java/com/woorea/openstack/nova/model/Certificate.java @@ -1,7 +1,7 @@ package com.woorea.openstack.nova.model; -import org.codehaus.jackson.annotate.JsonProperty; -import org.codehaus.jackson.map.annotate.JsonRootName; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonRootName; @JsonRootName("certificate") public class Certificate { diff --git a/nova-model/src/main/java/com/woorea/openstack/nova/model/Cloudpipe.java b/nova-model/src/main/java/com/woorea/openstack/nova/model/Cloudpipe.java index 69d1b5a91..ff3e78445 100644 --- a/nova-model/src/main/java/com/woorea/openstack/nova/model/Cloudpipe.java +++ b/nova-model/src/main/java/com/woorea/openstack/nova/model/Cloudpipe.java @@ -3,7 +3,7 @@ import java.io.Serializable; import java.util.Calendar; -import org.codehaus.jackson.map.annotate.JsonRootName; +import com.fasterxml.jackson.annotation.JsonRootName; @JsonRootName("cloudpipe") public class Cloudpipe implements Serializable { diff --git a/nova-model/src/main/java/com/woorea/openstack/nova/model/Cloudpipes.java b/nova-model/src/main/java/com/woorea/openstack/nova/model/Cloudpipes.java index 3a3f13e01..6d785de12 100644 --- a/nova-model/src/main/java/com/woorea/openstack/nova/model/Cloudpipes.java +++ b/nova-model/src/main/java/com/woorea/openstack/nova/model/Cloudpipes.java @@ -3,7 +3,7 @@ import java.io.Serializable; import java.util.List; -import org.codehaus.jackson.annotate.JsonProperty; +import com.fasterxml.jackson.annotation.JsonProperty; public class Cloudpipes implements Serializable { diff --git a/nova-model/src/main/java/com/woorea/openstack/nova/model/Extension.java b/nova-model/src/main/java/com/woorea/openstack/nova/model/Extension.java index 20892b78b..0d7176f75 100644 --- a/nova-model/src/main/java/com/woorea/openstack/nova/model/Extension.java +++ b/nova-model/src/main/java/com/woorea/openstack/nova/model/Extension.java @@ -4,7 +4,7 @@ import java.util.Calendar; import java.util.List; -import org.codehaus.jackson.map.annotate.JsonRootName; +import com.fasterxml.jackson.annotation.JsonRootName; @JsonRootName("extension") public class Extension implements Serializable { diff --git a/nova-model/src/main/java/com/woorea/openstack/nova/model/Extensions.java b/nova-model/src/main/java/com/woorea/openstack/nova/model/Extensions.java index 5d049d997..b8c3bed5f 100644 --- a/nova-model/src/main/java/com/woorea/openstack/nova/model/Extensions.java +++ b/nova-model/src/main/java/com/woorea/openstack/nova/model/Extensions.java @@ -4,7 +4,7 @@ import java.util.Iterator; import java.util.List; -import org.codehaus.jackson.annotate.JsonProperty; +import com.fasterxml.jackson.annotation.JsonProperty; public class Extensions implements Iterable, Serializable { diff --git a/nova-model/src/main/java/com/woorea/openstack/nova/model/Flavor.java b/nova-model/src/main/java/com/woorea/openstack/nova/model/Flavor.java index 107606250..bdc2dd873 100644 --- a/nova-model/src/main/java/com/woorea/openstack/nova/model/Flavor.java +++ b/nova-model/src/main/java/com/woorea/openstack/nova/model/Flavor.java @@ -3,8 +3,8 @@ import java.io.Serializable; import java.util.List; -import org.codehaus.jackson.annotate.JsonProperty; -import org.codehaus.jackson.map.annotate.JsonRootName; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonRootName; @JsonRootName("flavor") public class Flavor implements Serializable { diff --git a/nova-model/src/main/java/com/woorea/openstack/nova/model/FlavorForCreate.java b/nova-model/src/main/java/com/woorea/openstack/nova/model/FlavorForCreate.java index 295096d2a..36d5d5223 100644 --- a/nova-model/src/main/java/com/woorea/openstack/nova/model/FlavorForCreate.java +++ b/nova-model/src/main/java/com/woorea/openstack/nova/model/FlavorForCreate.java @@ -3,8 +3,8 @@ import java.io.Serializable; import java.util.List; -import org.codehaus.jackson.annotate.JsonProperty; -import org.codehaus.jackson.map.annotate.JsonRootName; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonRootName; @JsonRootName("flavor") public class FlavorForCreate implements Serializable { diff --git a/nova-model/src/main/java/com/woorea/openstack/nova/model/Flavors.java b/nova-model/src/main/java/com/woorea/openstack/nova/model/Flavors.java index 0337a3bb5..e95706506 100644 --- a/nova-model/src/main/java/com/woorea/openstack/nova/model/Flavors.java +++ b/nova-model/src/main/java/com/woorea/openstack/nova/model/Flavors.java @@ -4,7 +4,7 @@ import java.util.Iterator; import java.util.List; -import org.codehaus.jackson.annotate.JsonProperty; +import com.fasterxml.jackson.annotation.JsonProperty; public class Flavors implements Iterable, Serializable { diff --git a/nova-model/src/main/java/com/woorea/openstack/nova/model/FloatingIp.java b/nova-model/src/main/java/com/woorea/openstack/nova/model/FloatingIp.java index 3eda923f0..b2e96caa6 100644 --- a/nova-model/src/main/java/com/woorea/openstack/nova/model/FloatingIp.java +++ b/nova-model/src/main/java/com/woorea/openstack/nova/model/FloatingIp.java @@ -2,8 +2,8 @@ import java.io.Serializable; -import org.codehaus.jackson.annotate.JsonProperty; -import org.codehaus.jackson.map.annotate.JsonRootName; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonRootName; @JsonRootName("floating_ip") public class FloatingIp implements Serializable { diff --git a/nova-model/src/main/java/com/woorea/openstack/nova/model/FloatingIpDomain.java b/nova-model/src/main/java/com/woorea/openstack/nova/model/FloatingIpDomain.java index 4a6a280e6..806fde611 100644 --- a/nova-model/src/main/java/com/woorea/openstack/nova/model/FloatingIpDomain.java +++ b/nova-model/src/main/java/com/woorea/openstack/nova/model/FloatingIpDomain.java @@ -2,8 +2,8 @@ import java.io.Serializable; -import org.codehaus.jackson.annotate.JsonProperty; -import org.codehaus.jackson.map.annotate.JsonRootName; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonRootName; @JsonRootName("floating-ip-pool") public class FloatingIpDomain implements Serializable { diff --git a/nova-model/src/main/java/com/woorea/openstack/nova/model/FloatingIpDomains.java b/nova-model/src/main/java/com/woorea/openstack/nova/model/FloatingIpDomains.java index 292b59fb4..cd3d544d8 100644 --- a/nova-model/src/main/java/com/woorea/openstack/nova/model/FloatingIpDomains.java +++ b/nova-model/src/main/java/com/woorea/openstack/nova/model/FloatingIpDomains.java @@ -4,7 +4,7 @@ import java.util.Iterator; import java.util.List; -import org.codehaus.jackson.annotate.JsonProperty; +import com.fasterxml.jackson.annotation.JsonProperty; public class FloatingIpDomains implements Iterable, Serializable { diff --git a/nova-model/src/main/java/com/woorea/openstack/nova/model/FloatingIpPools.java b/nova-model/src/main/java/com/woorea/openstack/nova/model/FloatingIpPools.java index db1c0e3e2..2fc642b63 100644 --- a/nova-model/src/main/java/com/woorea/openstack/nova/model/FloatingIpPools.java +++ b/nova-model/src/main/java/com/woorea/openstack/nova/model/FloatingIpPools.java @@ -4,7 +4,7 @@ import java.util.Iterator; import java.util.List; -import org.codehaus.jackson.annotate.JsonProperty; +import com.fasterxml.jackson.annotation.JsonProperty; import com.woorea.openstack.nova.model.FloatingIpPools.FloatingIpPool; diff --git a/nova-model/src/main/java/com/woorea/openstack/nova/model/FloatingIps.java b/nova-model/src/main/java/com/woorea/openstack/nova/model/FloatingIps.java index 776c4ca8e..93c19a09b 100644 --- a/nova-model/src/main/java/com/woorea/openstack/nova/model/FloatingIps.java +++ b/nova-model/src/main/java/com/woorea/openstack/nova/model/FloatingIps.java @@ -4,7 +4,7 @@ import java.util.Iterator; import java.util.List; -import org.codehaus.jackson.annotate.JsonProperty; +import com.fasterxml.jackson.annotation.JsonProperty; public class FloatingIps implements Iterable, Serializable { diff --git a/nova-model/src/main/java/com/woorea/openstack/nova/model/Host.java b/nova-model/src/main/java/com/woorea/openstack/nova/model/Host.java index 40509642f..2982bbabc 100644 --- a/nova-model/src/main/java/com/woorea/openstack/nova/model/Host.java +++ b/nova-model/src/main/java/com/woorea/openstack/nova/model/Host.java @@ -3,7 +3,7 @@ import java.io.Serializable; import java.util.List; -import org.codehaus.jackson.annotate.JsonProperty; +import com.fasterxml.jackson.annotation.JsonProperty; public class Host implements Serializable { diff --git a/nova-model/src/main/java/com/woorea/openstack/nova/model/HostAggregate.java b/nova-model/src/main/java/com/woorea/openstack/nova/model/HostAggregate.java index ad68faab9..4f90e71e4 100644 --- a/nova-model/src/main/java/com/woorea/openstack/nova/model/HostAggregate.java +++ b/nova-model/src/main/java/com/woorea/openstack/nova/model/HostAggregate.java @@ -4,8 +4,8 @@ import java.util.List; import java.util.Map; -import org.codehaus.jackson.annotate.JsonProperty; -import org.codehaus.jackson.map.annotate.JsonRootName; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonRootName; @JsonRootName("aggregate") public class HostAggregate implements Serializable { diff --git a/nova-model/src/main/java/com/woorea/openstack/nova/model/HostAggregates.java b/nova-model/src/main/java/com/woorea/openstack/nova/model/HostAggregates.java index 6810e832e..2d61d4d13 100644 --- a/nova-model/src/main/java/com/woorea/openstack/nova/model/HostAggregates.java +++ b/nova-model/src/main/java/com/woorea/openstack/nova/model/HostAggregates.java @@ -4,7 +4,7 @@ import java.util.Iterator; import java.util.List; -import org.codehaus.jackson.annotate.JsonProperty; +import com.fasterxml.jackson.annotation.JsonProperty; public class HostAggregates implements Iterable, Serializable { diff --git a/nova-model/src/main/java/com/woorea/openstack/nova/model/Hosts.java b/nova-model/src/main/java/com/woorea/openstack/nova/model/Hosts.java index 1bac38e32..35d0b3806 100644 --- a/nova-model/src/main/java/com/woorea/openstack/nova/model/Hosts.java +++ b/nova-model/src/main/java/com/woorea/openstack/nova/model/Hosts.java @@ -4,7 +4,7 @@ import java.util.Iterator; import java.util.List; -import org.codehaus.jackson.annotate.JsonProperty; +import com.fasterxml.jackson.annotation.JsonProperty; public class Hosts implements Iterable, Serializable { diff --git a/nova-model/src/main/java/com/woorea/openstack/nova/model/Hypervisor.java b/nova-model/src/main/java/com/woorea/openstack/nova/model/Hypervisor.java index a9e4e7a66..8a60de7d3 100644 --- a/nova-model/src/main/java/com/woorea/openstack/nova/model/Hypervisor.java +++ b/nova-model/src/main/java/com/woorea/openstack/nova/model/Hypervisor.java @@ -1,8 +1,8 @@ package com.woorea.openstack.nova.model; import java.io.Serializable; -import org.codehaus.jackson.annotate.JsonProperty; -import org.codehaus.jackson.map.annotate.JsonRootName; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonRootName; /** * Model for Hypervisor diff --git a/nova-model/src/main/java/com/woorea/openstack/nova/model/Hypervisors.java b/nova-model/src/main/java/com/woorea/openstack/nova/model/Hypervisors.java index 76d89d9b6..8732790e3 100644 --- a/nova-model/src/main/java/com/woorea/openstack/nova/model/Hypervisors.java +++ b/nova-model/src/main/java/com/woorea/openstack/nova/model/Hypervisors.java @@ -2,7 +2,7 @@ import java.util.Iterator; import java.util.List; -import org.codehaus.jackson.annotate.JsonProperty; +import com.fasterxml.jackson.annotation.JsonProperty; /** * Model for List of Hypervisors diff --git a/nova-model/src/main/java/com/woorea/openstack/nova/model/Image.java b/nova-model/src/main/java/com/woorea/openstack/nova/model/Image.java index 93949f234..a42d6771d 100644 --- a/nova-model/src/main/java/com/woorea/openstack/nova/model/Image.java +++ b/nova-model/src/main/java/com/woorea/openstack/nova/model/Image.java @@ -5,8 +5,8 @@ import java.util.List; import java.util.Map; -import org.codehaus.jackson.annotate.JsonProperty; -import org.codehaus.jackson.map.annotate.JsonRootName; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonRootName; @JsonRootName("image") public class Image implements Serializable { diff --git a/nova-model/src/main/java/com/woorea/openstack/nova/model/ImageFromVolume.java b/nova-model/src/main/java/com/woorea/openstack/nova/model/ImageFromVolume.java index 30e38d8c6..3cd993c8e 100644 --- a/nova-model/src/main/java/com/woorea/openstack/nova/model/ImageFromVolume.java +++ b/nova-model/src/main/java/com/woorea/openstack/nova/model/ImageFromVolume.java @@ -2,8 +2,8 @@ import java.io.Serializable; -import org.codehaus.jackson.annotate.JsonProperty; -import org.codehaus.jackson.map.annotate.JsonRootName; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonRootName; @JsonRootName("os-volume_upload_image") public class ImageFromVolume implements Serializable { diff --git a/nova-model/src/main/java/com/woorea/openstack/nova/model/Images.java b/nova-model/src/main/java/com/woorea/openstack/nova/model/Images.java index e678e9782..e45505272 100644 --- a/nova-model/src/main/java/com/woorea/openstack/nova/model/Images.java +++ b/nova-model/src/main/java/com/woorea/openstack/nova/model/Images.java @@ -4,7 +4,7 @@ import java.util.Iterator; import java.util.List; -import org.codehaus.jackson.annotate.JsonProperty; +import com.fasterxml.jackson.annotation.JsonProperty; public class Images implements Iterable, Serializable { diff --git a/nova-model/src/main/java/com/woorea/openstack/nova/model/KeyPair.java b/nova-model/src/main/java/com/woorea/openstack/nova/model/KeyPair.java index b2fdb3464..23fa2088e 100644 --- a/nova-model/src/main/java/com/woorea/openstack/nova/model/KeyPair.java +++ b/nova-model/src/main/java/com/woorea/openstack/nova/model/KeyPair.java @@ -2,8 +2,8 @@ import java.io.Serializable; -import org.codehaus.jackson.annotate.JsonProperty; -import org.codehaus.jackson.map.annotate.JsonRootName; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonRootName; @JsonRootName("keypair") public class KeyPair implements Serializable { diff --git a/nova-model/src/main/java/com/woorea/openstack/nova/model/KeyPairs.java b/nova-model/src/main/java/com/woorea/openstack/nova/model/KeyPairs.java index 62f158f73..d7f8730cc 100644 --- a/nova-model/src/main/java/com/woorea/openstack/nova/model/KeyPairs.java +++ b/nova-model/src/main/java/com/woorea/openstack/nova/model/KeyPairs.java @@ -5,7 +5,7 @@ import java.util.Iterator; import java.util.List; -import org.codehaus.jackson.annotate.JsonProperty; +import com.fasterxml.jackson.annotation.JsonProperty; public class KeyPairs implements Iterable, Serializable { diff --git a/nova-model/src/main/java/com/woorea/openstack/nova/model/Limits.java b/nova-model/src/main/java/com/woorea/openstack/nova/model/Limits.java index 86e9acf3b..5d4e75864 100644 --- a/nova-model/src/main/java/com/woorea/openstack/nova/model/Limits.java +++ b/nova-model/src/main/java/com/woorea/openstack/nova/model/Limits.java @@ -4,8 +4,8 @@ import java.util.Calendar; import java.util.List; -import org.codehaus.jackson.annotate.JsonProperty; -import org.codehaus.jackson.map.annotate.JsonRootName; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonRootName; @JsonRootName("limits") public class Limits implements Serializable { diff --git a/nova-model/src/main/java/com/woorea/openstack/nova/model/Network.java b/nova-model/src/main/java/com/woorea/openstack/nova/model/Network.java index 6e82c1d64..e842e3d88 100644 --- a/nova-model/src/main/java/com/woorea/openstack/nova/model/Network.java +++ b/nova-model/src/main/java/com/woorea/openstack/nova/model/Network.java @@ -2,8 +2,8 @@ import java.io.Serializable; -import org.codehaus.jackson.annotate.JsonProperty; -import org.codehaus.jackson.map.annotate.JsonRootName; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonRootName; @JsonRootName("network") public class Network implements Serializable { diff --git a/nova-model/src/main/java/com/woorea/openstack/nova/model/NetworkForCreate.java b/nova-model/src/main/java/com/woorea/openstack/nova/model/NetworkForCreate.java index f5785393b..d9ce4660a 100644 --- a/nova-model/src/main/java/com/woorea/openstack/nova/model/NetworkForCreate.java +++ b/nova-model/src/main/java/com/woorea/openstack/nova/model/NetworkForCreate.java @@ -1,7 +1,7 @@ package com.woorea.openstack.nova.model; -import org.codehaus.jackson.annotate.JsonProperty; -import org.codehaus.jackson.map.annotate.JsonRootName; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonRootName; public class NetworkForCreate { diff --git a/nova-model/src/main/java/com/woorea/openstack/nova/model/Networks.java b/nova-model/src/main/java/com/woorea/openstack/nova/model/Networks.java index 6e8a94150..3ac070abe 100644 --- a/nova-model/src/main/java/com/woorea/openstack/nova/model/Networks.java +++ b/nova-model/src/main/java/com/woorea/openstack/nova/model/Networks.java @@ -4,7 +4,7 @@ import java.util.Iterator; import java.util.List; -import org.codehaus.jackson.annotate.JsonProperty; +import com.fasterxml.jackson.annotation.JsonProperty; public class Networks implements Iterable, Serializable { diff --git a/nova-model/src/main/java/com/woorea/openstack/nova/model/QuotaSet.java b/nova-model/src/main/java/com/woorea/openstack/nova/model/QuotaSet.java index 0a2f55dd7..3f142d66b 100644 --- a/nova-model/src/main/java/com/woorea/openstack/nova/model/QuotaSet.java +++ b/nova-model/src/main/java/com/woorea/openstack/nova/model/QuotaSet.java @@ -1,7 +1,7 @@ package com.woorea.openstack.nova.model; -import org.codehaus.jackson.annotate.JsonProperty; -import org.codehaus.jackson.map.annotate.JsonRootName; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonRootName; @JsonRootName("quota_set") public class QuotaSet { diff --git a/nova-model/src/main/java/com/woorea/openstack/nova/model/SecurityGroup.java b/nova-model/src/main/java/com/woorea/openstack/nova/model/SecurityGroup.java index 1b8917b4c..2b7c31747 100644 --- a/nova-model/src/main/java/com/woorea/openstack/nova/model/SecurityGroup.java +++ b/nova-model/src/main/java/com/woorea/openstack/nova/model/SecurityGroup.java @@ -3,8 +3,8 @@ import java.io.Serializable; import java.util.List; -import org.codehaus.jackson.annotate.JsonProperty; -import org.codehaus.jackson.map.annotate.JsonRootName; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonRootName; @JsonRootName("security_group") public class SecurityGroup implements Serializable { diff --git a/nova-model/src/main/java/com/woorea/openstack/nova/model/SecurityGroupForCreate.java b/nova-model/src/main/java/com/woorea/openstack/nova/model/SecurityGroupForCreate.java index c3993bbec..17376f6b9 100644 --- a/nova-model/src/main/java/com/woorea/openstack/nova/model/SecurityGroupForCreate.java +++ b/nova-model/src/main/java/com/woorea/openstack/nova/model/SecurityGroupForCreate.java @@ -2,7 +2,7 @@ import java.io.Serializable; -import org.codehaus.jackson.map.annotate.JsonRootName; +import com.fasterxml.jackson.annotation.JsonRootName; @JsonRootName("security_group") public class SecurityGroupForCreate implements Serializable { diff --git a/nova-model/src/main/java/com/woorea/openstack/nova/model/SecurityGroupRuleForCreate.java b/nova-model/src/main/java/com/woorea/openstack/nova/model/SecurityGroupRuleForCreate.java index c6a76c22c..12c9851b3 100644 --- a/nova-model/src/main/java/com/woorea/openstack/nova/model/SecurityGroupRuleForCreate.java +++ b/nova-model/src/main/java/com/woorea/openstack/nova/model/SecurityGroupRuleForCreate.java @@ -4,8 +4,8 @@ import javax.xml.bind.annotation.XmlElement; -import org.codehaus.jackson.annotate.JsonProperty; -import org.codehaus.jackson.map.annotate.JsonRootName; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonRootName; @JsonRootName("security_group_rule") public class SecurityGroupRuleForCreate implements Serializable { diff --git a/nova-model/src/main/java/com/woorea/openstack/nova/model/SecurityGroups.java b/nova-model/src/main/java/com/woorea/openstack/nova/model/SecurityGroups.java index 1c8cc5533..84a0096fe 100644 --- a/nova-model/src/main/java/com/woorea/openstack/nova/model/SecurityGroups.java +++ b/nova-model/src/main/java/com/woorea/openstack/nova/model/SecurityGroups.java @@ -4,7 +4,7 @@ import java.util.Iterator; import java.util.List; -import org.codehaus.jackson.annotate.JsonProperty; +import com.fasterxml.jackson.annotation.JsonProperty; public class SecurityGroups implements Iterable, Serializable { diff --git a/nova-model/src/main/java/com/woorea/openstack/nova/model/Server.java b/nova-model/src/main/java/com/woorea/openstack/nova/model/Server.java index 589ed540d..229b3329e 100644 --- a/nova-model/src/main/java/com/woorea/openstack/nova/model/Server.java +++ b/nova-model/src/main/java/com/woorea/openstack/nova/model/Server.java @@ -6,10 +6,10 @@ import java.util.List; import java.util.Map; -import org.codehaus.jackson.annotate.JsonAnySetter; -import org.codehaus.jackson.annotate.JsonIgnoreProperties; -import org.codehaus.jackson.annotate.JsonProperty; -import org.codehaus.jackson.map.annotate.JsonRootName; +import com.fasterxml.jackson.annotation.JsonAnySetter; +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonRootName; @JsonRootName("server") public class Server implements Serializable { diff --git a/nova-model/src/main/java/com/woorea/openstack/nova/model/ServerAction.java b/nova-model/src/main/java/com/woorea/openstack/nova/model/ServerAction.java index 26fa5a4a6..161eb6a76 100644 --- a/nova-model/src/main/java/com/woorea/openstack/nova/model/ServerAction.java +++ b/nova-model/src/main/java/com/woorea/openstack/nova/model/ServerAction.java @@ -6,8 +6,8 @@ import java.util.List; import java.util.Map; -import org.codehaus.jackson.annotate.JsonProperty; -import org.codehaus.jackson.map.annotate.JsonRootName; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonRootName; public interface ServerAction extends Serializable { diff --git a/nova-model/src/main/java/com/woorea/openstack/nova/model/ServerForCreate.java b/nova-model/src/main/java/com/woorea/openstack/nova/model/ServerForCreate.java index 9f28a8113..8b50774a0 100644 --- a/nova-model/src/main/java/com/woorea/openstack/nova/model/ServerForCreate.java +++ b/nova-model/src/main/java/com/woorea/openstack/nova/model/ServerForCreate.java @@ -6,8 +6,8 @@ import java.util.List; import java.util.Map; -import org.codehaus.jackson.annotate.JsonProperty; -import org.codehaus.jackson.map.annotate.JsonRootName; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonRootName; @JsonRootName("server") public class ServerForCreate implements Serializable { diff --git a/nova-model/src/main/java/com/woorea/openstack/nova/model/Servers.java b/nova-model/src/main/java/com/woorea/openstack/nova/model/Servers.java index a144250dc..e6a5907d1 100644 --- a/nova-model/src/main/java/com/woorea/openstack/nova/model/Servers.java +++ b/nova-model/src/main/java/com/woorea/openstack/nova/model/Servers.java @@ -4,7 +4,7 @@ import java.util.Iterator; import java.util.List; -import org.codehaus.jackson.annotate.JsonProperty; +import com.fasterxml.jackson.annotation.JsonProperty; public class Servers implements Iterable, Serializable { diff --git a/nova-model/src/main/java/com/woorea/openstack/nova/model/Service.java b/nova-model/src/main/java/com/woorea/openstack/nova/model/Service.java index a10df7d6d..7a673e78e 100644 --- a/nova-model/src/main/java/com/woorea/openstack/nova/model/Service.java +++ b/nova-model/src/main/java/com/woorea/openstack/nova/model/Service.java @@ -1,8 +1,8 @@ package com.woorea.openstack.nova.model; import java.io.Serializable; -import org.codehaus.jackson.annotate.JsonProperty; -import org.codehaus.jackson.map.annotate.JsonRootName; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonRootName; /** * Model for Service diff --git a/nova-model/src/main/java/com/woorea/openstack/nova/model/Services.java b/nova-model/src/main/java/com/woorea/openstack/nova/model/Services.java index 0443dcb5f..797a5fb70 100644 --- a/nova-model/src/main/java/com/woorea/openstack/nova/model/Services.java +++ b/nova-model/src/main/java/com/woorea/openstack/nova/model/Services.java @@ -2,7 +2,7 @@ import java.util.Iterator; import java.util.List; -import org.codehaus.jackson.annotate.JsonProperty; +import com.fasterxml.jackson.annotation.JsonProperty; /** * Model for List of Services diff --git a/nova-model/src/main/java/com/woorea/openstack/nova/model/SimpleTenantUsage.java b/nova-model/src/main/java/com/woorea/openstack/nova/model/SimpleTenantUsage.java index f75414d99..31b49a0a9 100644 --- a/nova-model/src/main/java/com/woorea/openstack/nova/model/SimpleTenantUsage.java +++ b/nova-model/src/main/java/com/woorea/openstack/nova/model/SimpleTenantUsage.java @@ -4,8 +4,8 @@ import java.math.BigDecimal; import java.util.List; -import org.codehaus.jackson.annotate.JsonProperty; -import org.codehaus.jackson.map.annotate.JsonRootName; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonRootName; @JsonRootName("tenant_usage") public class SimpleTenantUsage implements Serializable { diff --git a/nova-model/src/main/java/com/woorea/openstack/nova/model/SimpleTenantUsages.java b/nova-model/src/main/java/com/woorea/openstack/nova/model/SimpleTenantUsages.java index 33c46254d..d5b9e9c66 100644 --- a/nova-model/src/main/java/com/woorea/openstack/nova/model/SimpleTenantUsages.java +++ b/nova-model/src/main/java/com/woorea/openstack/nova/model/SimpleTenantUsages.java @@ -4,7 +4,7 @@ import java.util.Iterator; import java.util.List; -import org.codehaus.jackson.annotate.JsonProperty; +import com.fasterxml.jackson.annotation.JsonProperty; public class SimpleTenantUsages implements Iterable, Serializable { diff --git a/nova-model/src/main/java/com/woorea/openstack/nova/model/Snapshot.java b/nova-model/src/main/java/com/woorea/openstack/nova/model/Snapshot.java index 06b9c4d76..fb84a1755 100644 --- a/nova-model/src/main/java/com/woorea/openstack/nova/model/Snapshot.java +++ b/nova-model/src/main/java/com/woorea/openstack/nova/model/Snapshot.java @@ -2,8 +2,8 @@ import java.io.Serializable; -import org.codehaus.jackson.annotate.JsonProperty; -import org.codehaus.jackson.map.annotate.JsonRootName; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonRootName; @JsonRootName("snapshot") public class Snapshot implements Serializable { diff --git a/nova-model/src/main/java/com/woorea/openstack/nova/model/SnapshotForCreate.java b/nova-model/src/main/java/com/woorea/openstack/nova/model/SnapshotForCreate.java index 5db392e49..9f90d6bfb 100644 --- a/nova-model/src/main/java/com/woorea/openstack/nova/model/SnapshotForCreate.java +++ b/nova-model/src/main/java/com/woorea/openstack/nova/model/SnapshotForCreate.java @@ -2,8 +2,8 @@ import java.io.Serializable; -import org.codehaus.jackson.annotate.JsonProperty; -import org.codehaus.jackson.map.annotate.JsonRootName; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonRootName; @JsonRootName("snapshot") public class SnapshotForCreate implements Serializable { diff --git a/nova-model/src/main/java/com/woorea/openstack/nova/model/Snapshots.java b/nova-model/src/main/java/com/woorea/openstack/nova/model/Snapshots.java index 006d30cb4..00f45f1e6 100644 --- a/nova-model/src/main/java/com/woorea/openstack/nova/model/Snapshots.java +++ b/nova-model/src/main/java/com/woorea/openstack/nova/model/Snapshots.java @@ -4,7 +4,7 @@ import java.util.Iterator; import java.util.List; -import org.codehaus.jackson.annotate.JsonProperty; +import com.fasterxml.jackson.annotation.JsonProperty; public class Snapshots implements Iterable, Serializable { diff --git a/nova-model/src/main/java/com/woorea/openstack/nova/model/Volume.java b/nova-model/src/main/java/com/woorea/openstack/nova/model/Volume.java index d4b7e6e68..7498dcf3b 100644 --- a/nova-model/src/main/java/com/woorea/openstack/nova/model/Volume.java +++ b/nova-model/src/main/java/com/woorea/openstack/nova/model/Volume.java @@ -4,8 +4,8 @@ import java.util.List; import java.util.Map; -import org.codehaus.jackson.annotate.JsonProperty; -import org.codehaus.jackson.map.annotate.JsonRootName; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonRootName; @JsonRootName("volume") public class Volume implements Serializable { diff --git a/nova-model/src/main/java/com/woorea/openstack/nova/model/VolumeAttachment.java b/nova-model/src/main/java/com/woorea/openstack/nova/model/VolumeAttachment.java index 54abc9e82..6db93bbb4 100644 --- a/nova-model/src/main/java/com/woorea/openstack/nova/model/VolumeAttachment.java +++ b/nova-model/src/main/java/com/woorea/openstack/nova/model/VolumeAttachment.java @@ -2,7 +2,7 @@ import java.io.Serializable; -import org.codehaus.jackson.map.annotate.JsonRootName; +import com.fasterxml.jackson.annotation.JsonRootName; @JsonRootName("volumeAttachment") public class VolumeAttachment implements Serializable { diff --git a/nova-model/src/main/java/com/woorea/openstack/nova/model/VolumeAttachments.java b/nova-model/src/main/java/com/woorea/openstack/nova/model/VolumeAttachments.java index be5ea8e33..20f248d85 100644 --- a/nova-model/src/main/java/com/woorea/openstack/nova/model/VolumeAttachments.java +++ b/nova-model/src/main/java/com/woorea/openstack/nova/model/VolumeAttachments.java @@ -4,7 +4,7 @@ import java.util.Iterator; import java.util.List; -import org.codehaus.jackson.annotate.JsonProperty; +import com.fasterxml.jackson.annotation.JsonProperty; public class VolumeAttachments implements Iterable, Serializable { diff --git a/nova-model/src/main/java/com/woorea/openstack/nova/model/VolumeForCreate.java b/nova-model/src/main/java/com/woorea/openstack/nova/model/VolumeForCreate.java index c4a09a334..1f8f26708 100644 --- a/nova-model/src/main/java/com/woorea/openstack/nova/model/VolumeForCreate.java +++ b/nova-model/src/main/java/com/woorea/openstack/nova/model/VolumeForCreate.java @@ -3,8 +3,8 @@ import java.io.Serializable; import java.util.Map; -import org.codehaus.jackson.annotate.JsonProperty; -import org.codehaus.jackson.map.annotate.JsonRootName; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonRootName; @JsonRootName("volume") public class VolumeForCreate implements Serializable { diff --git a/nova-model/src/main/java/com/woorea/openstack/nova/model/VolumeForImageCreate.java b/nova-model/src/main/java/com/woorea/openstack/nova/model/VolumeForImageCreate.java index 994d49a4d..d4ee00646 100644 --- a/nova-model/src/main/java/com/woorea/openstack/nova/model/VolumeForImageCreate.java +++ b/nova-model/src/main/java/com/woorea/openstack/nova/model/VolumeForImageCreate.java @@ -2,8 +2,8 @@ import java.io.Serializable; -import org.codehaus.jackson.annotate.JsonProperty; -import org.codehaus.jackson.map.annotate.JsonRootName; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonRootName; @JsonRootName("os-volume_upload_image") public class VolumeForImageCreate implements Serializable { diff --git a/nova-model/src/main/java/com/woorea/openstack/nova/model/VolumeType.java b/nova-model/src/main/java/com/woorea/openstack/nova/model/VolumeType.java index 4c25e4b81..bd1b30efd 100644 --- a/nova-model/src/main/java/com/woorea/openstack/nova/model/VolumeType.java +++ b/nova-model/src/main/java/com/woorea/openstack/nova/model/VolumeType.java @@ -2,7 +2,7 @@ import java.io.Serializable; -import org.codehaus.jackson.map.annotate.JsonRootName; +import com.fasterxml.jackson.annotation.JsonRootName; @JsonRootName("volume-type") public class VolumeType implements Serializable { diff --git a/nova-model/src/main/java/com/woorea/openstack/nova/model/VolumeTypes.java b/nova-model/src/main/java/com/woorea/openstack/nova/model/VolumeTypes.java index 42d8162d2..3c51d75c5 100644 --- a/nova-model/src/main/java/com/woorea/openstack/nova/model/VolumeTypes.java +++ b/nova-model/src/main/java/com/woorea/openstack/nova/model/VolumeTypes.java @@ -4,7 +4,7 @@ import java.util.Iterator; import java.util.List; -import org.codehaus.jackson.annotate.JsonProperty; +import com.fasterxml.jackson.annotation.JsonProperty; public class VolumeTypes implements Iterable, Serializable { diff --git a/nova-model/src/main/java/com/woorea/openstack/nova/model/Volumes.java b/nova-model/src/main/java/com/woorea/openstack/nova/model/Volumes.java index 349ef874a..de662355c 100644 --- a/nova-model/src/main/java/com/woorea/openstack/nova/model/Volumes.java +++ b/nova-model/src/main/java/com/woorea/openstack/nova/model/Volumes.java @@ -4,7 +4,7 @@ import java.util.Iterator; import java.util.List; -import org.codehaus.jackson.annotate.JsonProperty; +import com.fasterxml.jackson.annotation.JsonProperty; public class Volumes implements Iterable, Serializable { diff --git a/openstack-client-connectors/jersey-connector/pom.xml b/openstack-client-connectors/jersey-connector/pom.xml index 36677c4b9..4d2486fcf 100644 --- a/openstack-client-connectors/jersey-connector/pom.xml +++ b/openstack-client-connectors/jersey-connector/pom.xml @@ -15,9 +15,9 @@ 1.17.1 - org.codehaus.jackson - jackson-jaxrs - 1.9.12 + com.fasterxml.jackson.jaxrs + jackson-jaxrs-json-provider + 2.9.8 diff --git a/openstack-client-connectors/jersey-connector/src/main/java/com/woorea/openstack/connector/JerseyConnector.java b/openstack-client-connectors/jersey-connector/src/main/java/com/woorea/openstack/connector/JerseyConnector.java index c8ed12387..117f64340 100644 --- a/openstack-client-connectors/jersey-connector/src/main/java/com/woorea/openstack/connector/JerseyConnector.java +++ b/openstack-client-connectors/jersey-connector/src/main/java/com/woorea/openstack/connector/JerseyConnector.java @@ -7,12 +7,12 @@ import javax.ws.rs.ext.ContextResolver; import javax.ws.rs.ext.Provider; -import org.codehaus.jackson.jaxrs.JacksonJaxbJsonProvider; -import org.codehaus.jackson.map.DeserializationConfig; -import org.codehaus.jackson.map.ObjectMapper; -import org.codehaus.jackson.map.SerializationConfig; -import org.codehaus.jackson.map.annotate.JsonRootName; -import org.codehaus.jackson.map.annotate.JsonSerialize.Inclusion; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.jaxrs.json.JacksonJaxbJsonProvider; +import com.fasterxml.jackson.databind.DeserializationFeature; +import com.fasterxml.jackson.databind.ObjectMapper; +import com.fasterxml.jackson.databind.SerializationFeature; +import com.fasterxml.jackson.annotation.JsonRootName; import com.sun.jersey.api.client.Client; import com.sun.jersey.api.client.ClientResponse; @@ -78,20 +78,20 @@ public static class OpenStackObjectMapper implements ContextResolver() { diff --git a/openstack-client-connectors/resteasy-connector/pom.xml b/openstack-client-connectors/resteasy-connector/pom.xml index 5a6de809f..41ec0404f 100644 --- a/openstack-client-connectors/resteasy-connector/pom.xml +++ b/openstack-client-connectors/resteasy-connector/pom.xml @@ -15,9 +15,9 @@ 2.3.2.Final - org.codehaus.jackson - jackson-jaxrs - 1.9.13 + com.fasterxml.jackson.jaxrs + jackson-jaxrs-json-provider + 2.9.8 commons-httpclient diff --git a/openstack-client-connectors/resteasy-connector/src/main/java/com/woorea/openstack/connector/RESTEasyConnector.java b/openstack-client-connectors/resteasy-connector/src/main/java/com/woorea/openstack/connector/RESTEasyConnector.java index 41b1bafa4..74630303e 100644 --- a/openstack-client-connectors/resteasy-connector/src/main/java/com/woorea/openstack/connector/RESTEasyConnector.java +++ b/openstack-client-connectors/resteasy-connector/src/main/java/com/woorea/openstack/connector/RESTEasyConnector.java @@ -10,13 +10,13 @@ import javax.ws.rs.ext.ContextResolver; import javax.ws.rs.ext.Provider; +import com.fasterxml.jackson.annotation.JsonInclude; import org.apache.commons.httpclient.HttpStatus; -import org.codehaus.jackson.jaxrs.JacksonJsonProvider; -import org.codehaus.jackson.map.DeserializationConfig; -import org.codehaus.jackson.map.ObjectMapper; -import org.codehaus.jackson.map.SerializationConfig; -import org.codehaus.jackson.map.annotate.JsonRootName; -import org.codehaus.jackson.map.annotate.JsonSerialize.Inclusion; +import com.fasterxml.jackson.jaxrs.json.JacksonJsonProvider; +import com.fasterxml.jackson.databind.DeserializationFeature; +import com.fasterxml.jackson.databind.ObjectMapper; +import com.fasterxml.jackson.databind.SerializationFeature; +import com.fasterxml.jackson.annotation.JsonRootName; import org.jboss.resteasy.client.ClientExecutor; import org.jboss.resteasy.client.ClientRequest; import org.jboss.resteasy.client.ClientResponse; @@ -47,21 +47,21 @@ public ObjectMapper getContext(Class type) { static { DEFAULT_MAPPER = new ObjectMapper(); - DEFAULT_MAPPER.setSerializationInclusion(Inclusion.NON_NULL); - DEFAULT_MAPPER.enable(SerializationConfig.Feature.INDENT_OUTPUT); - DEFAULT_MAPPER.enable(DeserializationConfig.Feature.ACCEPT_SINGLE_VALUE_AS_ARRAY); - DEFAULT_MAPPER.disable(DeserializationConfig.Feature.FAIL_ON_UNKNOWN_PROPERTIES); - DEFAULT_MAPPER.enable(DeserializationConfig.Feature.ACCEPT_EMPTY_STRING_AS_NULL_OBJECT); + DEFAULT_MAPPER.setSerializationInclusion(JsonInclude.Include.NON_NULL); + DEFAULT_MAPPER.enable(SerializationFeature.INDENT_OUTPUT); + DEFAULT_MAPPER.enable(DeserializationFeature.ACCEPT_SINGLE_VALUE_AS_ARRAY); + DEFAULT_MAPPER.disable(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES); + DEFAULT_MAPPER.enable(DeserializationFeature.ACCEPT_EMPTY_STRING_AS_NULL_OBJECT); WRAPPED_MAPPER = new ObjectMapper(); - WRAPPED_MAPPER.setSerializationInclusion(Inclusion.NON_NULL); - WRAPPED_MAPPER.enable(SerializationConfig.Feature.INDENT_OUTPUT); - WRAPPED_MAPPER.enable(SerializationConfig.Feature.WRAP_ROOT_VALUE); - WRAPPED_MAPPER.enable(DeserializationConfig.Feature.UNWRAP_ROOT_VALUE); - WRAPPED_MAPPER.enable(DeserializationConfig.Feature.ACCEPT_SINGLE_VALUE_AS_ARRAY); - WRAPPED_MAPPER.disable(DeserializationConfig.Feature.FAIL_ON_UNKNOWN_PROPERTIES); - WRAPPED_MAPPER.enable(DeserializationConfig.Feature.ACCEPT_EMPTY_STRING_AS_NULL_OBJECT); + WRAPPED_MAPPER.setSerializationInclusion(JsonInclude.Include.NON_NULL); + WRAPPED_MAPPER.enable(SerializationFeature.INDENT_OUTPUT); + WRAPPED_MAPPER.enable(SerializationFeature.WRAP_ROOT_VALUE); + WRAPPED_MAPPER.enable(DeserializationFeature.UNWRAP_ROOT_VALUE); + WRAPPED_MAPPER.enable(DeserializationFeature.ACCEPT_SINGLE_VALUE_AS_ARRAY); + WRAPPED_MAPPER.disable(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES); + WRAPPED_MAPPER.enable(DeserializationFeature.ACCEPT_EMPTY_STRING_AS_NULL_OBJECT); providerFactory = new ResteasyProviderFactory(); providerFactory.registerProviderInstance(new JacksonJsonProvider()); diff --git a/pom.xml b/pom.xml index d6134bc4c..4bace3e32 100644 --- a/pom.xml +++ b/pom.xml @@ -82,9 +82,9 @@ - org.codehaus.jackson - jackson-mapper-asl - 1.9.13 + com.fasterxml.jackson.core + jackson-databind + 2.9.8 diff --git a/quantum-client/src/main/java/com/woorea/openstack/quantum/api/query/AbsOpenStackCmd.java b/quantum-client/src/main/java/com/woorea/openstack/quantum/api/query/AbsOpenStackCmd.java index 8de5abf48..342d9c3f8 100644 --- a/quantum-client/src/main/java/com/woorea/openstack/quantum/api/query/AbsOpenStackCmd.java +++ b/quantum-client/src/main/java/com/woorea/openstack/quantum/api/query/AbsOpenStackCmd.java @@ -4,7 +4,7 @@ import java.util.HashMap; import java.util.Map; -import org.codehaus.jackson.annotate.JsonProperty; +import com.fasterxml.jackson.annotation.JsonProperty; import com.woorea.openstack.base.client.OpenStackRequest; diff --git a/quantum-model/src/main/java/com/woorea/openstack/quantum/model/GatewayInfo.java b/quantum-model/src/main/java/com/woorea/openstack/quantum/model/GatewayInfo.java index 2a7766f75..eddfc3326 100644 --- a/quantum-model/src/main/java/com/woorea/openstack/quantum/model/GatewayInfo.java +++ b/quantum-model/src/main/java/com/woorea/openstack/quantum/model/GatewayInfo.java @@ -3,7 +3,7 @@ import java.util.List; import java.io.Serializable; -import org.codehaus.jackson.annotate.JsonProperty; +import com.fasterxml.jackson.annotation.JsonProperty; public class GatewayInfo implements Serializable { diff --git a/quantum-model/src/main/java/com/woorea/openstack/quantum/model/Network.java b/quantum-model/src/main/java/com/woorea/openstack/quantum/model/Network.java index 40e037018..c79766857 100644 --- a/quantum-model/src/main/java/com/woorea/openstack/quantum/model/Network.java +++ b/quantum-model/src/main/java/com/woorea/openstack/quantum/model/Network.java @@ -3,10 +3,10 @@ import java.io.Serializable; import java.util.List; -import org.codehaus.jackson.annotate.JsonIgnore; -import org.codehaus.jackson.annotate.JsonIgnoreProperties; -import org.codehaus.jackson.annotate.JsonProperty; -import org.codehaus.jackson.map.annotate.JsonRootName; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonRootName; @SuppressWarnings("serial") @JsonRootName("network") diff --git a/quantum-model/src/main/java/com/woorea/openstack/quantum/model/NetworkForCreate.java b/quantum-model/src/main/java/com/woorea/openstack/quantum/model/NetworkForCreate.java index 507e39b05..1d4d5cb69 100644 --- a/quantum-model/src/main/java/com/woorea/openstack/quantum/model/NetworkForCreate.java +++ b/quantum-model/src/main/java/com/woorea/openstack/quantum/model/NetworkForCreate.java @@ -1,6 +1,6 @@ package com.woorea.openstack.quantum.model; -import org.codehaus.jackson.map.annotate.JsonRootName; +import com.fasterxml.jackson.annotation.JsonRootName; @SuppressWarnings("serial") @JsonRootName("network") diff --git a/quantum-model/src/main/java/com/woorea/openstack/quantum/model/Networks.java b/quantum-model/src/main/java/com/woorea/openstack/quantum/model/Networks.java index a4fd330de..f5b251ceb 100644 --- a/quantum-model/src/main/java/com/woorea/openstack/quantum/model/Networks.java +++ b/quantum-model/src/main/java/com/woorea/openstack/quantum/model/Networks.java @@ -3,7 +3,7 @@ import java.io.Serializable; import java.util.Iterator; import java.util.List; -import org.codehaus.jackson.annotate.JsonProperty; +import com.fasterxml.jackson.annotation.JsonProperty; public class Networks implements Iterable, Serializable{ diff --git a/quantum-model/src/main/java/com/woorea/openstack/quantum/model/Port.java b/quantum-model/src/main/java/com/woorea/openstack/quantum/model/Port.java index 8ca74f154..169809899 100644 --- a/quantum-model/src/main/java/com/woorea/openstack/quantum/model/Port.java +++ b/quantum-model/src/main/java/com/woorea/openstack/quantum/model/Port.java @@ -4,11 +4,12 @@ import java.util.List; import java.util.Map; -import org.codehaus.jackson.annotate.JsonIgnore; -import org.codehaus.jackson.annotate.JsonIgnoreProperties; -import org.codehaus.jackson.annotate.JsonProperty; -import org.codehaus.jackson.annotate.JsonUnwrapped; -import org.codehaus.jackson.map.annotate.JsonRootName; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonProperty; + +import com.fasterxml.jackson.annotation.JsonUnwrapped; +import com.fasterxml.jackson.annotation.JsonRootName; @SuppressWarnings("serial") @JsonRootName("port") diff --git a/quantum-model/src/main/java/com/woorea/openstack/quantum/model/PortForCreate.java b/quantum-model/src/main/java/com/woorea/openstack/quantum/model/PortForCreate.java index 3c1af5060..f7df76f53 100644 --- a/quantum-model/src/main/java/com/woorea/openstack/quantum/model/PortForCreate.java +++ b/quantum-model/src/main/java/com/woorea/openstack/quantum/model/PortForCreate.java @@ -1,6 +1,6 @@ package com.woorea.openstack.quantum.model; -import org.codehaus.jackson.map.annotate.JsonRootName; +import com.fasterxml.jackson.annotation.JsonRootName; /** * @deprecated Please use {@link Port} directly. diff --git a/quantum-model/src/main/java/com/woorea/openstack/quantum/model/Ports.java b/quantum-model/src/main/java/com/woorea/openstack/quantum/model/Ports.java index 5f10d35dd..5d0ed3a2e 100644 --- a/quantum-model/src/main/java/com/woorea/openstack/quantum/model/Ports.java +++ b/quantum-model/src/main/java/com/woorea/openstack/quantum/model/Ports.java @@ -4,7 +4,7 @@ import java.util.Iterator; import java.util.List; -import org.codehaus.jackson.annotate.JsonProperty; +import com.fasterxml.jackson.annotation.JsonProperty; @SuppressWarnings("serial") public class Ports implements Iterable, Serializable { diff --git a/quantum-model/src/main/java/com/woorea/openstack/quantum/model/Router.java b/quantum-model/src/main/java/com/woorea/openstack/quantum/model/Router.java index a94afd5e4..c1acb433e 100644 --- a/quantum-model/src/main/java/com/woorea/openstack/quantum/model/Router.java +++ b/quantum-model/src/main/java/com/woorea/openstack/quantum/model/Router.java @@ -3,8 +3,8 @@ import java.util.List; import java.io.Serializable; -import org.codehaus.jackson.annotate.JsonProperty; -import org.codehaus.jackson.map.annotate.JsonRootName; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonRootName; @JsonRootName("router") public class Router implements Serializable { diff --git a/quantum-model/src/main/java/com/woorea/openstack/quantum/model/RouterForAddInterface.java b/quantum-model/src/main/java/com/woorea/openstack/quantum/model/RouterForAddInterface.java index 62ec3025a..24ca72d51 100644 --- a/quantum-model/src/main/java/com/woorea/openstack/quantum/model/RouterForAddInterface.java +++ b/quantum-model/src/main/java/com/woorea/openstack/quantum/model/RouterForAddInterface.java @@ -2,7 +2,7 @@ import java.io.Serializable; -import org.codehaus.jackson.annotate.JsonProperty; +import com.fasterxml.jackson.annotation.JsonProperty; public class RouterForAddInterface implements Serializable { diff --git a/quantum-model/src/main/java/com/woorea/openstack/quantum/model/RouterForCreate.java b/quantum-model/src/main/java/com/woorea/openstack/quantum/model/RouterForCreate.java index b8c92912d..26ca202ec 100644 --- a/quantum-model/src/main/java/com/woorea/openstack/quantum/model/RouterForCreate.java +++ b/quantum-model/src/main/java/com/woorea/openstack/quantum/model/RouterForCreate.java @@ -3,8 +3,8 @@ import java.util.List; import java.io.Serializable; -import org.codehaus.jackson.annotate.JsonProperty; -import org.codehaus.jackson.map.annotate.JsonRootName; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonRootName; @JsonRootName("router") public class RouterForCreate implements Serializable { diff --git a/quantum-model/src/main/java/com/woorea/openstack/quantum/model/RouterInterface.java b/quantum-model/src/main/java/com/woorea/openstack/quantum/model/RouterInterface.java index 2d7551fbb..824779e03 100644 --- a/quantum-model/src/main/java/com/woorea/openstack/quantum/model/RouterInterface.java +++ b/quantum-model/src/main/java/com/woorea/openstack/quantum/model/RouterInterface.java @@ -2,8 +2,8 @@ import java.io.Serializable; -import org.codehaus.jackson.annotate.JsonProperty; -import org.codehaus.jackson.map.annotate.JsonRootName; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonRootName; public class RouterInterface implements Serializable { diff --git a/quantum-model/src/main/java/com/woorea/openstack/quantum/model/Routers.java b/quantum-model/src/main/java/com/woorea/openstack/quantum/model/Routers.java index e2a56b2bc..f180cdb6b 100644 --- a/quantum-model/src/main/java/com/woorea/openstack/quantum/model/Routers.java +++ b/quantum-model/src/main/java/com/woorea/openstack/quantum/model/Routers.java @@ -3,7 +3,7 @@ import java.io.Serializable; import java.util.Iterator; import java.util.List; -import org.codehaus.jackson.annotate.JsonProperty; +import com.fasterxml.jackson.annotation.JsonProperty; public class Routers implements Iterable, Serializable{ diff --git a/quantum-model/src/main/java/com/woorea/openstack/quantum/model/Subnet.java b/quantum-model/src/main/java/com/woorea/openstack/quantum/model/Subnet.java index 73015146b..b300f71e8 100644 --- a/quantum-model/src/main/java/com/woorea/openstack/quantum/model/Subnet.java +++ b/quantum-model/src/main/java/com/woorea/openstack/quantum/model/Subnet.java @@ -3,12 +3,13 @@ import java.io.Serializable; import java.util.List; -import org.codehaus.jackson.annotate.JsonCreator; -import org.codehaus.jackson.annotate.JsonIgnore; -import org.codehaus.jackson.annotate.JsonIgnoreProperties; -import org.codehaus.jackson.annotate.JsonProperty; -import org.codehaus.jackson.annotate.JsonValue; -import org.codehaus.jackson.map.annotate.JsonRootName; +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonProperty; + +import com.fasterxml.jackson.annotation.JsonValue; +import com.fasterxml.jackson.annotation.JsonRootName; @SuppressWarnings("serial") @JsonRootName("subnet") diff --git a/quantum-model/src/main/java/com/woorea/openstack/quantum/model/SubnetForCreate.java b/quantum-model/src/main/java/com/woorea/openstack/quantum/model/SubnetForCreate.java index 2c07ab255..fe0b19e2a 100644 --- a/quantum-model/src/main/java/com/woorea/openstack/quantum/model/SubnetForCreate.java +++ b/quantum-model/src/main/java/com/woorea/openstack/quantum/model/SubnetForCreate.java @@ -1,7 +1,7 @@ package com.woorea.openstack.quantum.model; -import org.codehaus.jackson.annotate.JsonIgnore; -import org.codehaus.jackson.map.annotate.JsonRootName; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonRootName; /** * Please use {@link Subnet} directly. diff --git a/quantum-model/src/main/java/com/woorea/openstack/quantum/model/Subnets.java b/quantum-model/src/main/java/com/woorea/openstack/quantum/model/Subnets.java index e9b21f47e..b520e5a91 100644 --- a/quantum-model/src/main/java/com/woorea/openstack/quantum/model/Subnets.java +++ b/quantum-model/src/main/java/com/woorea/openstack/quantum/model/Subnets.java @@ -4,7 +4,7 @@ import java.util.Iterator; import java.util.List; -import org.codehaus.jackson.annotate.JsonProperty; +import com.fasterxml.jackson.annotation.JsonProperty; public class Subnets implements Serializable, Iterable { diff --git a/quantum-model/src/test/java/com/woorea/openstack/quantum/model/NetworkTest.java b/quantum-model/src/test/java/com/woorea/openstack/quantum/model/NetworkTest.java index d0649fb81..a54326873 100644 --- a/quantum-model/src/test/java/com/woorea/openstack/quantum/model/NetworkTest.java +++ b/quantum-model/src/test/java/com/woorea/openstack/quantum/model/NetworkTest.java @@ -9,7 +9,7 @@ import java.util.Arrays; -import org.codehaus.jackson.map.ObjectMapper; +import com.fasterxml.jackson.databind.ObjectMapper; import org.junit.Before; import org.junit.Test; diff --git a/quantum-model/src/test/java/com/woorea/openstack/quantum/model/PortTest.java b/quantum-model/src/test/java/com/woorea/openstack/quantum/model/PortTest.java index bce504427..e63efbd3b 100644 --- a/quantum-model/src/test/java/com/woorea/openstack/quantum/model/PortTest.java +++ b/quantum-model/src/test/java/com/woorea/openstack/quantum/model/PortTest.java @@ -11,10 +11,11 @@ import java.util.Arrays; import java.util.List; -import org.codehaus.jackson.map.DeserializationConfig; -import org.codehaus.jackson.map.ObjectMapper; -import org.codehaus.jackson.map.SerializationConfig; -import org.codehaus.jackson.map.annotate.JsonSerialize.Inclusion; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.databind.DeserializationFeature; +import com.fasterxml.jackson.databind.ObjectMapper; +import com.fasterxml.jackson.databind.SerializationFeature; +import com.fasterxml.jackson.databind.annotation.JsonSerialize.Inclusion; import org.hamcrest.CustomMatcher; import org.junit.Before; import org.junit.Test; @@ -68,11 +69,11 @@ public void setUp() throws Exception { public static ObjectMapper initializeObjectMapper() { ObjectMapper objectMapper = new ObjectMapper(); - objectMapper.setSerializationInclusion(Inclusion.NON_NULL) - .enable(SerializationConfig.Feature.INDENT_OUTPUT) - .enable(SerializationConfig.Feature.WRAP_ROOT_VALUE) - .enable(DeserializationConfig.Feature.UNWRAP_ROOT_VALUE) - .enable(DeserializationConfig.Feature.ACCEPT_SINGLE_VALUE_AS_ARRAY); + objectMapper.setSerializationInclusion(JsonInclude.Include.NON_NULL) + .enable(SerializationFeature.INDENT_OUTPUT) + .enable(SerializationFeature.WRAP_ROOT_VALUE) + .enable(DeserializationFeature.UNWRAP_ROOT_VALUE) + .enable(DeserializationFeature.ACCEPT_SINGLE_VALUE_AS_ARRAY); return objectMapper; } diff --git a/quantum-model/src/test/java/com/woorea/openstack/quantum/model/SubnetTest.java b/quantum-model/src/test/java/com/woorea/openstack/quantum/model/SubnetTest.java index 9136a38cc..013ca3028 100644 --- a/quantum-model/src/test/java/com/woorea/openstack/quantum/model/SubnetTest.java +++ b/quantum-model/src/test/java/com/woorea/openstack/quantum/model/SubnetTest.java @@ -9,7 +9,7 @@ import java.util.Arrays; -import org.codehaus.jackson.map.ObjectMapper; +import com.fasterxml.jackson.databind.ObjectMapper; import org.hamcrest.CustomMatcher; import org.junit.Before; import org.junit.Test; diff --git a/swift-model/src/main/java/com/woorea/openstack/swift/model/Container.java b/swift-model/src/main/java/com/woorea/openstack/swift/model/Container.java index 62a002ade..f61c435b2 100644 --- a/swift-model/src/main/java/com/woorea/openstack/swift/model/Container.java +++ b/swift-model/src/main/java/com/woorea/openstack/swift/model/Container.java @@ -2,7 +2,7 @@ import java.io.Serializable; -import org.codehaus.jackson.annotate.JsonProperty; +import com.fasterxml.jackson.annotation.JsonProperty; public class Container implements Serializable { diff --git a/swift-model/src/main/java/com/woorea/openstack/swift/model/Object.java b/swift-model/src/main/java/com/woorea/openstack/swift/model/Object.java index d53ee65d6..1ba18e1f3 100644 --- a/swift-model/src/main/java/com/woorea/openstack/swift/model/Object.java +++ b/swift-model/src/main/java/com/woorea/openstack/swift/model/Object.java @@ -3,8 +3,7 @@ import java.io.Serializable; import java.util.Calendar; -import org.codehaus.jackson.annotate.JsonProperty; - +import com.fasterxml.jackson.annotation.JsonProperty; public class Object implements Serializable { From 6833f89d08897f7f86f41b2774e227a5a878728c Mon Sep 17 00:00:00 2001 From: Dominik Holler Date: Fri, 31 Jan 2020 22:25:41 +0100 Subject: [PATCH 139/144] Use httpclient 4 --- NEWS.md | 1 + openstack-client-connectors/resteasy-connector/pom.xml | 8 ++++---- .../com/woorea/openstack/connector/RESTEasyConnector.java | 2 +- 3 files changed, 6 insertions(+), 5 deletions(-) diff --git a/NEWS.md b/NEWS.md index d73bd803b..baa0c0dcd 100644 --- a/NEWS.md +++ b/NEWS.md @@ -1,5 +1,6 @@ # 3.2.8 / 2020-01-29 * jackson upgraded to com.fasterxml version 2.9.x +* commons-httpclient upgraded to org.apache.httpcomponents 4.5 # 3.2.7 / 2019-05-03 * Remove maven-gpg-plugin diff --git a/openstack-client-connectors/resteasy-connector/pom.xml b/openstack-client-connectors/resteasy-connector/pom.xml index 41ec0404f..5c4a821e4 100644 --- a/openstack-client-connectors/resteasy-connector/pom.xml +++ b/openstack-client-connectors/resteasy-connector/pom.xml @@ -12,7 +12,7 @@ org.jboss.resteasy resteasy-jaxrs - 2.3.2.Final + 3.0.26.Final com.fasterxml.jackson.jaxrs @@ -20,9 +20,9 @@ 2.9.8 - commons-httpclient - commons-httpclient - 3.1 + org.apache.httpcomponents + httpclient + 4.5.5 diff --git a/openstack-client-connectors/resteasy-connector/src/main/java/com/woorea/openstack/connector/RESTEasyConnector.java b/openstack-client-connectors/resteasy-connector/src/main/java/com/woorea/openstack/connector/RESTEasyConnector.java index 74630303e..5e078a344 100644 --- a/openstack-client-connectors/resteasy-connector/src/main/java/com/woorea/openstack/connector/RESTEasyConnector.java +++ b/openstack-client-connectors/resteasy-connector/src/main/java/com/woorea/openstack/connector/RESTEasyConnector.java @@ -11,7 +11,7 @@ import javax.ws.rs.ext.Provider; import com.fasterxml.jackson.annotation.JsonInclude; -import org.apache.commons.httpclient.HttpStatus; +import org.apache.http.HttpStatus; import com.fasterxml.jackson.jaxrs.json.JacksonJsonProvider; import com.fasterxml.jackson.databind.DeserializationFeature; import com.fasterxml.jackson.databind.ObjectMapper; From fea88ae3b138fc1b5e2680040926fccdeb0d70c6 Mon Sep 17 00:00:00 2001 From: Dominik Holler Date: Sat, 1 Feb 2020 20:18:08 +0100 Subject: [PATCH 140/144] [maven-release-plugin] prepare release openstack-java-sdk-3.2.8 --- ceilometer-client/pom.xml | 6 +++--- ceilometer-model/pom.xml | 2 +- cinder-client/pom.xml | 6 +++--- cinder-model/pom.xml | 2 +- glance-client/pom.xml | 6 +++--- glance-model/pom.xml | 2 +- heat-client/pom.xml | 6 +++--- heat-model/pom.xml | 2 +- keystone-client/pom.xml | 6 +++--- keystone-model/pom.xml | 2 +- nova-client/pom.xml | 6 +++--- nova-model/pom.xml | 2 +- openstack-client-connectors/jersey-connector/pom.xml | 2 +- openstack-client-connectors/jersey2-connector/pom.xml | 4 ++-- openstack-client-connectors/pom.xml | 4 ++-- openstack-client-connectors/resteasy-connector/pom.xml | 2 +- openstack-client/pom.xml | 2 +- openstack-console/pom.xml | 6 +++--- openstack-examples/pom.xml | 4 ++-- pom.xml | 2 +- quantum-client/pom.xml | 6 +++--- quantum-model/pom.xml | 2 +- swift-client/pom.xml | 6 +++--- swift-model/pom.xml | 2 +- 24 files changed, 45 insertions(+), 45 deletions(-) diff --git a/ceilometer-client/pom.xml b/ceilometer-client/pom.xml index 7827feaaa..568f18eb3 100644 --- a/ceilometer-client/pom.xml +++ b/ceilometer-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.8-SNAPSHOT + 3.2.8 ceilometer-client OpenStack Ceilometer Client @@ -12,12 +12,12 @@ com.woorea openstack-client - 3.2.8-SNAPSHOT + 3.2.8 com.woorea ceilometer-model - 3.2.8-SNAPSHOT + 3.2.8 diff --git a/ceilometer-model/pom.xml b/ceilometer-model/pom.xml index cca729a10..b913844e2 100644 --- a/ceilometer-model/pom.xml +++ b/ceilometer-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.8-SNAPSHOT + 3.2.8 ceilometer-model OpenStack Ceilometer Model diff --git a/cinder-client/pom.xml b/cinder-client/pom.xml index 67852c8ac..8f92a8ad7 100644 --- a/cinder-client/pom.xml +++ b/cinder-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.8-SNAPSHOT + 3.2.8 cinder-client OpenStack Cinder Client @@ -12,13 +12,13 @@ com.woorea openstack-client - 3.2.8-SNAPSHOT + 3.2.8 com.woorea cinder-model - 3.2.8-SNAPSHOT + 3.2.8 \ No newline at end of file diff --git a/cinder-model/pom.xml b/cinder-model/pom.xml index bc1ecde54..1b179ac61 100644 --- a/cinder-model/pom.xml +++ b/cinder-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.8-SNAPSHOT + 3.2.8 cinder-model OpenStack Cinder Model diff --git a/glance-client/pom.xml b/glance-client/pom.xml index fdcccfa19..29bc750b5 100644 --- a/glance-client/pom.xml +++ b/glance-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.8-SNAPSHOT + 3.2.8 glance-client OpenStack Glance Client @@ -12,13 +12,13 @@ com.woorea openstack-client - 3.2.8-SNAPSHOT + 3.2.8 com.woorea glance-model - 3.2.8-SNAPSHOT + 3.2.8 \ No newline at end of file diff --git a/glance-model/pom.xml b/glance-model/pom.xml index 307bf335a..a25cf6ba8 100644 --- a/glance-model/pom.xml +++ b/glance-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.8-SNAPSHOT + 3.2.8 glance-model OpenStack Glance Model diff --git a/heat-client/pom.xml b/heat-client/pom.xml index fe2df7444..e9009f1f6 100644 --- a/heat-client/pom.xml +++ b/heat-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.8-SNAPSHOT + 3.2.8 heat-client OpenStack Heat Client @@ -12,13 +12,13 @@ com.woorea openstack-client - 3.2.8-SNAPSHOT + 3.2.8 com.woorea heat-model - 3.2.8-SNAPSHOT + 3.2.8 \ No newline at end of file diff --git a/heat-model/pom.xml b/heat-model/pom.xml index febbdec5d..2f922723c 100644 --- a/heat-model/pom.xml +++ b/heat-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.8-SNAPSHOT + 3.2.8 heat-model OpenStack Heat Model diff --git a/keystone-client/pom.xml b/keystone-client/pom.xml index 7e4c6e1c4..383a7751e 100644 --- a/keystone-client/pom.xml +++ b/keystone-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.8-SNAPSHOT + 3.2.8 keystone-client OpenStack Keystone Client @@ -12,12 +12,12 @@ com.woorea openstack-client - 3.2.8-SNAPSHOT + 3.2.8 com.woorea keystone-model - 3.2.8-SNAPSHOT + 3.2.8 \ No newline at end of file diff --git a/keystone-model/pom.xml b/keystone-model/pom.xml index 1a690bd9c..23e7a7124 100644 --- a/keystone-model/pom.xml +++ b/keystone-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.8-SNAPSHOT + 3.2.8 keystone-model OpenStack Keystone Model diff --git a/nova-client/pom.xml b/nova-client/pom.xml index 91421416c..144b9c2d8 100644 --- a/nova-client/pom.xml +++ b/nova-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.8-SNAPSHOT + 3.2.8 nova-client OpenStack Nova Client @@ -12,12 +12,12 @@ com.woorea openstack-client - 3.2.8-SNAPSHOT + 3.2.8 com.woorea nova-model - 3.2.8-SNAPSHOT + 3.2.8 \ No newline at end of file diff --git a/nova-model/pom.xml b/nova-model/pom.xml index e3c594888..b61cdb993 100644 --- a/nova-model/pom.xml +++ b/nova-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.8-SNAPSHOT + 3.2.8 diff --git a/openstack-client-connectors/jersey-connector/pom.xml b/openstack-client-connectors/jersey-connector/pom.xml index 4d2486fcf..48e394250 100644 --- a/openstack-client-connectors/jersey-connector/pom.xml +++ b/openstack-client-connectors/jersey-connector/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-client-connectors - 3.2.8-SNAPSHOT + 3.2.8 jersey-connector OpenStack Jersey Connector diff --git a/openstack-client-connectors/jersey2-connector/pom.xml b/openstack-client-connectors/jersey2-connector/pom.xml index 9bceae888..c0265fbbb 100644 --- a/openstack-client-connectors/jersey2-connector/pom.xml +++ b/openstack-client-connectors/jersey2-connector/pom.xml @@ -4,7 +4,7 @@ com.woorea openstack-client-connectors - 3.2.8-SNAPSHOT + 3.2.8 jersey2-connector OpenStack Jersey2 Connector @@ -27,7 +27,7 @@ com.woorea openstack-client - 3.2.8-SNAPSHOT + 3.2.8 diff --git a/openstack-client-connectors/pom.xml b/openstack-client-connectors/pom.xml index 2878a9059..663126785 100644 --- a/openstack-client-connectors/pom.xml +++ b/openstack-client-connectors/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.8-SNAPSHOT + 3.2.8 openstack-client-connectors OpenStack Client Connectors @@ -42,7 +42,7 @@ com.woorea openstack-client - 3.2.8-SNAPSHOT + 3.2.8 \ No newline at end of file diff --git a/openstack-client-connectors/resteasy-connector/pom.xml b/openstack-client-connectors/resteasy-connector/pom.xml index 5c4a821e4..3c3b50b16 100644 --- a/openstack-client-connectors/resteasy-connector/pom.xml +++ b/openstack-client-connectors/resteasy-connector/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-client-connectors - 3.2.8-SNAPSHOT + 3.2.8 resteasy-connector OpenStack RESTEasy Connector diff --git a/openstack-client/pom.xml b/openstack-client/pom.xml index 760d34902..c03c09a36 100644 --- a/openstack-client/pom.xml +++ b/openstack-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.8-SNAPSHOT + 3.2.8 openstack-client OpenStack Client diff --git a/openstack-console/pom.xml b/openstack-console/pom.xml index 741f625dc..690ec7b85 100644 --- a/openstack-console/pom.xml +++ b/openstack-console/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.8-SNAPSHOT + 3.2.8 openstack-console OpenStack Console @@ -22,12 +22,12 @@ com.woorea keystone-client - 3.2.8-SNAPSHOT + 3.2.8 com.woorea nova-client - 3.2.8-SNAPSHOT + 3.2.8 diff --git a/openstack-examples/pom.xml b/openstack-examples/pom.xml index 4f23e9165..8d250e451 100644 --- a/openstack-examples/pom.xml +++ b/openstack-examples/pom.xml @@ -3,11 +3,11 @@ com.woorea openstack-java-sdk - 3.2.8-SNAPSHOT + 3.2.8 UTF-8 - 3.2.8-SNAPSHOT + 3.2.8 openstack-examples OpenStack Examples diff --git a/pom.xml b/pom.xml index 4bace3e32..3f0caeb09 100644 --- a/pom.xml +++ b/pom.xml @@ -2,7 +2,7 @@ 4.0.0 com.woorea openstack-java-sdk - 3.2.8-SNAPSHOT + 3.2.8 pom OpenStack Java SDK OpenStack Java SDK diff --git a/quantum-client/pom.xml b/quantum-client/pom.xml index 295ddbe20..cf8f6328f 100644 --- a/quantum-client/pom.xml +++ b/quantum-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.8-SNAPSHOT + 3.2.8 quantum-client OpenStack Quantum Client @@ -12,12 +12,12 @@ com.woorea openstack-client - 3.2.8-SNAPSHOT + 3.2.8 com.woorea quantum-model - 3.2.8-SNAPSHOT + 3.2.8 diff --git a/quantum-model/pom.xml b/quantum-model/pom.xml index b3d7d6d03..b60c99360 100644 --- a/quantum-model/pom.xml +++ b/quantum-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.8-SNAPSHOT + 3.2.8 quantum-model OpenStack Quantum Model diff --git a/swift-client/pom.xml b/swift-client/pom.xml index 65e1da30c..604dc07fa 100644 --- a/swift-client/pom.xml +++ b/swift-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.8-SNAPSHOT + 3.2.8 swift-client OpenStack Swift Client @@ -12,12 +12,12 @@ com.woorea openstack-client - 3.2.8-SNAPSHOT + 3.2.8 com.woorea swift-model - 3.2.8-SNAPSHOT + 3.2.8 \ No newline at end of file diff --git a/swift-model/pom.xml b/swift-model/pom.xml index de6c1e6e9..73b12dd48 100644 --- a/swift-model/pom.xml +++ b/swift-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.8-SNAPSHOT + 3.2.8 swift-model OpenStack Swift Model From 7deccdd10f780d171fad86048be3fa16f4398bd9 Mon Sep 17 00:00:00 2001 From: Dominik Holler Date: Sat, 1 Feb 2020 20:19:57 +0100 Subject: [PATCH 141/144] [maven-release-plugin] prepare for next development iteration --- ceilometer-client/pom.xml | 6 +++--- ceilometer-model/pom.xml | 2 +- cinder-client/pom.xml | 6 +++--- cinder-model/pom.xml | 2 +- glance-client/pom.xml | 6 +++--- glance-model/pom.xml | 2 +- heat-client/pom.xml | 6 +++--- heat-model/pom.xml | 2 +- keystone-client/pom.xml | 6 +++--- keystone-model/pom.xml | 2 +- nova-client/pom.xml | 6 +++--- nova-model/pom.xml | 2 +- openstack-client-connectors/jersey-connector/pom.xml | 2 +- openstack-client-connectors/jersey2-connector/pom.xml | 4 ++-- openstack-client-connectors/pom.xml | 4 ++-- openstack-client-connectors/resteasy-connector/pom.xml | 2 +- openstack-client/pom.xml | 2 +- openstack-console/pom.xml | 6 +++--- openstack-examples/pom.xml | 2 +- pom.xml | 2 +- quantum-client/pom.xml | 6 +++--- quantum-model/pom.xml | 2 +- swift-client/pom.xml | 6 +++--- swift-model/pom.xml | 2 +- 24 files changed, 44 insertions(+), 44 deletions(-) diff --git a/ceilometer-client/pom.xml b/ceilometer-client/pom.xml index 568f18eb3..50ad674de 100644 --- a/ceilometer-client/pom.xml +++ b/ceilometer-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.8 + 3.2.9-SNAPSHOT ceilometer-client OpenStack Ceilometer Client @@ -12,12 +12,12 @@ com.woorea openstack-client - 3.2.8 + 3.2.9-SNAPSHOT com.woorea ceilometer-model - 3.2.8 + 3.2.9-SNAPSHOT diff --git a/ceilometer-model/pom.xml b/ceilometer-model/pom.xml index b913844e2..f6c655f5e 100644 --- a/ceilometer-model/pom.xml +++ b/ceilometer-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.8 + 3.2.9-SNAPSHOT ceilometer-model OpenStack Ceilometer Model diff --git a/cinder-client/pom.xml b/cinder-client/pom.xml index 8f92a8ad7..739d0d9d7 100644 --- a/cinder-client/pom.xml +++ b/cinder-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.8 + 3.2.9-SNAPSHOT cinder-client OpenStack Cinder Client @@ -12,13 +12,13 @@ com.woorea openstack-client - 3.2.8 + 3.2.9-SNAPSHOT com.woorea cinder-model - 3.2.8 + 3.2.9-SNAPSHOT \ No newline at end of file diff --git a/cinder-model/pom.xml b/cinder-model/pom.xml index 1b179ac61..8074146e1 100644 --- a/cinder-model/pom.xml +++ b/cinder-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.8 + 3.2.9-SNAPSHOT cinder-model OpenStack Cinder Model diff --git a/glance-client/pom.xml b/glance-client/pom.xml index 29bc750b5..763b10075 100644 --- a/glance-client/pom.xml +++ b/glance-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.8 + 3.2.9-SNAPSHOT glance-client OpenStack Glance Client @@ -12,13 +12,13 @@ com.woorea openstack-client - 3.2.8 + 3.2.9-SNAPSHOT com.woorea glance-model - 3.2.8 + 3.2.9-SNAPSHOT \ No newline at end of file diff --git a/glance-model/pom.xml b/glance-model/pom.xml index a25cf6ba8..0fb19b4e7 100644 --- a/glance-model/pom.xml +++ b/glance-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.8 + 3.2.9-SNAPSHOT glance-model OpenStack Glance Model diff --git a/heat-client/pom.xml b/heat-client/pom.xml index e9009f1f6..ea122659e 100644 --- a/heat-client/pom.xml +++ b/heat-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.8 + 3.2.9-SNAPSHOT heat-client OpenStack Heat Client @@ -12,13 +12,13 @@ com.woorea openstack-client - 3.2.8 + 3.2.9-SNAPSHOT com.woorea heat-model - 3.2.8 + 3.2.9-SNAPSHOT \ No newline at end of file diff --git a/heat-model/pom.xml b/heat-model/pom.xml index 2f922723c..7475641d4 100644 --- a/heat-model/pom.xml +++ b/heat-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.8 + 3.2.9-SNAPSHOT heat-model OpenStack Heat Model diff --git a/keystone-client/pom.xml b/keystone-client/pom.xml index 383a7751e..0d7237b1d 100644 --- a/keystone-client/pom.xml +++ b/keystone-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.8 + 3.2.9-SNAPSHOT keystone-client OpenStack Keystone Client @@ -12,12 +12,12 @@ com.woorea openstack-client - 3.2.8 + 3.2.9-SNAPSHOT com.woorea keystone-model - 3.2.8 + 3.2.9-SNAPSHOT \ No newline at end of file diff --git a/keystone-model/pom.xml b/keystone-model/pom.xml index 23e7a7124..dd6093ecb 100644 --- a/keystone-model/pom.xml +++ b/keystone-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.8 + 3.2.9-SNAPSHOT keystone-model OpenStack Keystone Model diff --git a/nova-client/pom.xml b/nova-client/pom.xml index 144b9c2d8..2e81a5623 100644 --- a/nova-client/pom.xml +++ b/nova-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.8 + 3.2.9-SNAPSHOT nova-client OpenStack Nova Client @@ -12,12 +12,12 @@ com.woorea openstack-client - 3.2.8 + 3.2.9-SNAPSHOT com.woorea nova-model - 3.2.8 + 3.2.9-SNAPSHOT \ No newline at end of file diff --git a/nova-model/pom.xml b/nova-model/pom.xml index b61cdb993..69dd1350e 100644 --- a/nova-model/pom.xml +++ b/nova-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.8 + 3.2.9-SNAPSHOT diff --git a/openstack-client-connectors/jersey-connector/pom.xml b/openstack-client-connectors/jersey-connector/pom.xml index 48e394250..f68d77ed5 100644 --- a/openstack-client-connectors/jersey-connector/pom.xml +++ b/openstack-client-connectors/jersey-connector/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-client-connectors - 3.2.8 + 3.2.9-SNAPSHOT jersey-connector OpenStack Jersey Connector diff --git a/openstack-client-connectors/jersey2-connector/pom.xml b/openstack-client-connectors/jersey2-connector/pom.xml index c0265fbbb..8ac81782a 100644 --- a/openstack-client-connectors/jersey2-connector/pom.xml +++ b/openstack-client-connectors/jersey2-connector/pom.xml @@ -4,7 +4,7 @@ com.woorea openstack-client-connectors - 3.2.8 + 3.2.9-SNAPSHOT jersey2-connector OpenStack Jersey2 Connector @@ -27,7 +27,7 @@ com.woorea openstack-client - 3.2.8 + 3.2.9-SNAPSHOT diff --git a/openstack-client-connectors/pom.xml b/openstack-client-connectors/pom.xml index 663126785..13c99194b 100644 --- a/openstack-client-connectors/pom.xml +++ b/openstack-client-connectors/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.8 + 3.2.9-SNAPSHOT openstack-client-connectors OpenStack Client Connectors @@ -42,7 +42,7 @@ com.woorea openstack-client - 3.2.8 + 3.2.9-SNAPSHOT \ No newline at end of file diff --git a/openstack-client-connectors/resteasy-connector/pom.xml b/openstack-client-connectors/resteasy-connector/pom.xml index 3c3b50b16..dd9600506 100644 --- a/openstack-client-connectors/resteasy-connector/pom.xml +++ b/openstack-client-connectors/resteasy-connector/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-client-connectors - 3.2.8 + 3.2.9-SNAPSHOT resteasy-connector OpenStack RESTEasy Connector diff --git a/openstack-client/pom.xml b/openstack-client/pom.xml index c03c09a36..f5719cdef 100644 --- a/openstack-client/pom.xml +++ b/openstack-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.8 + 3.2.9-SNAPSHOT openstack-client OpenStack Client diff --git a/openstack-console/pom.xml b/openstack-console/pom.xml index 690ec7b85..234709200 100644 --- a/openstack-console/pom.xml +++ b/openstack-console/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.8 + 3.2.9-SNAPSHOT openstack-console OpenStack Console @@ -22,12 +22,12 @@ com.woorea keystone-client - 3.2.8 + 3.2.9-SNAPSHOT com.woorea nova-client - 3.2.8 + 3.2.9-SNAPSHOT diff --git a/openstack-examples/pom.xml b/openstack-examples/pom.xml index 8d250e451..0e1c3fbf4 100644 --- a/openstack-examples/pom.xml +++ b/openstack-examples/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.8 + 3.2.9-SNAPSHOT UTF-8 diff --git a/pom.xml b/pom.xml index 3f0caeb09..b0294419b 100644 --- a/pom.xml +++ b/pom.xml @@ -2,7 +2,7 @@ 4.0.0 com.woorea openstack-java-sdk - 3.2.8 + 3.2.9-SNAPSHOT pom OpenStack Java SDK OpenStack Java SDK diff --git a/quantum-client/pom.xml b/quantum-client/pom.xml index cf8f6328f..dcdf1bbc5 100644 --- a/quantum-client/pom.xml +++ b/quantum-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.8 + 3.2.9-SNAPSHOT quantum-client OpenStack Quantum Client @@ -12,12 +12,12 @@ com.woorea openstack-client - 3.2.8 + 3.2.9-SNAPSHOT com.woorea quantum-model - 3.2.8 + 3.2.9-SNAPSHOT diff --git a/quantum-model/pom.xml b/quantum-model/pom.xml index b60c99360..d3b09d00a 100644 --- a/quantum-model/pom.xml +++ b/quantum-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.8 + 3.2.9-SNAPSHOT quantum-model OpenStack Quantum Model diff --git a/swift-client/pom.xml b/swift-client/pom.xml index 604dc07fa..f597c501a 100644 --- a/swift-client/pom.xml +++ b/swift-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.8 + 3.2.9-SNAPSHOT swift-client OpenStack Swift Client @@ -12,12 +12,12 @@ com.woorea openstack-client - 3.2.8 + 3.2.9-SNAPSHOT com.woorea swift-model - 3.2.8 + 3.2.9-SNAPSHOT \ No newline at end of file diff --git a/swift-model/pom.xml b/swift-model/pom.xml index 73b12dd48..7c3fd53db 100644 --- a/swift-model/pom.xml +++ b/swift-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.8 + 3.2.9-SNAPSHOT swift-model OpenStack Swift Model From f3d15ad7a0310bc549baf50e007ce119b3d5fff4 Mon Sep 17 00:00:00 2001 From: Dominik Holler Date: Wed, 25 Mar 2020 10:28:04 +0100 Subject: [PATCH 142/144] glance: Add Support for Image Service API v2 --- NEWS.md | 3 + .../woorea/openstack/glance/v2/Glance.java | 22 ++ .../openstack/glance/v2/ImagesResource.java | 90 ++++++++ .../openstack/glance/model/v2/Image.java | 212 ++++++++++++++++++ .../glance/model/v2/ImageDownload.java | 23 ++ .../openstack/glance/model/v2/Images.java | 26 +++ 6 files changed, 376 insertions(+) create mode 100644 glance-client/src/main/java/com/woorea/openstack/glance/v2/Glance.java create mode 100644 glance-client/src/main/java/com/woorea/openstack/glance/v2/ImagesResource.java create mode 100644 glance-model/src/main/java/com/woorea/openstack/glance/model/v2/Image.java create mode 100644 glance-model/src/main/java/com/woorea/openstack/glance/model/v2/ImageDownload.java create mode 100644 glance-model/src/main/java/com/woorea/openstack/glance/model/v2/Images.java diff --git a/NEWS.md b/NEWS.md index baa0c0dcd..1ebc1c989 100644 --- a/NEWS.md +++ b/NEWS.md @@ -1,3 +1,6 @@ +# 3.2.9 / 2020-04-07 +* glance: Add Support for Image Service API v2 + # 3.2.8 / 2020-01-29 * jackson upgraded to com.fasterxml version 2.9.x * commons-httpclient upgraded to org.apache.httpcomponents 4.5 diff --git a/glance-client/src/main/java/com/woorea/openstack/glance/v2/Glance.java b/glance-client/src/main/java/com/woorea/openstack/glance/v2/Glance.java new file mode 100644 index 000000000..ecfc4fc83 --- /dev/null +++ b/glance-client/src/main/java/com/woorea/openstack/glance/v2/Glance.java @@ -0,0 +1,22 @@ +package com.woorea.openstack.glance.v2; + +import com.woorea.openstack.base.client.OpenStackClient; +import com.woorea.openstack.base.client.OpenStackClientConnector; + +public class Glance extends OpenStackClient { + + private final ImagesResource IMAGES; + + public Glance(String endpoint, OpenStackClientConnector connector) { + super(endpoint, connector); + IMAGES = new ImagesResource(this); + } + + public Glance(String endpoint) { + this(endpoint, null); + } + + public final ImagesResource images() { + return IMAGES; + } +} diff --git a/glance-client/src/main/java/com/woorea/openstack/glance/v2/ImagesResource.java b/glance-client/src/main/java/com/woorea/openstack/glance/v2/ImagesResource.java new file mode 100644 index 000000000..3b850689b --- /dev/null +++ b/glance-client/src/main/java/com/woorea/openstack/glance/v2/ImagesResource.java @@ -0,0 +1,90 @@ +package com.woorea.openstack.glance.v2; + +import com.woorea.openstack.base.client.Entity; +import com.woorea.openstack.base.client.HttpMethod; +import com.woorea.openstack.base.client.OpenStackClient; +import com.woorea.openstack.base.client.OpenStackRequest; +import com.woorea.openstack.base.client.OpenStackResponse; +import com.woorea.openstack.glance.model.v2.Image; +import com.woorea.openstack.glance.model.v2.ImageDownload; +import com.woorea.openstack.glance.model.v2.Images; + +public class ImagesResource { + + private final OpenStackClient CLIENT; + + public ImagesResource(OpenStackClient client) { + CLIENT = client; + } + + public List list(boolean detail) { + return new List(detail); + } + + public Create create(Image image) { + return new Create(image); + } + + public Show show(String id) { + return new Show(id); + } + + public Delete delete(String id) { + return new Delete(id); + } + + public Download download(String id) { + return new Download(id); + } + + public class List extends OpenStackRequest { + + public List(boolean detail) { + super(CLIENT, HttpMethod.GET, "/images", null, Images.class); + } + + } + + public class Create extends OpenStackRequest { + + public Create(Image image) { + super(CLIENT, HttpMethod.POST, "/images", Entity.json(image), Image.class); + } + + } + + public class Delete extends OpenStackRequest { + + public Delete(String id) { + super(CLIENT, HttpMethod.DELETE, new StringBuilder("/images/").append(id).toString(), null, Void.class); + } + + } + + public class Show extends OpenStackRequest { + + public Show(String id) { + super(CLIENT, HttpMethod.GET, new StringBuilder("/images/").append(id).toString(), null, Image.class); + } + + } + + public class Download extends OpenStackRequest { + + public Download(String id) { + super(CLIENT, HttpMethod.GET, new StringBuilder("/images/").append(id).append("/file").toString(), + null, ImageDownload.class); + header("Accept", "application/octet-stream"); + } + + @Override + public ImageDownload execute() { + // custom parsing here + OpenStackResponse response = CLIENT.request(this); + ImageDownload imageDownload = new ImageDownload(); + imageDownload.setInputStream(response.getInputStream()); + return imageDownload; + } + + } +} diff --git a/glance-model/src/main/java/com/woorea/openstack/glance/model/v2/Image.java b/glance-model/src/main/java/com/woorea/openstack/glance/model/v2/Image.java new file mode 100644 index 000000000..fe0531b65 --- /dev/null +++ b/glance-model/src/main/java/com/woorea/openstack/glance/model/v2/Image.java @@ -0,0 +1,212 @@ +package com.woorea.openstack.glance.model.v2; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonProperty; + +import java.io.Serializable; +import java.util.Calendar; + +@JsonIgnoreProperties(ignoreUnknown = true) +public class Image implements Serializable { + + private String id; + + private String self; + + private String name; + + private String file; + + @JsonProperty("disk_format") + private String diskFormat; + + @JsonProperty("container_format") + private String containerFormat; + + private Long size; + + @JsonProperty("virtual_size") + private Long virtualSize; + + private String checksum; + + @JsonProperty("created_at") + private Calendar createdAt; + + @JsonProperty("updated_at") + private Calendar updatedAt; + + private String status; + + private String visibility; + + @JsonProperty("min_ram") + private Integer minRam; + + @JsonProperty("min_disk") + private Integer minDisk; + + private String owner; + + @JsonProperty("protected") + private boolean isProtected; + + public String getId() { + return id; + } + + public void setId(String id) { + this.id = id; + } + + public String getSelf() { + return self; + } + + public void setSelf(String self) { + this.self = self; + } + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + + public String getDiskFormat() { + return diskFormat; + } + + public void setDiskFormat(String diskFormat) { + this.diskFormat = diskFormat; + } + + public String getContainerFormat() { + return containerFormat; + } + + public void setContainerFormat(String containerFormat) { + this.containerFormat = containerFormat; + } + + public Long getSize() { + return size; + } + + public void setSize(Long size) { + this.size = size; + } + + public Long getVirtualSize() { + return virtualSize; + } + + public void setVirtualSize(Long virtualSize) { + this.virtualSize = virtualSize; + } + + public String getChecksum() { + return checksum; + } + + public void setChecksum(String checksum) { + this.checksum = checksum; + } + + public Calendar getCreatedAt() { + return createdAt; + } + + public void setCreatedAt(Calendar createdAt) { + this.createdAt = createdAt; + } + + public Calendar getUpdatedAt() { + return updatedAt; + } + + public void setUpdatedAt(Calendar updatedAt) { + this.updatedAt = updatedAt; + } + + public String getStatus() { + return status; + } + + public void setStatus(String status) { + this.status = status; + } + + public Integer getMinRam() { + return minRam; + } + + public void setMinRam(Integer minRam) { + this.minRam = minRam; + } + + public Integer getMinDisk() { + return minDisk; + } + + public void setMinDisk(Integer minDisk) { + this.minDisk = minDisk; + } + + public String getOwner() { + return owner; + } + + public void setOwner(String owner) { + this.owner = owner; + } + + public boolean isProtected() { + return isProtected; + } + + public void setProtected(boolean aProtected) { + isProtected = aProtected; + } + + public String getFile() { + return file; + } + + public void setFile(String file) { + this.file = file; + } + + public String getVisibility() { + return visibility; + } + + public void setVisibility(String visibility) { + this.visibility = visibility; + } + + @Override + public String toString() { + return "Image{" + + "id='" + id + '\'' + + ", self='" + self + '\'' + + ", name='" + name + '\'' + + ", file='" + file + '\'' + + ", diskFormat='" + diskFormat + '\'' + + ", containerFormat='" + containerFormat + '\'' + + ", size=" + size + + ", virtualSize=" + virtualSize + + ", checksum='" + checksum + '\'' + + ", createdAt=" + createdAt + + ", updatedAt=" + updatedAt + + ", status='" + status + '\'' + + ", visibility='" + visibility + '\'' + + ", minRam=" + minRam + + ", minDisk=" + minDisk + + ", owner='" + owner + '\'' + + ", isProtected=" + isProtected + + '}'; + } +} diff --git a/glance-model/src/main/java/com/woorea/openstack/glance/model/v2/ImageDownload.java b/glance-model/src/main/java/com/woorea/openstack/glance/model/v2/ImageDownload.java new file mode 100644 index 000000000..56f2cdce4 --- /dev/null +++ b/glance-model/src/main/java/com/woorea/openstack/glance/model/v2/ImageDownload.java @@ -0,0 +1,23 @@ +package com.woorea.openstack.glance.model.v2; + +import java.io.InputStream; + +public class ImageDownload { + + private InputStream inputStream; + + /** + * @return the inputStream + */ + public InputStream getInputStream() { + return inputStream; + } + + /** + * @param inputStream the inputStream to set + */ + public void setInputStream(InputStream inputStream) { + this.inputStream = inputStream; + } + +} diff --git a/glance-model/src/main/java/com/woorea/openstack/glance/model/v2/Images.java b/glance-model/src/main/java/com/woorea/openstack/glance/model/v2/Images.java new file mode 100644 index 000000000..0fed85be2 --- /dev/null +++ b/glance-model/src/main/java/com/woorea/openstack/glance/model/v2/Images.java @@ -0,0 +1,26 @@ +package com.woorea.openstack.glance.model.v2; + +import com.fasterxml.jackson.annotation.JsonProperty; + +import java.io.Serializable; +import java.util.Iterator; +import java.util.List; + +public class Images implements Iterable, Serializable { + + @JsonProperty("images") + private List list; + + /** + * @return the list + */ + public List getList() { + return list; + } + + @Override + public Iterator iterator() { + return list.iterator(); + } + +} From 7ca15b44b1294e09a1a13e2c52238ac81ed8c170 Mon Sep 17 00:00:00 2001 From: Dominik Holler Date: Tue, 7 Apr 2020 10:02:27 +0200 Subject: [PATCH 143/144] [maven-release-plugin] prepare release openstack-java-sdk-3.2.9 --- ceilometer-client/pom.xml | 6 +++--- ceilometer-model/pom.xml | 2 +- cinder-client/pom.xml | 6 +++--- cinder-model/pom.xml | 2 +- glance-client/pom.xml | 6 +++--- glance-model/pom.xml | 2 +- heat-client/pom.xml | 6 +++--- heat-model/pom.xml | 2 +- keystone-client/pom.xml | 6 +++--- keystone-model/pom.xml | 2 +- nova-client/pom.xml | 6 +++--- nova-model/pom.xml | 2 +- openstack-client-connectors/jersey-connector/pom.xml | 2 +- openstack-client-connectors/jersey2-connector/pom.xml | 4 ++-- openstack-client-connectors/pom.xml | 4 ++-- openstack-client-connectors/resteasy-connector/pom.xml | 2 +- openstack-client/pom.xml | 2 +- openstack-console/pom.xml | 6 +++--- openstack-examples/pom.xml | 2 +- pom.xml | 2 +- quantum-client/pom.xml | 6 +++--- quantum-model/pom.xml | 2 +- swift-client/pom.xml | 6 +++--- swift-model/pom.xml | 2 +- 24 files changed, 44 insertions(+), 44 deletions(-) diff --git a/ceilometer-client/pom.xml b/ceilometer-client/pom.xml index 50ad674de..c7789a419 100644 --- a/ceilometer-client/pom.xml +++ b/ceilometer-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.9-SNAPSHOT + 3.2.9 ceilometer-client OpenStack Ceilometer Client @@ -12,12 +12,12 @@ com.woorea openstack-client - 3.2.9-SNAPSHOT + 3.2.9 com.woorea ceilometer-model - 3.2.9-SNAPSHOT + 3.2.9 diff --git a/ceilometer-model/pom.xml b/ceilometer-model/pom.xml index f6c655f5e..ff80cd09e 100644 --- a/ceilometer-model/pom.xml +++ b/ceilometer-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.9-SNAPSHOT + 3.2.9 ceilometer-model OpenStack Ceilometer Model diff --git a/cinder-client/pom.xml b/cinder-client/pom.xml index 739d0d9d7..8f916d343 100644 --- a/cinder-client/pom.xml +++ b/cinder-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.9-SNAPSHOT + 3.2.9 cinder-client OpenStack Cinder Client @@ -12,13 +12,13 @@ com.woorea openstack-client - 3.2.9-SNAPSHOT + 3.2.9 com.woorea cinder-model - 3.2.9-SNAPSHOT + 3.2.9 \ No newline at end of file diff --git a/cinder-model/pom.xml b/cinder-model/pom.xml index 8074146e1..7b964e46c 100644 --- a/cinder-model/pom.xml +++ b/cinder-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.9-SNAPSHOT + 3.2.9 cinder-model OpenStack Cinder Model diff --git a/glance-client/pom.xml b/glance-client/pom.xml index 763b10075..9c4d31c1e 100644 --- a/glance-client/pom.xml +++ b/glance-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.9-SNAPSHOT + 3.2.9 glance-client OpenStack Glance Client @@ -12,13 +12,13 @@ com.woorea openstack-client - 3.2.9-SNAPSHOT + 3.2.9 com.woorea glance-model - 3.2.9-SNAPSHOT + 3.2.9 \ No newline at end of file diff --git a/glance-model/pom.xml b/glance-model/pom.xml index 0fb19b4e7..495400404 100644 --- a/glance-model/pom.xml +++ b/glance-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.9-SNAPSHOT + 3.2.9 glance-model OpenStack Glance Model diff --git a/heat-client/pom.xml b/heat-client/pom.xml index ea122659e..ebd095629 100644 --- a/heat-client/pom.xml +++ b/heat-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.9-SNAPSHOT + 3.2.9 heat-client OpenStack Heat Client @@ -12,13 +12,13 @@ com.woorea openstack-client - 3.2.9-SNAPSHOT + 3.2.9 com.woorea heat-model - 3.2.9-SNAPSHOT + 3.2.9 \ No newline at end of file diff --git a/heat-model/pom.xml b/heat-model/pom.xml index 7475641d4..708c453f0 100644 --- a/heat-model/pom.xml +++ b/heat-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.9-SNAPSHOT + 3.2.9 heat-model OpenStack Heat Model diff --git a/keystone-client/pom.xml b/keystone-client/pom.xml index 0d7237b1d..af0c251ab 100644 --- a/keystone-client/pom.xml +++ b/keystone-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.9-SNAPSHOT + 3.2.9 keystone-client OpenStack Keystone Client @@ -12,12 +12,12 @@ com.woorea openstack-client - 3.2.9-SNAPSHOT + 3.2.9 com.woorea keystone-model - 3.2.9-SNAPSHOT + 3.2.9 \ No newline at end of file diff --git a/keystone-model/pom.xml b/keystone-model/pom.xml index dd6093ecb..9be0a9479 100644 --- a/keystone-model/pom.xml +++ b/keystone-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.9-SNAPSHOT + 3.2.9 keystone-model OpenStack Keystone Model diff --git a/nova-client/pom.xml b/nova-client/pom.xml index 2e81a5623..189b7dc98 100644 --- a/nova-client/pom.xml +++ b/nova-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.9-SNAPSHOT + 3.2.9 nova-client OpenStack Nova Client @@ -12,12 +12,12 @@ com.woorea openstack-client - 3.2.9-SNAPSHOT + 3.2.9 com.woorea nova-model - 3.2.9-SNAPSHOT + 3.2.9 \ No newline at end of file diff --git a/nova-model/pom.xml b/nova-model/pom.xml index 69dd1350e..85a34fc26 100644 --- a/nova-model/pom.xml +++ b/nova-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.9-SNAPSHOT + 3.2.9 diff --git a/openstack-client-connectors/jersey-connector/pom.xml b/openstack-client-connectors/jersey-connector/pom.xml index f68d77ed5..0281df1d6 100644 --- a/openstack-client-connectors/jersey-connector/pom.xml +++ b/openstack-client-connectors/jersey-connector/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-client-connectors - 3.2.9-SNAPSHOT + 3.2.9 jersey-connector OpenStack Jersey Connector diff --git a/openstack-client-connectors/jersey2-connector/pom.xml b/openstack-client-connectors/jersey2-connector/pom.xml index 8ac81782a..86c69d6be 100644 --- a/openstack-client-connectors/jersey2-connector/pom.xml +++ b/openstack-client-connectors/jersey2-connector/pom.xml @@ -4,7 +4,7 @@ com.woorea openstack-client-connectors - 3.2.9-SNAPSHOT + 3.2.9 jersey2-connector OpenStack Jersey2 Connector @@ -27,7 +27,7 @@ com.woorea openstack-client - 3.2.9-SNAPSHOT + 3.2.9 diff --git a/openstack-client-connectors/pom.xml b/openstack-client-connectors/pom.xml index 13c99194b..34619634e 100644 --- a/openstack-client-connectors/pom.xml +++ b/openstack-client-connectors/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.9-SNAPSHOT + 3.2.9 openstack-client-connectors OpenStack Client Connectors @@ -42,7 +42,7 @@ com.woorea openstack-client - 3.2.9-SNAPSHOT + 3.2.9 \ No newline at end of file diff --git a/openstack-client-connectors/resteasy-connector/pom.xml b/openstack-client-connectors/resteasy-connector/pom.xml index dd9600506..026ff5156 100644 --- a/openstack-client-connectors/resteasy-connector/pom.xml +++ b/openstack-client-connectors/resteasy-connector/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-client-connectors - 3.2.9-SNAPSHOT + 3.2.9 resteasy-connector OpenStack RESTEasy Connector diff --git a/openstack-client/pom.xml b/openstack-client/pom.xml index f5719cdef..e98145825 100644 --- a/openstack-client/pom.xml +++ b/openstack-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.9-SNAPSHOT + 3.2.9 openstack-client OpenStack Client diff --git a/openstack-console/pom.xml b/openstack-console/pom.xml index 234709200..1712746da 100644 --- a/openstack-console/pom.xml +++ b/openstack-console/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.9-SNAPSHOT + 3.2.9 openstack-console OpenStack Console @@ -22,12 +22,12 @@ com.woorea keystone-client - 3.2.9-SNAPSHOT + 3.2.9 com.woorea nova-client - 3.2.9-SNAPSHOT + 3.2.9 diff --git a/openstack-examples/pom.xml b/openstack-examples/pom.xml index 0e1c3fbf4..dda360944 100644 --- a/openstack-examples/pom.xml +++ b/openstack-examples/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.9-SNAPSHOT + 3.2.9 UTF-8 diff --git a/pom.xml b/pom.xml index b0294419b..f21b3b882 100644 --- a/pom.xml +++ b/pom.xml @@ -2,7 +2,7 @@ 4.0.0 com.woorea openstack-java-sdk - 3.2.9-SNAPSHOT + 3.2.9 pom OpenStack Java SDK OpenStack Java SDK diff --git a/quantum-client/pom.xml b/quantum-client/pom.xml index dcdf1bbc5..acd5deac4 100644 --- a/quantum-client/pom.xml +++ b/quantum-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.9-SNAPSHOT + 3.2.9 quantum-client OpenStack Quantum Client @@ -12,12 +12,12 @@ com.woorea openstack-client - 3.2.9-SNAPSHOT + 3.2.9 com.woorea quantum-model - 3.2.9-SNAPSHOT + 3.2.9 diff --git a/quantum-model/pom.xml b/quantum-model/pom.xml index d3b09d00a..86e34b689 100644 --- a/quantum-model/pom.xml +++ b/quantum-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.9-SNAPSHOT + 3.2.9 quantum-model OpenStack Quantum Model diff --git a/swift-client/pom.xml b/swift-client/pom.xml index f597c501a..7b6661a20 100644 --- a/swift-client/pom.xml +++ b/swift-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.9-SNAPSHOT + 3.2.9 swift-client OpenStack Swift Client @@ -12,12 +12,12 @@ com.woorea openstack-client - 3.2.9-SNAPSHOT + 3.2.9 com.woorea swift-model - 3.2.9-SNAPSHOT + 3.2.9 \ No newline at end of file diff --git a/swift-model/pom.xml b/swift-model/pom.xml index 7c3fd53db..49a8157ef 100644 --- a/swift-model/pom.xml +++ b/swift-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.9-SNAPSHOT + 3.2.9 swift-model OpenStack Swift Model From 426c1937d0e22ae581511e762d3f90a393688cc0 Mon Sep 17 00:00:00 2001 From: Dominik Holler Date: Tue, 7 Apr 2020 10:03:13 +0200 Subject: [PATCH 144/144] [maven-release-plugin] prepare for next development iteration --- ceilometer-client/pom.xml | 6 +++--- ceilometer-model/pom.xml | 2 +- cinder-client/pom.xml | 6 +++--- cinder-model/pom.xml | 2 +- glance-client/pom.xml | 6 +++--- glance-model/pom.xml | 2 +- heat-client/pom.xml | 6 +++--- heat-model/pom.xml | 2 +- keystone-client/pom.xml | 6 +++--- keystone-model/pom.xml | 2 +- nova-client/pom.xml | 6 +++--- nova-model/pom.xml | 2 +- openstack-client-connectors/jersey-connector/pom.xml | 2 +- openstack-client-connectors/jersey2-connector/pom.xml | 4 ++-- openstack-client-connectors/pom.xml | 4 ++-- openstack-client-connectors/resteasy-connector/pom.xml | 2 +- openstack-client/pom.xml | 2 +- openstack-console/pom.xml | 6 +++--- openstack-examples/pom.xml | 2 +- pom.xml | 2 +- quantum-client/pom.xml | 6 +++--- quantum-model/pom.xml | 2 +- swift-client/pom.xml | 6 +++--- swift-model/pom.xml | 2 +- 24 files changed, 44 insertions(+), 44 deletions(-) diff --git a/ceilometer-client/pom.xml b/ceilometer-client/pom.xml index c7789a419..0c0ea41c1 100644 --- a/ceilometer-client/pom.xml +++ b/ceilometer-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.9 + 3.2.10-SNAPSHOT ceilometer-client OpenStack Ceilometer Client @@ -12,12 +12,12 @@ com.woorea openstack-client - 3.2.9 + 3.2.10-SNAPSHOT com.woorea ceilometer-model - 3.2.9 + 3.2.10-SNAPSHOT diff --git a/ceilometer-model/pom.xml b/ceilometer-model/pom.xml index ff80cd09e..d2fd429ac 100644 --- a/ceilometer-model/pom.xml +++ b/ceilometer-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.9 + 3.2.10-SNAPSHOT ceilometer-model OpenStack Ceilometer Model diff --git a/cinder-client/pom.xml b/cinder-client/pom.xml index 8f916d343..e953379d9 100644 --- a/cinder-client/pom.xml +++ b/cinder-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.9 + 3.2.10-SNAPSHOT cinder-client OpenStack Cinder Client @@ -12,13 +12,13 @@ com.woorea openstack-client - 3.2.9 + 3.2.10-SNAPSHOT com.woorea cinder-model - 3.2.9 + 3.2.10-SNAPSHOT \ No newline at end of file diff --git a/cinder-model/pom.xml b/cinder-model/pom.xml index 7b964e46c..b5fcc3577 100644 --- a/cinder-model/pom.xml +++ b/cinder-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.9 + 3.2.10-SNAPSHOT cinder-model OpenStack Cinder Model diff --git a/glance-client/pom.xml b/glance-client/pom.xml index 9c4d31c1e..c0af557fa 100644 --- a/glance-client/pom.xml +++ b/glance-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.9 + 3.2.10-SNAPSHOT glance-client OpenStack Glance Client @@ -12,13 +12,13 @@ com.woorea openstack-client - 3.2.9 + 3.2.10-SNAPSHOT com.woorea glance-model - 3.2.9 + 3.2.10-SNAPSHOT \ No newline at end of file diff --git a/glance-model/pom.xml b/glance-model/pom.xml index 495400404..1d0431c4c 100644 --- a/glance-model/pom.xml +++ b/glance-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.9 + 3.2.10-SNAPSHOT glance-model OpenStack Glance Model diff --git a/heat-client/pom.xml b/heat-client/pom.xml index ebd095629..b3ad84354 100644 --- a/heat-client/pom.xml +++ b/heat-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.9 + 3.2.10-SNAPSHOT heat-client OpenStack Heat Client @@ -12,13 +12,13 @@ com.woorea openstack-client - 3.2.9 + 3.2.10-SNAPSHOT com.woorea heat-model - 3.2.9 + 3.2.10-SNAPSHOT \ No newline at end of file diff --git a/heat-model/pom.xml b/heat-model/pom.xml index 708c453f0..6b93b0149 100644 --- a/heat-model/pom.xml +++ b/heat-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.9 + 3.2.10-SNAPSHOT heat-model OpenStack Heat Model diff --git a/keystone-client/pom.xml b/keystone-client/pom.xml index af0c251ab..8c190e32b 100644 --- a/keystone-client/pom.xml +++ b/keystone-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.9 + 3.2.10-SNAPSHOT keystone-client OpenStack Keystone Client @@ -12,12 +12,12 @@ com.woorea openstack-client - 3.2.9 + 3.2.10-SNAPSHOT com.woorea keystone-model - 3.2.9 + 3.2.10-SNAPSHOT \ No newline at end of file diff --git a/keystone-model/pom.xml b/keystone-model/pom.xml index 9be0a9479..2ee5b28f3 100644 --- a/keystone-model/pom.xml +++ b/keystone-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.9 + 3.2.10-SNAPSHOT keystone-model OpenStack Keystone Model diff --git a/nova-client/pom.xml b/nova-client/pom.xml index 189b7dc98..1338768e9 100644 --- a/nova-client/pom.xml +++ b/nova-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.9 + 3.2.10-SNAPSHOT nova-client OpenStack Nova Client @@ -12,12 +12,12 @@ com.woorea openstack-client - 3.2.9 + 3.2.10-SNAPSHOT com.woorea nova-model - 3.2.9 + 3.2.10-SNAPSHOT \ No newline at end of file diff --git a/nova-model/pom.xml b/nova-model/pom.xml index 85a34fc26..729308bcd 100644 --- a/nova-model/pom.xml +++ b/nova-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.9 + 3.2.10-SNAPSHOT diff --git a/openstack-client-connectors/jersey-connector/pom.xml b/openstack-client-connectors/jersey-connector/pom.xml index 0281df1d6..1b2ee1960 100644 --- a/openstack-client-connectors/jersey-connector/pom.xml +++ b/openstack-client-connectors/jersey-connector/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-client-connectors - 3.2.9 + 3.2.10-SNAPSHOT jersey-connector OpenStack Jersey Connector diff --git a/openstack-client-connectors/jersey2-connector/pom.xml b/openstack-client-connectors/jersey2-connector/pom.xml index 86c69d6be..e2c45a753 100644 --- a/openstack-client-connectors/jersey2-connector/pom.xml +++ b/openstack-client-connectors/jersey2-connector/pom.xml @@ -4,7 +4,7 @@ com.woorea openstack-client-connectors - 3.2.9 + 3.2.10-SNAPSHOT jersey2-connector OpenStack Jersey2 Connector @@ -27,7 +27,7 @@ com.woorea openstack-client - 3.2.9 + 3.2.10-SNAPSHOT diff --git a/openstack-client-connectors/pom.xml b/openstack-client-connectors/pom.xml index 34619634e..eeb26fb02 100644 --- a/openstack-client-connectors/pom.xml +++ b/openstack-client-connectors/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.9 + 3.2.10-SNAPSHOT openstack-client-connectors OpenStack Client Connectors @@ -42,7 +42,7 @@ com.woorea openstack-client - 3.2.9 + 3.2.10-SNAPSHOT \ No newline at end of file diff --git a/openstack-client-connectors/resteasy-connector/pom.xml b/openstack-client-connectors/resteasy-connector/pom.xml index 026ff5156..be0b2acb5 100644 --- a/openstack-client-connectors/resteasy-connector/pom.xml +++ b/openstack-client-connectors/resteasy-connector/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-client-connectors - 3.2.9 + 3.2.10-SNAPSHOT resteasy-connector OpenStack RESTEasy Connector diff --git a/openstack-client/pom.xml b/openstack-client/pom.xml index e98145825..58e160b63 100644 --- a/openstack-client/pom.xml +++ b/openstack-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.9 + 3.2.10-SNAPSHOT openstack-client OpenStack Client diff --git a/openstack-console/pom.xml b/openstack-console/pom.xml index 1712746da..46d735c3e 100644 --- a/openstack-console/pom.xml +++ b/openstack-console/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.9 + 3.2.10-SNAPSHOT openstack-console OpenStack Console @@ -22,12 +22,12 @@ com.woorea keystone-client - 3.2.9 + 3.2.10-SNAPSHOT com.woorea nova-client - 3.2.9 + 3.2.10-SNAPSHOT diff --git a/openstack-examples/pom.xml b/openstack-examples/pom.xml index dda360944..b9bb31134 100644 --- a/openstack-examples/pom.xml +++ b/openstack-examples/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.9 + 3.2.10-SNAPSHOT UTF-8 diff --git a/pom.xml b/pom.xml index f21b3b882..f25f715d4 100644 --- a/pom.xml +++ b/pom.xml @@ -2,7 +2,7 @@ 4.0.0 com.woorea openstack-java-sdk - 3.2.9 + 3.2.10-SNAPSHOT pom OpenStack Java SDK OpenStack Java SDK diff --git a/quantum-client/pom.xml b/quantum-client/pom.xml index acd5deac4..ae3968959 100644 --- a/quantum-client/pom.xml +++ b/quantum-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.9 + 3.2.10-SNAPSHOT quantum-client OpenStack Quantum Client @@ -12,12 +12,12 @@ com.woorea openstack-client - 3.2.9 + 3.2.10-SNAPSHOT com.woorea quantum-model - 3.2.9 + 3.2.10-SNAPSHOT diff --git a/quantum-model/pom.xml b/quantum-model/pom.xml index 86e34b689..a441743df 100644 --- a/quantum-model/pom.xml +++ b/quantum-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.9 + 3.2.10-SNAPSHOT quantum-model OpenStack Quantum Model diff --git a/swift-client/pom.xml b/swift-client/pom.xml index 7b6661a20..2f30057a8 100644 --- a/swift-client/pom.xml +++ b/swift-client/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.9 + 3.2.10-SNAPSHOT swift-client OpenStack Swift Client @@ -12,12 +12,12 @@ com.woorea openstack-client - 3.2.9 + 3.2.10-SNAPSHOT com.woorea swift-model - 3.2.9 + 3.2.10-SNAPSHOT \ No newline at end of file diff --git a/swift-model/pom.xml b/swift-model/pom.xml index 49a8157ef..da007e95e 100644 --- a/swift-model/pom.xml +++ b/swift-model/pom.xml @@ -3,7 +3,7 @@ com.woorea openstack-java-sdk - 3.2.9 + 3.2.10-SNAPSHOT swift-model OpenStack Swift Model