package crmdna.api.endpoint;
import crmdna.api.endpoint.ClientApi.ClientEnum;
import crmdna.api.endpoint.ListApi.ListEnum;
import crmdna.api.endpoint.ProgramIshaApi.GroupEnum;
import crmdna.common.Utils;
import crmdna.group.Group;
import crmdna.list.List;
import static crmdna.common.AssertUtils.ensureNotNull;
import static crmdna.common.AssertUtils.ensureNotNullNotEmpty;
public class EndpointUtils {
static String getClient(ClientEnum clientEnum, String clientOther) {
ensureNotNull(clientEnum, "clientEnum is null");
if (clientEnum != ClientEnum.OTHER)
return Utils.removeSpaceUnderscoreBracketAndHyphen(clientEnum.toString().toLowerCase());
ensureNotNullNotEmpty(clientOther, "clientOther should be specified with client is 'OTHER'");
return clientOther;
}
static long getGroupId(String client, GroupEnum groupEnum, String groupOtherIdOrName) {
ensureNotNullNotEmpty(client, "client is null or empty");
ensureNotNull(groupEnum, "groupEnum is null");
String groupIdOrName = groupOtherIdOrName;
if (groupEnum != GroupEnum.OTHER) {
groupIdOrName = groupEnum.toString();
}
groupIdOrName = Utils.removeSpaceUnderscoreBracketAndHyphen(groupIdOrName.toLowerCase());
long groupId = Group.safeGetByIdOrName(client, groupIdOrName).toProp().groupId;
return groupId;
}
static long getListId(String client, long groupId, ListEnum listEnum, String listOther) {
ensureNotNullNotEmpty(client, "client is null or empty");
ensureNotNull(listEnum, "listEnum is null");
String listName = listOther;
if (listEnum != ListEnum.OTHER) {
listName = listEnum.toString();
}
listName = Utils.removeSpaceUnderscoreBracketAndHyphen(listName.toLowerCase());
long listId = List.safeGetByGroupIdAndName(client, groupId, listName).toProp().listId;
return listId;
}
}