EntityMeta entityMeta = entityMetaMap.get(entityClass);
Validator.validateFalse(entityMeta.structure().isClusteredEntity(), "Index query is not supported for clustered entity. Please use typed query/native query");
Validator.validateNotNull(indexCondition, "Index condition should not be null");
entityMeta.forTranscoding().encodeIndexConditionValue(indexCondition);
String indexColumnName = indexCondition.getColumnName();
final EntityMetaConfig metaConfig = entityMeta.config();
final Select.Where statement = select().from(metaConfig.getKeyspaceName(), metaConfig.getTableName()).where(eq(indexColumnName, bindMarker(indexColumnName)));
return this.typedQueryInternal(entityClass, statement, indexCondition.getColumnValue());