/** * check whether the time string is still alive, should be longer then the currentTime * @param dateTimeString * @return boolean */ public static boolean isAlive(String dateTimeString) { if (dateTimeString.contentEquals(FOREVER)) return true; String cur = getCurrDateTime(); return (dateCompare(dateTimeString, cur) > 0); }
public Boolean isAlive (Onem2mResource onem2mResource) { try { JSONObject jsonObject = new JSONObject(onem2mResource.getResourceContentJsonString()); String exptime = jsonObject.optString(ResourceContent.EXPIRATION_TIME); boolean aliveFlag = "".equals(exptime) || Onem2mDateTime.isAlive(exptime); if (!aliveFlag) { deleteResourceUsingResource(onem2mResource); } return (aliveFlag); } catch (JSONException e) { LOG.error("Invalid JSON {}", onem2mResource.getResourceContentJsonString(), e); throw new IllegalArgumentException("Invalid JSON", e); } } /**
public static int dateCompare(String dateString1, String dateString2) { if (dateString1.contentEquals(FOREVER) && dateString2.contentEquals(FOREVER)) { return 0; } if (dateString1.contentEquals(FOREVER)) { return 1; } if (dateString2.contentEquals(FOREVER)) { return -1; } DateTime dt1 = stringToDate(dateString1); DateTime dt2 = stringToDate(dateString2); if (dt1 == null || dt2 == null) { return 0; } if (dt1.isAfter(dt2)) { return 1; } if (dt1.isBefore(dt2)) { return -1; } return 0; } }
String minExpTime = Onem2mDateTime.addAgeToCurTime(mia); String cinExpTime = onem2mRequest.getResourceContent().getInJsonContent().optString(ResourceContent.EXPIRATION_TIME); if ( cinExpTime!= null && Onem2mDateTime.dateCompare(minExpTime, cinExpTime) < 0) { JsonUtils.put(resourceContent.getInJsonContent(), ResourceContent.EXPIRATION_TIME, minExpTime);
private Boolean isValidExpTime(String et, RequestPrimitive onem2mRequest) { String parentExpirationTime = getParentExpTime(onem2mRequest); if (parentExpirationTime == null || parentExpirationTime.contentEquals(Onem2mDateTime.FOREVER)) { //CSE does not have ET return true; } return (Onem2mDateTime.dateCompare(et, parentExpirationTime) <= 0); }
if (!Onem2mDateTime.isValidDateTime(crb)) { onem2mResponse.setRSC(Onem2m.ResponseStatusCode.BAD_REQUEST, "FILTER_CRITERIA_CREATED_BEFORE(" + RequestPrimitive.FILTER_CRITERIA_CREATED_BEFORE + if (!Onem2mDateTime.isValidDateTime(cra)) { onem2mResponse.setRSC(Onem2m.ResponseStatusCode.BAD_REQUEST, "FILTER_CRITERIA_CREATED_AFTER(" + RequestPrimitive.FILTER_CRITERIA_CREATED_AFTER + if (!Onem2mDateTime.isValidDateTime(ms)) { onem2mResponse.setRSC(Onem2m.ResponseStatusCode.BAD_REQUEST, "FILTER_CRITERIA_MODIFIED_SINCE(" + RequestPrimitive.FILTER_CRITERIA_MODIFIED_SINCE + if (!Onem2mDateTime.isValidDateTime(ums)) { onem2mResponse.setRSC(Onem2m.ResponseStatusCode.BAD_REQUEST, "FILTER_CRITERIA_UNMODIFIED_SINCE(" + RequestPrimitive.FILTER_CRITERIA_UNMODIFIED_SINCE +
if (crb != null) { String ct = jsonResourceContent.optString(ResourceContent.CREATION_TIME); if (ct != null && Onem2mDateTime.dateCompare(ct, crb) >= 0) { return false; if (cra != null) { String ct = jsonResourceContent.optString(ResourceContent.CREATION_TIME); if (ct != null && Onem2mDateTime.dateCompare(ct, cra) <= 0) { return false; if (ms != null) { String mt = jsonResourceContent.optString(ResourceContent.LAST_MODIFIED_TIME); if (mt != null && Onem2mDateTime.dateCompare(mt, ms) <= 0) { return false; if (ums != null) { String mt = jsonResourceContent.optString(ResourceContent.LAST_MODIFIED_TIME); if (mt != null && Onem2mDateTime.dateCompare(mt, ums) >= 0) { return false;
return; if (!Onem2mDateTime.isValidDateTime((String)j)) { onem2mResponse.setRSC(Onem2m.ResponseStatusCode.CONTENTS_UNACCEPTABLE, "CONTENT(" + EVENT_NOTIFICATION_CRITERIA + ") valid time format expected for json key: " + encKey);
String currDateTime = Onem2mDateTime.getCurrDateTime(); if (et != null) { if (Onem2mDateTime.dateCompare(et, currDateTime) < 0) { onem2mResponse.setRSC(Onem2m.ResponseStatusCode.BAD_REQUEST, "EXPIRATION_TIME: cannot be less than current time");
String crb = (String) j; String ct = changedResourceJsonObject.optString(ResourceContent.CREATION_TIME); if (ct != null && Onem2mDateTime.dateCompare(ct, crb) < 0) { sendThisNotification = true; String cra = (String) j; String ct2 = changedResourceJsonObject.optString(ResourceContent.CREATION_TIME); if (ct2 != null && Onem2mDateTime.dateCompare(ct2, cra) < 0) { sendThisNotification = true; String ms = (String) j; String mt = changedResourceJsonObject.optString(ResourceContent.LAST_MODIFIED_TIME); if (mt != null && Onem2mDateTime.dateCompare(mt, ms) > 0) { sendThisNotification = true; String ums = (String) j; String mt2 = changedResourceJsonObject.optString(ResourceContent.LAST_MODIFIED_TIME); if (mt2 != null && Onem2mDateTime.dateCompare(mt2, ums) < 0) { sendThisNotification = true;
if (!(o instanceof String) || !Onem2mDateTime.isValidDateTime(o.toString())) { onem2mResponse.setRSC(Onem2m.ResponseStatusCode.CONTENTS_UNACCEPTABLE, "CONTENT(" + RequestPrimitive.CONTENT + ") DATE (YYYYMMDDTHHMMSS) string expected for expiration time: " + key);