/** * @deprecated This method needs additional testing and thus isn't recommended to use as of October, 2015. */ public ByteBuffer[] getEpIdsBySdkToken(String sdkToken) { LOG.debug("Trying to find a list of enpoint key hash values by SDK token {}", sdkToken); Statement query = QueryBuilder .select() .from(this.getColumnFamilyName()) .where(QueryBuilder.eq(EP_BY_SDK_TOKEN_SDK_TOKEN_PROPERTY, sdkToken)); List<CassandraEpBySdkToken> queryResult = this.findListByStatement(query); ByteBuffer[] result = new ByteBuffer[queryResult.size()]; int pos = 0; for (CassandraEpBySdkToken endpointProfile : queryResult) { result[pos++] = endpointProfile.getEndpointKeyHash(); } LOG.debug("Endpoint profile hash values found: {}", Arrays.toString(result)); return result; } }
private CassandraEndpointProfile saveProfile(CassandraEndpointProfile profile) { profile.setId(convertKeyHashToString(profile.getEndpointKeyHash())); LOG.debug("Saving endpoint profile with id {}", profile.getId()); profile = super.save(profile); ByteBuffer epKeyHash = profile.getEndpointKeyHash(); List<Statement> statementList = new ArrayList<>(); statementList.add(cassandraEpByAppIdDao.getSaveQuery( new CassandraEpByAppId(profile.getApplicationId(), epKeyHash))); String accessToken = profile.getAccessToken(); if (accessToken != null) { statementList.add( cassandraEpByAccessTokenDao.getSaveQuery( new CassandraEpByAccessToken(accessToken, epKeyHash))); } statementList.add(getSaveQuery(profile)); Statement saveBySdkTokenId = cassandraEpBySdkTokenDao.getSaveQuery( new CassandraEpBySdkToken(profile.getSdkToken(), epKeyHash)); statementList.add(saveBySdkTokenId); Set<String> groupIdSet = getEndpointProfilesGroupIdSet(profile); for (String groupId : groupIdSet) { statementList.add( cassandraEpByEndpointGroupIdDao.getSaveQuery( new CassandraEpByEndpointGroupId(groupId, epKeyHash))); } executeBatch(statementList.toArray(new Statement[statementList.size()])); LOG.debug("[{}] Endpoint profile saved", profile.getId()); return profile; }