Change the return type of the app lifecycle's updated time

If the API returns Timestamp object it creates from the Unix timestamp (in milliseconds), but its string representation depends on the JVM’s default timezone. Therefore it returns timestamp based on JVM's timezone. Since it is required to return UTC time, changed the data type and returns the long value. With this improvement it is guaranteed that client gets the UTC time of the app lifecycle's updated time.
remotes/1727692234363924000/master
tcdlpds 3 months ago
parent a4f1f64a70
commit bc81c8923c

@ -45,8 +45,8 @@ public class LifecycleState {
private String updatedBy; private String updatedBy;
@ApiModelProperty(name = "updatedAt", @ApiModelProperty(name = "updatedAt",
value = "Timestamp of the lifecycle has been updated") value = "The seconds from the epoch of 1970-01-01T00:00:00Z that the lifecycle has been updated")
private Timestamp updatedAt; private Long updatedAt;
@ApiModelProperty(name = "reasonForChange", @ApiModelProperty(name = "reasonForChange",
value = "Reason for the application release lifecycle change from previous state to current state.") value = "Reason for the application release lifecycle change from previous state to current state.")
@ -76,11 +76,11 @@ public class LifecycleState {
this.updatedBy = updatedBy; this.updatedBy = updatedBy;
} }
public Timestamp getUpdatedAt() { public Long getUpdatedAt() {
return updatedAt; return updatedAt;
} }
public void setUpdatedAt(Timestamp updatedAt) { public void setUpdatedAt(Long updatedAt) {
this.updatedAt = updatedAt; this.updatedAt = updatedAt;
} }

@ -274,7 +274,7 @@ public class GenericLifecycleStateDAOImpl extends AbstractDAOImpl implements Lif
lifecycleState = new LifecycleState(); lifecycleState = new LifecycleState();
lifecycleState.setCurrentState(rs.getString("CURRENT_STATE")); lifecycleState.setCurrentState(rs.getString("CURRENT_STATE"));
lifecycleState.setPreviousState(rs.getString("PREVIOUS_STATE")); lifecycleState.setPreviousState(rs.getString("PREVIOUS_STATE"));
lifecycleState.setUpdatedAt(new Timestamp(rs.getLong("UPDATED_AT"))); lifecycleState.setUpdatedAt(rs.getLong("UPDATED_AT"));
lifecycleState.setUpdatedBy(rs.getString("UPDATED_BY")); lifecycleState.setUpdatedBy(rs.getString("UPDATED_BY"));
} }
} catch (SQLException e) { } catch (SQLException e) {
@ -300,7 +300,7 @@ public class GenericLifecycleStateDAOImpl extends AbstractDAOImpl implements Lif
LifecycleState lifecycleState = new LifecycleState(); LifecycleState lifecycleState = new LifecycleState();
lifecycleState.setCurrentState(rs.getString("CURRENT_STATE")); lifecycleState.setCurrentState(rs.getString("CURRENT_STATE"));
lifecycleState.setPreviousState(rs.getString("PREVIOUS_STATE")); lifecycleState.setPreviousState(rs.getString("PREVIOUS_STATE"));
lifecycleState.setUpdatedAt(new Timestamp(rs.getLong("UPDATED_AT") * 1000L)); lifecycleState.setUpdatedAt(rs.getLong("UPDATED_AT"));
lifecycleState.setUpdatedBy(rs.getString("UPDATED_BY")); lifecycleState.setUpdatedBy(rs.getString("UPDATED_BY"));
lifecycleStates.add(lifecycleState); lifecycleStates.add(lifecycleState);
} }

Loading…
Cancel
Save