/** * Gets the json object. * * @param declaredFields * the declared fields * @param embeddableType * the embeddable type * @param embeddedObject * the embedded object * @return the json object */ private static JsonElement getJsonObject(Field[] declaredFields, EmbeddableType embeddableType, Object embeddedObject) { JsonObject jsonObject = new JsonObject(); for (Field field : declaredFields) { if (!ReflectUtils.isTransientOrStatic(field) && !embeddableType.getAttribute(field.getName()).isAssociation()) { Object valueObject = PropertyAccessorHelper.getObject(embeddedObject, field); jsonObject.add(((AbstractAttribute) (embeddableType.getAttribute(field.getName()))).getJPAColumnName(), getJsonPrimitive(valueObject, embeddableType.getAttribute(field.getName()).getJavaType())); } } return jsonObject; }
Field field) { if (!ReflectUtils.isTransientOrStatic(field)) { Attribute compositeColumn = compoundKey.getAttribute(field.getName()); if (compositeColumn.getJavaType().isAnnotationPresent(Embeddable.class)) {
/** * Assert on embeddable type. * * @param <X> * the generic type * @param entityClazz * the entity clazz * @param attribute * the attribute * @param embeddableType * the embeddable type * @param attributeName * the attribute name * @param attributeClazz * the attribute clazz */ @SuppressWarnings({ "rawtypes", "unchecked" }) private <X> void assertOnEmbeddableType(Class entityClazz, Attribute<X, String> attribute, EmbeddableType<X> embeddableType, String attributeName, Class attributeClazz) { Assert.assertNotSame(entityClazz.getDeclaredFields().length, embeddableType.getAttributes().size()); Assert.assertEquals(1, embeddableType.getAttributes().size()); Assert.assertEquals(entityClazz, embeddableType.getJavaType()); Attribute attributeTwo = (Attribute) embeddableType.getAttribute(attributeName); Assert.assertNotNull(attribute); Assert.assertEquals(attributeClazz, attributeTwo.getJavaType()); Assert.assertEquals(attributeName, attributeTwo.getName()); }
private void addPrimaryKeyColumnsFromEmbeddable(List<ColumnSchema> columns, EmbeddableType embeddable, Field[] fields, MetamodelImpl metaModel) { for (Field f : fields) { if (!ReflectUtils.isTransientOrStatic(f)) { if (f.getType().isAnnotationPresent(Embeddable.class)) { // nested addPrimaryKeyColumnsFromEmbeddable(columns, (EmbeddableType) metaModel.embeddable(f.getType()), f .getType().getDeclaredFields(), metaModel); } else { Attribute attribute = embeddable.getAttribute(f.getName()); columns.add(new ColumnSchema.ColumnSchemaBuilder( ((AbstractAttribute) attribute).getJPAColumnName(), KuduDBValidationClassMapper .getValidTypeForClass(f.getType())).key(true).build()); } } } }
/** * Assert on embeddable type. * * @param <X> * the generic type * @param entityClazz * the entity clazz * @param attribute * the attribute * @param embeddableType * the embeddable type * @param attributeName * the attribute name * @param attributeClazz * the attribute clazz */ @SuppressWarnings({ "rawtypes", "unchecked" }) private <X> void assertOnEmbeddableType(Class entityClazz, Attribute<X, String> attribute, EmbeddableType<X> embeddableType, String attributeName, Class attributeClazz) { // Assert.assertEquals(entityClazz.getDeclaredFields().length, // embeddableType.getAttributes().size()); Assert.assertEquals(KunderaCoreUtils.countNonSyntheticFields(entityClazz), embeddableType.getAttributes() .size()); Assert.assertEquals(entityClazz, embeddableType.getJavaType()); Attribute attributeTwo = (Attribute) embeddableType.getAttribute(attributeName); Assert.assertNotNull(attribute); Assert.assertEquals(attributeClazz, attributeTwo.getJavaType()); Assert.assertEquals(attributeName, attributeTwo.getName()); }
Attribute attribute = compoEmbeddableType.getAttribute(f.getName()); translator.appendColumnName(queryBuilder, ((AbstractAttribute) attribute).getJPAColumnName()); queryBuilder.append(Constants.SPACE_COMMA);
/** * Gets the _ id. * * @param field * the field * @param embeddedObject * the embedded object * @param embeddableType * the embeddable type * @param _id * the _id * @return the _ id */ static String get_Id(Field field, Object embeddedObject, EmbeddableType embeddableType, String _id) { Field[] fields = field.getType().getDeclaredFields(); for (Field columnField : fields) { if (!ReflectUtils.isTransientOrStatic(columnField) && !embeddableType.getAttribute(columnField.getName()).isAssociation()) { Object valueObject = PropertyAccessorHelper.getObject(embeddedObject, columnField); _id = _id + PropertyAccessorHelper.getString(valueObject); } } return _id; } }
.get(((AbstractAttribute) embeddable).getBindableJavaType()); Attribute embeddedAttribute = embeddedEntity.getAttribute(embeddedFieldName);
Attribute attribute = embeddable.getAttribute(f.getName()); Type type = KuduDBValidationClassMapper.getValidTypeForClass(f.getType()); KuduDBDataHandler.addToRow(row, ((AbstractAttribute) attribute).getJPAColumnName(), value, type);
if (metaModel.isEmbeddable(((AbstractAttribute) embeddable.getAttribute(field.getName())) .getBindableJavaType())) (SingularAttribute) embeddable.getAttribute(field.getName()), KunderaCoreUtils.initialize(((AbstractAttribute) embeddable.getAttribute(field .getName())).getBindableJavaType(), field.get(compositeId)), uniquePKs, metaModel);
metaModel.embeddable(((AbstractAttribute) embeddableAttribute).getBindableJavaType()); orderColumnName = orderColumnName.substring(orderColumnName.indexOf(".") + 1); AbstractAttribute attribute = (AbstractAttribute) embeddableType.getAttribute(orderColumnName); orderByColumnName = attribute.getJPAColumnName();
String columnName = ((AbstractAttribute) keyObj.getAttribute(field.getName())).getJPAColumnName(); translator.appendColumnName(pkNameTokens, columnName); translator.appendValue(pkValueTokens, field.getType(), value, false, false); Attribute partitionKey = keyObj.getAttribute(embeddedField.getName()); EmbeddableType partitionKeyObj = metaModel.embeddable(partitionKey.getJavaType()); Object partitionKeyValue = PropertyAccessorHelper.getObject(id, (Field) partitionKey.getJavaMember()); String columnName = ((AbstractAttribute) partitionKeyObj.getAttribute(field.getName())) .getJPAColumnName(); translator.appendColumnName(pkNameTokens, columnName);
if (metaModel.isEmbeddable(((AbstractAttribute) embeddable.getAttribute(fields[i].getName())) .getBindableJavaType()))
Attribute attribute = embeddable.getAttribute(f.getName()); Type type = KuduDBValidationClassMapper.getValidTypeForClass(f.getType()); ColumnSchema column = new ColumnSchema.ColumnSchemaBuilder(
AbstractAttribute attrib = (AbstractAttribute) embeddable.getAttribute(field.getName()); Object obj = PropertyAccessorHelper.getObject(value, field); compositeKey.append(PropertyAccessorHelper.fromSourceToTargetClass(String.class,
Attribute compositeColumn = compoundKey.getAttribute(field.getName()); columns.add(((AbstractAttribute) compositeColumn).getJPAColumnName());
Attribute attribute = embeddableType.getAttribute(embeddedFieldName); translatedColumns.add(((AbstractAttribute) attribute).getJPAColumnName());
if (field != null && !Modifier.isStatic(field.getModifiers()) && !Modifier.isTransient(field.getModifiers()) && !field.isAnnotationPresent(Transient.class)) { Attribute attribute = compoundKey.getAttribute(field.getName()); String columnName = ((AbstractAttribute) attribute).getJPAColumnName(); Object value = PropertyAccessorHelper.getObject(filterClause.getValue().get(0), field);
if (field != null && !Modifier.isStatic(field.getModifiers()) && !Modifier.isTransient(field.getModifiers()) && !field.isAnnotationPresent(Transient.class)) { attribute = (SingularAttribute) compoundKey.getAttribute(field.getName()); Object valueObject = PropertyAccessorHelper.getObject(key, field); if (metaModel.isEmbeddable(((AbstractAttribute) attribute).getBindableJavaType())) {
/** * Id value in byte arr. * * @return the byte[] */ private byte[] idValueInByteArr() { Object entity = results.get(results.size() - 1); Object id = PropertyAccessorHelper.getId(entity, entityMetadata); String idName = ((AbstractAttribute) entityMetadata.getIdAttribute()).getJPAColumnName(); Class idClazz = ((AbstractAttribute) entityMetadata.getIdAttribute()).getBindableJavaType(); MetamodelImpl metaModel = (MetamodelImpl) kunderaMetadata.getApplicationMetadata().getMetamodel( entityMetadata.getPersistenceUnit()); EmbeddableType keyObj = null; ByteBuffer bytes = null; // if the key attribute is composite if (metaModel.isEmbeddable(entityMetadata.getIdAttribute().getBindableJavaType())) { keyObj = metaModel.embeddable(entityMetadata.getIdAttribute().getBindableJavaType()); Field embeddedField = getPartitionKeyField(); Attribute partitionKey = keyObj.getAttribute(embeddedField.getName()); Object partitionKeyValue = PropertyAccessorHelper.getObject(id, (Field) partitionKey.getJavaMember()); bytes = CassandraUtilities.toBytes(partitionKeyValue, (Field) partitionKey.getJavaMember()); } else { bytes = query.getBytesValue(idName, entityMetadata, id); } return bytes.array(); }