in src/main/java/org/apache/sling/discovery/base/connectors/announcement/Announcement.java [444:464]
public void persistTo(Resource announcementsResource)
throws PersistenceException {
Resource announcementChildResource = announcementsResource.getChild(getPrimaryKey());
// SLING-2967 used to introduce 'resetting the created time' here
// in order to become machine-clock independent.
// With introduction of SLING-3389, where we dont store any
// announcement-heartbeat-dates anymore at all, this resetting here
// became unnecessary.
final String announcementJson = asJSON();
if (announcementChildResource==null) {
final ResourceResolver resourceResolver = announcementsResource.getResourceResolver();
Map<String, Object> properties = new HashMap<String, Object>();
properties.put("topologyAnnouncement", announcementJson);
resourceResolver.create(announcementsResource, getPrimaryKey(), properties);
} else {
final ModifiableValueMap announcementChildMap = announcementChildResource.adaptTo(ModifiableValueMap.class);
announcementChildMap.put("topologyAnnouncement", announcementJson);
}
}