I am trying to figure out the new way of retrieving a Confluence Space programmatically in Java. Currently I have achieved this in code, which does return the correct space object:
@Path("/getunusedspaces")
@GET
@AnonymousAllowed
@Consumes
@Produces({MediaType.APPLICATION_JSON, MediaType.APPLICATION_XML})
public Response getUnusedSpaces(@QueryParam("date") String date, @Context UriInfo uriInfo) {
log.info("Data Received: " + uriInfo.getRequestUri().getQuery());
try {
Optional<Space> spaceJTS = spaceService.find(new Expansion("history.lastupdated")).withKeys("JTS").fetch();
JSONObject obj = new JSONObject();
obj.put("auth", true);
obj.put("spaceKey", spaceJTS.get().getKey());
log.error("Space details: " + spaceJTS.toString());
String ret = obj.toString();
return Response.status(Response.Status.OK).entity(ret).type(MediaType.TEXT_PLAIN).build();
} catch (JSONException e) {
return Response.status(Response.Status.NOT_FOUND).entity("Could not found space object").type(MediaType.TEXT_PLAIN).build();
}
}
However, how do I get that “history.lastupdated” value? I have tried various ways but I can’t seem to retrieve it. Any ideas?