Skip to content

Commit 1f743e9

Browse files
authored
api: Add 'created' field to API response (apache#5210)
* api: Add 'created' field to API response * address comments
1 parent 6f93e5c commit 1f743e9

10 files changed

Lines changed: 52 additions & 0 deletions

File tree

‎api/src/main/java/com/cloud/network/Network.java‎

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@
1919
import java.io.Serializable;
2020
import java.net.URI;
2121
import java.util.ArrayList;
22+
import java.util.Date;
2223
import java.util.List;
2324

2425
import com.cloud.exception.InvalidParameterValueException;
@@ -456,4 +457,6 @@ public void setIp6Address(String ip6Address) {
456457
String getRouterIp();
457458

458459
String getRouterIpv6();
460+
461+
Date getCreated();
459462
}

‎api/src/main/java/com/cloud/network/NetworkProfile.java‎

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@
1717
package com.cloud.network;
1818

1919
import java.net.URI;
20+
import java.util.Date;
2021

2122
import com.cloud.network.Networks.BroadcastDomainType;
2223
import com.cloud.network.Networks.Mode;
@@ -329,4 +330,9 @@ public String getRouterIpv6() {
329330
return null;
330331
}
331332

333+
@Override
334+
public Date getCreated() {
335+
return null;
336+
}
337+
332338
}

‎api/src/main/java/com/cloud/network/vpc/Vpc.java‎

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,8 @@
2020
import org.apache.cloudstack.api.Identity;
2121
import org.apache.cloudstack.api.InternalIdentity;
2222

23+
import java.util.Date;
24+
2325
public interface Vpc extends ControlledEntity, Identity, InternalIdentity {
2426

2527
public enum State {
@@ -91,4 +93,6 @@ public enum State {
9193
boolean isRollingRestart();
9294

9395
void setRollingRestart(boolean rollingRestart);
96+
97+
Date getCreated();
9498
}

‎api/src/main/java/com/cloud/offering/NetworkOffering.java‎

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,8 @@
2323
import com.cloud.network.Network.GuestType;
2424
import com.cloud.network.Networks.TrafficType;
2525

26+
import java.util.Date;
27+
2628
/**
2729
* Describes network offering
2830
*
@@ -141,4 +143,6 @@ public enum Detail {
141143
boolean isSupportingPublicAccess();
142144

143145
String getServicePackage();
146+
147+
Date getCreated();
144148
}

‎api/src/main/java/org/apache/cloudstack/api/response/NetworkResponse.java‎

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@
1616
// under the License.
1717
package org.apache.cloudstack.api.response;
1818

19+
import java.util.Date;
1920
import java.util.List;
2021
import java.util.Map;
2122
import java.util.Set;
@@ -246,6 +247,10 @@ public class NetworkResponse extends BaseResponse implements ControlledEntityRes
246247
@Param(description = "If the network has redundant routers enabled", since = "4.11.1")
247248
private Boolean redundantRouter;
248249

250+
@SerializedName(ApiConstants.CREATED)
251+
@Param(description = "the date this network was created", since = "4.16.0")
252+
private Date created;
253+
249254
public Boolean getDisplayNetwork() {
250255
return displayNetwork;
251256
}
@@ -482,4 +487,12 @@ public String getVpcName() {
482487
public void setVpcName(String vpcName) {
483488
this.vpcName = vpcName;
484489
}
490+
491+
public Date getCreated() {
492+
return created;
493+
}
494+
495+
public void setCreated(Date created) {
496+
this.created = created;
497+
}
485498
}

‎api/src/main/java/org/apache/cloudstack/api/response/ProjectResponse.java‎

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@
1717
package org.apache.cloudstack.api.response;
1818

1919
import java.util.ArrayList;
20+
import java.util.Date;
2021
import java.util.List;
2122
import java.util.Map;
2223

@@ -207,6 +208,10 @@ public class ProjectResponse extends BaseResponse implements ResourceLimitAndCou
207208
@Param(description = "the total number of virtual machines running for this project", since = "4.2.0")
208209
private Integer vmRunning;
209210

211+
@SerializedName(ApiConstants.CREATED)
212+
@Param(description = "the date this project was created", since = "4.16.0")
213+
private Date created;
214+
210215
public void setId(String id) {
211216
this.id = id;
212217
}
@@ -421,4 +426,12 @@ public void setSecondaryStorageAvailable(String secondaryStorageAvailable) {
421426
public void setOwners(List<Map<String, String>> owners) {
422427
this.owners = owners;
423428
}
429+
430+
public Date getCreated() {
431+
return created;
432+
}
433+
434+
public void setCreated(Date created) {
435+
this.created = created;
436+
}
424437
}

‎engine/schema/src/main/java/com/cloud/network/vpc/VpcVO.java‎

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -241,6 +241,11 @@ public void setRollingRestart(boolean rollingRestart) {
241241
this.rollingRestart = rollingRestart;
242242
}
243243

244+
@Override
245+
public Date getCreated() {
246+
return created;
247+
}
248+
244249
@Override
245250
public Class<?> getEntityType() {
246251
return Vpc.class;

‎server/src/main/java/com/cloud/api/ApiResponseHelper.java‎

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2354,6 +2354,7 @@ public NetworkResponse createNetworkResponse(ResponseView view, Network network)
23542354
}
23552355
response.setExternalId(network.getExternalId());
23562356
response.setRedundantRouter(network.isRedundant());
2357+
response.setCreated(network.getCreated());
23572358
response.setObjectName("network");
23582359
return response;
23592360
}
@@ -2963,6 +2964,7 @@ public VpcResponse createVpcResponse(ResponseView view, Vpc vpc) {
29632964
response.setId(vpc.getUuid());
29642965
response.setName(vpc.getName());
29652966
response.setDisplayText(vpc.getDisplayText());
2967+
response.setCreated(vpc.getCreated());
29662968
response.setState(vpc.getState().name());
29672969
VpcOffering voff = ApiDBUtils.findVpcOfferingById(vpc.getVpcOfferingId());
29682970
if (voff != null) {

‎server/src/main/java/com/cloud/api/query/dao/NetworkOfferingJoinDaoImpl.java‎

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -88,6 +88,7 @@ public NetworkOfferingResponse newNetworkOfferingResponse(NetworkOffering offeri
8888
networkOfferingResponse.setConcurrentConnections(offering.getConcurrentConnections());
8989
networkOfferingResponse.setSupportsStrechedL2Subnet(offering.isSupportingStrechedL2());
9090
networkOfferingResponse.setSupportsPublicAccess(offering.isSupportingPublicAccess());
91+
networkOfferingResponse.setCreated(offering.getCreated());
9192
if (offering.getGuestType() != null) {
9293
networkOfferingResponse.setGuestIpType(offering.getGuestType().toString());
9394
}

‎server/src/main/java/com/cloud/api/query/dao/ProjectJoinDaoImpl.java‎

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -110,6 +110,7 @@ public ProjectResponse newProjectResponse(EnumSet<DomainDetails> details, Projec
110110
ownersList.add(ownerDetails);
111111
}
112112
response.setOwners(ownersList);
113+
response.setCreated(proj.getCreated());
113114

114115
// update tag information
115116
List<ResourceTagJoinVO> tags = ApiDBUtils.listResourceTagViewByResourceUUID(proj.getUuid(), ResourceObjectType.Project);

0 commit comments

Comments
 (0)