docDiscard.setDisambiguatedName("DOCUMENT_DISCARD");
docDiscard.setType("SPECIAL");
docDiscard.setIndex("DOCUMENT_DISCARD");
contentForNewAliases = new BasicDBObject("DISCARD", discard.toDb());
contentForNewAliases.put("DOCUMENT_DISCARD", docDiscard);
ResponseObject response = new ResponseObject();
shareForNewAliases = this.addShareJSON("Alias Share: " + communityIdStr, "An alias share for a specific community", "infinite-entity-alias", "{}", response);
if ((null == shareForNewAliases) || !response.isSuccess()) {
return null;
}//TESTED
// Remove share from personal community
try {
ShareCommunityPojo currCommunity = shareForNewAliases.getCommunities().iterator().next();
String removeCommunityIdStr = currCommunity.get_id().toString();
if (!communityIdStr.equals(removeCommunityIdStr)) { // (obv not if this is my community somehow, don't think that's possible)
this.removeShareFromCommunity(shareForNewAliases.get_id().toString(), removeCommunityIdStr, response);
if (!response.isSuccess()) {
return null;
}
}
}
catch (Exception e) {} // do nothing I guess, not in any communities?
this.addShareToCommunity(shareForNewAliases.get_id().toString(), "aliasComm", communityIdStr, response);
if (!response.isSuccess()) {
return null;
}
}//TESTED
shareContentCache.put(shareForNewAliases.get_id(), contentForNewAliases);
return shareForNewAliases;