Skip to content

Commit

Permalink
Merge branch 'main' into substitution-group-fix
Browse files Browse the repository at this point in the history
  • Loading branch information
SimonCockx authored Feb 21, 2025
2 parents 0d6fc13 + 9ea37ca commit 7c97f09
Show file tree
Hide file tree
Showing 3 changed files with 19 additions and 21 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -111,7 +111,7 @@ class PojoInheritanceRegressionTest {
* @version test
*/
@RosettaDataType(value="Foo2", builder=Foo2.Foo2BuilderImpl.class, version="test")
@RuneDataType(value="Foo2", model="My test model", builder=Foo2.Foo2BuilderImpl.class, version="test")
@RuneDataType(value="Foo2", model="com", builder=Foo2.Foo2BuilderImpl.class, version="test")
public interface Foo2 extends Foo1 {
Foo2Meta metaData = new Foo2Meta();
Expand Down Expand Up @@ -784,7 +784,7 @@ class PojoInheritanceRegressionTest {
* @version test
*/
@RosettaDataType(value="Foo3", builder=Foo3.Foo3BuilderImpl.class, version="test")
@RuneDataType(value="Foo3", model="My test model", builder=Foo3.Foo3BuilderImpl.class, version="test")
@RuneDataType(value="Foo3", model="com", builder=Foo3.Foo3BuilderImpl.class, version="test")
public interface Foo3 extends Foo2 {
Foo3Meta metaData = new Foo3Meta();
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -114,7 +114,7 @@ class PojoRegressionTest {
* @version test
*/
@RosettaDataType(value="Pojo", builder=Pojo.PojoBuilderImpl.class, version="test")
@RuneDataType(value="Pojo", model="My test model", builder=Pojo.PojoBuilderImpl.class, version="test")
@RuneDataType(value="Pojo", model="com", builder=Pojo.PojoBuilderImpl.class, version="test")
public interface Pojo extends RosettaModelObject, GlobalKey {
PojoMeta metaData = new PojoMeta();
Expand Down Expand Up @@ -1347,7 +1347,7 @@ class PojoRegressionTest {
* @version 1
*/
@RosettaDataType(value="FieldWithMetaString", builder=FieldWithMetaString.FieldWithMetaStringBuilderImpl.class, version="0.0.0")
@RuneDataType(value="FieldWithMetaString", model="My test model", builder=FieldWithMetaString.FieldWithMetaStringBuilderImpl.class, version="0.0.0")
@RuneDataType(value="FieldWithMetaString", model="com", builder=FieldWithMetaString.FieldWithMetaStringBuilderImpl.class, version="0.0.0")
public interface FieldWithMetaString extends RosettaModelObject, FieldWithMeta<String>, GlobalKey {
FieldWithMetaStringMeta metaData = new FieldWithMetaStringMeta();
Expand Down Expand Up @@ -1632,7 +1632,7 @@ class PojoRegressionTest {
* @version 1
*/
@RosettaDataType(value="ReferenceWithMetaFoo", builder=ReferenceWithMetaFoo.ReferenceWithMetaFooBuilderImpl.class, version="0.0.0")
@RuneDataType(value="ReferenceWithMetaFoo", model="My test model", builder=ReferenceWithMetaFoo.ReferenceWithMetaFooBuilderImpl.class, version="0.0.0")
@RuneDataType(value="ReferenceWithMetaFoo", model="com", builder=ReferenceWithMetaFoo.ReferenceWithMetaFooBuilderImpl.class, version="0.0.0")
public interface ReferenceWithMetaFoo extends RosettaModelObject, ReferenceWithMeta<Foo> {
ReferenceWithMetaFooMeta metaData = new ReferenceWithMetaFooMeta();
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,36 +2,34 @@
package com.regnosys.rosetta.generator.java.object

import com.google.common.collect.ImmutableList
import javax.inject.Inject
import com.regnosys.rosetta.generator.GeneratedIdentifier
import com.regnosys.rosetta.generator.java.JavaScope
import com.regnosys.rosetta.generator.java.RosettaJavaPackages.RootPackage
import com.regnosys.rosetta.generator.java.expression.TypeCoercionService
import com.regnosys.rosetta.generator.java.statement.builder.JavaExpression
import com.regnosys.rosetta.generator.java.statement.builder.JavaVariable
import com.regnosys.rosetta.generator.java.types.JavaPojoInterface
import com.regnosys.rosetta.generator.java.types.JavaPojoProperty
import com.regnosys.rosetta.generator.java.types.JavaTypeTranslator
import com.regnosys.rosetta.generator.java.types.JavaTypeUtil
import com.regnosys.rosetta.generator.java.types.RJavaWithMetaValue
import com.regnosys.rosetta.generator.java.util.ImportManagerExtension
import com.regnosys.rosetta.types.RDataType
import com.rosetta.model.lib.annotations.RosettaAttribute
import com.rosetta.model.lib.annotations.RosettaDataType
import com.rosetta.model.lib.annotations.RuneAttribute
import com.rosetta.model.lib.annotations.RuneDataType
import com.rosetta.model.lib.annotations.RuneMetaType
import com.rosetta.model.lib.meta.RosettaMetaData
import com.rosetta.util.types.JavaClass
import com.rosetta.util.types.generated.GeneratedJavaClass
import java.util.List
import java.util.Objects
import java.util.Optional
import javax.inject.Inject
import org.eclipse.xtend2.lib.StringConcatenationClient
import org.eclipse.xtext.generator.IFileSystemAccess2

import com.rosetta.util.types.generated.GeneratedJavaClass
import com.regnosys.rosetta.generator.java.types.JavaPojoInterface
import com.regnosys.rosetta.generator.java.types.JavaTypeUtil
import com.regnosys.rosetta.generator.java.types.RJavaWithMetaValue
import com.regnosys.rosetta.generator.java.types.JavaPojoProperty
import com.regnosys.rosetta.generator.java.statement.builder.JavaExpression
import com.regnosys.rosetta.generator.java.expression.TypeCoercionService
import com.regnosys.rosetta.generator.java.statement.builder.JavaVariable
import com.rosetta.model.lib.annotations.RuneDataType
import com.regnosys.rosetta.config.RosettaConfiguration
import com.rosetta.model.lib.annotations.RuneAttribute
import com.rosetta.model.lib.annotations.RuneMetaType

class ModelObjectGenerator {

@Inject extension ModelObjectBoilerPlate
Expand All @@ -40,7 +38,6 @@ class ModelObjectGenerator {
@Inject extension JavaTypeTranslator
@Inject extension JavaTypeUtil
@Inject extension TypeCoercionService
@Inject RosettaConfiguration rosettaConfiguration

def generate(RootPackage root, IFileSystemAccess2 fsa, RDataType t, String version) {
fsa.generateFile(root.child(t.name + '.java').withForwardSlashes,
Expand All @@ -60,10 +57,11 @@ class ModelObjectGenerator {
val metaDataIdentifier = interfaceScope.createUniqueIdentifier("metaData");
val builderScope = interfaceScope.classScope('''«javaType»Builder''')
val implScope = interfaceScope.classScope('''«javaType»Impl''')
val modelShortName = javaType.packageName.first
'''
«javaType.javadoc»
@«RosettaDataType»(value="«javaType.rosettaName»", builder=«javaType.toBuilderImplType».class, version="«javaType.version»")
@«RuneDataType»(value="«javaType.rosettaName»", model="«rosettaConfiguration.model.name»", builder=«javaType.toBuilderImplType».class, version="«javaType.version»")
@«RuneDataType»(value="«javaType.rosettaName»", model="«modelShortName»", builder=«javaType.toBuilderImplType».class, version="«javaType.version»")
public interface «javaType» extends «implementsClause(javaType)» {
«metaType» «metaDataIdentifier» = new «metaType»();
Expand Down

0 comments on commit 7c97f09

Please sign in to comment.