private void onCompositeColumns ( CQLTranslator translator , List < ColumnInfo > compositeColumns , StringBuilder queryBuilder , List < ColumnInfo > columns , boolean isCounterColumnFamily ) { MetamodelImpl metaModel = ( MetamodelImpl ) kunderaMetadata . getApplicationMetadata ( ) . getMetamodel ( puMetadata . getPersistenceUnitName ( ) ) ; for ( ColumnInfo colInfo : compositeColumns ) { if ( columns == null || ( columns != null && ! columns . contains ( colInfo ) ) ) { String cqlType = null ; if ( isCounterColumnFamily ) { cqlType = "counter" ; translator . appendColumnName ( queryBuilder , colInfo . getColumnName ( ) , cqlType ) ; queryBuilder . append ( Constants . SPACE_COMMA ) ; } // check for composite partition keys #734 else if ( colInfo . getType ( ) . isAnnotationPresent ( Embeddable . class ) ) { EmbeddableType embeddedObject = ( EmbeddableType ) metaModel . embeddable ( colInfo . getType ( ) ) ; for ( Field embeddedColumn : colInfo . getType ( ) . getDeclaredFields ( ) ) { if ( ! ReflectUtils . isTransientOrStatic ( embeddedColumn ) ) { validateAndAppendColumnName ( translator , queryBuilder , ( ( AbstractAttribute ) embeddedObject . getAttribute ( embeddedColumn . getName ( ) ) ) . getJPAColumnName ( ) , embeddedColumn . getType ( ) ) ; } } } else { validateAndAppendColumnName ( translator , queryBuilder , colInfo . getColumnName ( ) , colInfo . getType ( ) ) ; } } } }
On composite columns .