package Ġorg . roy l ance . ya orm . utilities . common Ċ Ċ import Ġorg . junit . Assert Ċ import Ġorg . nar u . nar u . model . N aru Model Ċ import Ġorg . roy l ance . common . service . I Builder Ċ import Ġorg . roy l ance . ya orm . Complex Model Ċ import Ġorg . roy l ance . ya orm . Nested Enum Test Ċ import Ġorg . roy l ance . ya orm . services . Entity Proto Context Ċ import Ġorg . roy l ance . ya orm . services . IEntity Service Ċ import Ġorg . roy l ance . ya orm . utilities . TestBase 6 4 Service Ċ import Ġjava . util .* Ċ Ċ object ĠNested Enum Test Utilities Ġ{ ĊĠ Ġfun Ġsimple Multiple Strings Test ( entity Service : ĠI Entity Service , Ġcleanup : ĠI Builder < Boolean >? Ġ= Ġnull ) Ġ{ ĊĠĠĠ Ġ// Ġarrange ĊĠĠĠ Ġtry Ġ{ ĊĠĠĠĠĠ Ġval Ġproto Context Ġ= ĠEntity Proto Context ( ĊĠĠĠĠĠĠĠĠĠ ĠN aru Model . get Descriptor (), ĊĠĠĠĠĠĠĠĠĠ Ġentity Service , ĊĠĠĠĠĠĠĠĠĠ ĠHashMap (), ĊĠĠĠĠĠĠĠĠĠ ĠTest Base 6 4 Service ()) ĊĠĠĠĠĠ Ġproto Context . entity Message Service . drop And Create Ent ire Schema ( Nested Enum Test . get Descriptor ()) ĊĊĠĠĠĠĠ Ġproto Context . handle Migrations () ĊĊĠĠĠĠĠ Ġval Ġfirst Image Ġ= ĠN aru Model . Request Image . newBuilder () ĊĠĠĠĠĠĠĠĠĠ Ġ. setId (" FIRST _ IMAGE ") ĊĊĠĠĠĠĠ Ġval Ġsecond Image Ġ= ĠN aru Model . Request Image . newBuilder () ĊĠĠĠĠĠĠĠĠĠ Ġ. setId (" SECOND _ IMAGE ") ĊĊĠĠĠĠĠ Ġval Ġrequest Ġ= ĠN aru Model . Request . newBuilder () ĊĠĠĠĠĠĠĠĠĠ Ġ. setId (" FIRST _ REQUEST ") ĊĊĠĠĠĠĠ Ġval Ġfirst View Ġ= ĠN aru Model . View . newBuilder () ĊĠĠĠĠĠĠĠĠĠ Ġ. setId (" FIRST _ VIEW ") ĊĠĠĠĠĠĠĠĠĠ Ġ. setImage Id ( first Image . id ) ĊĊĠĠĠĠĠ Ġrequest . add Views ( first View ) ĊĊĠĠĠĠĠ Ġproto Context . entity Message Service . merge ( request . build ()) ĊĊĠĠĠĠĠ Ġproto Context . entity Message Service . merge ( first Image . build ()) ĊĠĠĠĠĠ Ġproto Context . entity Message Service . merge ( second Image . build ()) ĊĊĠĠĠĠĠ Ġ// Ġact ĊĠĠĠĠĠ Ġval Ġfound Requests Ġ= Ġproto Context . entity Message Service . get Many ( N aru Model . Request . getDefaultInstance (), ĠlistOf ( request . id )) ĊĊĠĠĠĠĠ Ġ// Ġassert ĊĠĠĠĠĠ ĠAssert . assertTrue ( found Requests . size Ġ== Ġ 1 ) ĊĠĠĠĠĠ ĠAssert . assertTrue ( found Requests . first (). views Count Ġ== Ġ 1 ) ĊĠĠĠĠĠ ĠAssert . assertTrue ( found Requests . first (). views List . first (). image Id . isNotBlank ()) ĊĠĠĠĠĠ ĠAssert . assertTrue ( found Requests . first (). views List . first (). image Id Ġ== Ġfirst Image . id ) ĊĠĠĠ Ġ} Ġfinally Ġ{ ĊĠĠĠĠĠ Ġentity Service . close () ĊĠĠĠĠĠ Ġcleanup ?. build () ĊĠĠĠ Ġ} ĊĠ Ġ} ĊĊĠ Ġfun Ġsimple Pass Through Execution s Test ( entity Service : ĠI Entity Service , Ġcleanup : ĠI Builder < Boolean >? Ġ= Ġnull ) Ġ{ ĊĠĠĠ Ġ// Ġarrange ĊĠĠĠ Ġtry Ġ{ ĊĠĠĠĠĠ Ġval Ġproto Context Ġ= ĠEntity Proto Context ( ĊĠĠĠĠĠĠĠĠĠ ĠNested Enum Test . get Descriptor (), ĊĠĠĠĠĠĠĠĠĠ Ġentity Service , ĊĠĠĠĠĠĠĠĠĠ ĠHashMap (), ĊĠĠĠĠĠĠĠĠĠ ĠTest Base 6 4 Service ()) ĊĠĠĠĠĠ Ġproto Context . entity Message Service . drop And Create Ent ire Schema ( Nested Enum Test . get Descriptor ()) ĊĊĠĠĠĠĠ Ġproto Context . handle Migrations () ĊĊĠĠĠĠĠ Ġval Ġcolumn One Ġ= ĠNested Enum Test . Column Info . newBuilder () ĊĠĠĠĠĠĠĠĠĠ Ġ. setId ( UUID . randomUUID (). toString ()) ĊĠĠĠĠĠĠĠĠĠ Ġ. set Source Name (" one ") ĊĠĠĠĠĠĠĠĠĠ Ġ. set Source Type ( Nested Enum Test . Protobuf Type . STRING ) ĊĠĠĠĠĠĠĠĠĠ Ġ. set Destination Type ( Nested Enum Test . Protobuf Type . STRING ) ĊĠĠĠĠĠĠĠĠĠ Ġ. set Destination Name (" one ") ĊĊĠĠĠĠĠ Ġval Ġcolumn Two Ġ= ĠNested Enum Test . Column Info . newBuilder () ĊĠĠĠĠĠĠĠĠĠ Ġ. setId ( UUID . randomUUID (). toString ()) ĊĠĠĠĠĠĠĠĠĠ Ġ. set Source Name (" two ") ĊĠĠĠĠĠĠĠĠĠ Ġ. set Source Type ( Nested Enum Test . Protobuf Type . STRING ) ĊĠĠĠĠĠĠĠĠĠ Ġ. set Destination Type ( Nested Enum Test . Protobuf Type . STRING ) ĊĠĠĠĠĠĠĠĠĠ Ġ. set Destination Name (" two ") ĊĊĠĠĠĠĠ Ġval Ġdataset Ġ= ĠNested Enum Test . DataSet . newBuilder () ĊĠĠĠĠĠĠĠĠĠ Ġ. setId ( UUID . randomUUID (). toString ()) ĊĠĠĠĠĠĠĠĠĠ Ġ. set Destination Name (" cool _ destination ") ĊĠĠĠĠĠĠĠĠĠ Ġ. set Column Delimiter ( Nested Enum Test . Delimiter Type . COMMA ) ĊĠĠĠĠĠĠĠĠĠ Ġ. set Row Delimiter ( Nested Enum Test . Delimiter Type . CAR RI AGE _ RETURN ) ĊĠĠĠĠĠĠĠĠĠ Ġ. set Has Headers ( true ) ĊĠĠĠĠĠĠĠĠĠ Ġ. setIs Fixed Width ( false ) ĊĠĠĠĠĠĠĠĠĠ Ġ. addColumn Infos ( column One ) ĊĠĠĠĠĠĠĠĠĠ Ġ. addColumn Infos ( column Two ) ĊĊĠĠĠĠĠ Ġval Ġcustomer Ġ= ĠNested Enum Test . Customer . newBuilder () ĊĠĠĠĠĠĠĠĠĠ Ġ. setId ( UUID . randomUUID (). toString ()) ĊĠĠĠĠĠĠĠĠĠ Ġ. setName (" test ") ĊĠĠĠĠĠĠĠĠĠ Ġ. add Datasets ( dataset ) ĊĠĠĠĠĠĠĠĠĠ Ġ. build () ĊĊĠĠĠĠĠ Ġ// Ġact ĊĠĠĠĠĠ Ġproto Context . entity Message Service . merge ( customer ) ĊĊĠĠĠĠĠ Ġ// Ġassert ĊĠĠĠĠĠ Ġval Ġall Customers Ġ= Ġproto Context . entity Message Service . get Many ( Nested Enum Test . Customer . getDefaultInstance ()) ĊĠĠĠĠĠ ĠAssert . assertTrue ( all Customers . size Ġ== Ġ 1 ) ĊĠĠĠĠĠ ĠAssert . assertTrue ( proto Context . entity Message Service . get Report (). executions Count Ġ> Ġ 0 ) ĊĊĠĠĠĠĠ Ġprintln ( proto Context . entity Message Service . get Report (). executions List . map Ġ{ Ġit . raw Sql Ġ}. join ToString ("\ n \ n ")) ĊĠĠĠ Ġ} Ġfinally Ġ{ ĊĠĠĠĠĠ Ġentity Service . close () ĊĠĠĠĠĠ Ġcleanup ?. build () ĊĠĠĠ Ġ} ĊĠ Ġ} ĊĊĠ Ġfun Ġsimple Pass Through Test ( entity Service : ĠI Entity Service , Ġcleanup : ĠI Builder < Boolean >? Ġ= Ġnull ) Ġ{ ĊĠĠĠ Ġ// Ġarrange ĊĠĠĠ Ġtry Ġ{ ĊĠĠĠĠĠ Ġval Ġproto Context Ġ= ĠEntity Proto Context ( ĊĠĠĠĠĠĠĠĠĠ ĠNested Enum Test . get Descriptor (), ĊĠĠĠĠĠĠĠĠĠ Ġentity Service , ĊĠĠĠĠĠĠĠĠĠ ĠHashMap (), ĊĠĠĠĠĠĠĠĠĠ ĠTest Base 6 4 Service ()) ĊĊĠĠĠĠĠ Ġproto Context . entity Message Service . drop And Create Ent ire Schema ( Nested Enum Test . get Descriptor ()) ĊĊĠĠĠĠĠ Ġproto Context . handle Migrations () ĊĊĠĠĠĠĠ Ġval Ġcolumn One Ġ= ĠNested Enum Test . Column Info . newBuilder () ĊĠĠĠĠĠĠĠĠĠ Ġ. setId ( UUID . randomUUID (). toString ()) ĊĠĠĠĠĠĠĠĠĠ Ġ. set Source Name (" one ") ĊĠĠĠĠĠĠĠĠĠ Ġ. set Source Type ( Nested Enum Test . Protobuf Type . STRING ) ĊĠĠĠĠĠĠĠĠĠ Ġ. set Destination Type ( Nested Enum Test . Protobuf Type . STRING ) ĊĠĠĠĠĠĠĠĠĠ Ġ. set Destination Name (" one ") ĊĊĠĠĠĠĠ Ġval Ġcolumn Two Ġ= ĠNested Enum Test . Column Info . newBuilder () ĊĠĠĠĠĠĠĠĠĠ Ġ. setId ( UUID . randomUUID (). toString ()) ĊĠĠĠĠĠĠĠĠĠ Ġ. set Source Name (" two ") ĊĠĠĠĠĠĠĠĠĠ Ġ. set Source Type ( Nested Enum Test . Protobuf Type . STRING ) ĊĠĠĠĠĠĠĠĠĠ Ġ. set Destination Type ( Nested Enum Test . Protobuf Type . STRING ) ĊĠĠĠĠĠĠĠĠĠ Ġ. set Destination Name (" two ") ĊĊĠĠĠĠĠ Ġval Ġdataset Ġ= ĠNested Enum Test . DataSet . newBuilder () ĊĠĠĠĠĠĠĠĠĠ Ġ. setId ( UUID . randomUUID (). toString ()) ĊĠĠĠĠĠĠĠĠĠ Ġ. set Destination Name (" cool _ destination ") ĊĠĠĠĠĠĠĠĠĠ Ġ. set Column Delimiter ( Nested Enum Test . Delimiter Type . COMMA ) ĊĠĠĠĠĠĠĠĠĠ Ġ. set Row Delimiter ( Nested Enum Test . Delimiter Type . CAR RI AGE _ RETURN ) ĊĠĠĠĠĠĠĠĠĠ Ġ. set Has Headers ( true ) ĊĠĠĠĠĠĠĠĠĠ Ġ. setIs Fixed Width ( false ) ĊĠĠĠĠĠĠĠĠĠ Ġ. addColumn Infos ( column One ) ĊĠĠĠĠĠĠĠĠĠ Ġ. addColumn Infos ( column Two ) ĊĊĠĠĠĠĠ Ġval Ġcustomer Ġ= ĠNested Enum Test . Customer . newBuilder () ĊĠĠĠĠĠĠĠĠĠ Ġ. setId ( UUID . randomUUID (). toString ()) ĊĠĠĠĠĠĠĠĠĠ Ġ. setName (" test ") ĊĠĠĠĠĠĠĠĠĠ Ġ. add Datasets ( dataset ) ĊĠĠĠĠĠĠĠĠĠ Ġ. build () ĊĊĠĠĠĠĠ Ġ// Ġact ĊĠĠĠĠĠ Ġproto Context . entity Message Service . merge ( customer ) ĊĊĠĠĠĠĠ Ġ// Ġassert ĊĠĠĠĠĠ Ġval Ġall Customers Ġ= Ġproto Context . entity Message Service . get Many ( Nested Enum Test . Customer . getDefaultInstance ()) ĊĠĠĠĠĠ ĠAssert . assertTrue ( all Customers . size Ġ== Ġ 1 ) ĊĠĠĠ Ġ} Ġfinally Ġ{ ĊĠĠĠĠĠ Ġentity Service . close () ĊĠĠĠĠĠ Ġcleanup ?. build () ĊĠĠĠ Ġ} ĊĠ Ġ} ĊĊĠ Ġfun Ġsimple Pass Through Test 2 ( entity Service : ĠI Entity Service , Ġcleanup : ĠI Builder < Boolean >? Ġ= Ġnull ) Ġ{ ĊĠĠĠ Ġ// Ġarrange ĊĠĠĠ Ġtry Ġ{ ĊĠĠĠĠĠ Ġval Ġproto Context Ġ= ĠEntity Proto Context ( ĊĠĠĠĠĠĠĠĠĠ ĠComplex Model . get Descriptor (), ĊĠĠĠĠĠĠĠĠĠ Ġentity Service , ĊĠĠĠĠĠĠĠĠĠ ĠHashMap (), ĊĠĠĠĠĠĠĠĠĠ ĠTest Base 6 4 Service ()) ĊĊĠĠĠĠĠ Ġproto Context . handle Migrations () ĊĊĠĠĠĠĠ Ġval Ġfirst File Ġ= ĠComplex Model . Mapped File . newBuilder () ĊĠĠĠĠĠĠĠĠĠ Ġ. setId ( UUID . randomUUID (). toString ()) ĊĠĠĠĠĠĠĠĠĠ Ġ. setName (" first ") ĊĊĠĠĠĠĠ Ġval Ġsecond File Ġ= ĠComplex Model . Mapped File . newBuilder () ĊĠĠĠĠĠĠĠĠĠ Ġ. setId ( UUID . randomUUID (). toString ()) ĊĠĠĠĠĠĠĠĠĠ Ġ. setName (" second ") ĊĠĠĠĠĠĠĠĠĠ Ġ. setParent ( first File ) ĊĊĠĠĠĠĠ Ġfirst File . add Children ( second File ) ĊĊĠĠĠĠĠ Ġval Ġthird File Ġ= ĠComplex Model . Mapped File . newBuilder () ĊĠĠĠĠĠĠĠĠĠ Ġ. setId ( UUID . randomUUID (). toString ()) ĊĠĠĠĠĠĠĠĠĠ Ġ. setName (" third ") ĊĠĠĠĠĠĠĠĠĠ Ġ. setParent ( second File ) ĊĊĠĠĠĠĠ Ġsecond File . add Children ( third File ) ĊĊĠĠĠĠĠ Ġ// Ġact ĊĠĠĠĠĠ Ġproto Context . entity Message Service . merge ( first File . build ()) ĊĊĠĠĠĠĠ Ġ// Ġassert ĊĠĠĠĠĠ Ġassert ( true ) ĊĠĠĠ Ġ} Ġfinally Ġ{ ĊĠĠĠĠĠ Ġentity Service . close () ĊĠĠĠĠĠ Ġcleanup ?. build () ĊĠĠĠ Ġ} ĊĠ Ġ} ĊĊĠ Ġfun Ġsimple Tables Test ( entity Service : ĠI Entity Service , Ġcleanup : ĠI Builder < Boolean >? Ġ= Ġnull , Ġschema Name : ĠString ) Ġ{ ĊĠĠĠ Ġ// Ġarrange ĊĠĠĠ Ġtry Ġ{ ĊĠĠĠĠĠ Ġval Ġproto Context Ġ= ĠEntity Proto Context ( ĊĠĠĠĠĠĠĠĠĠ ĠComplex Model . get Descriptor (), ĊĠĠĠĠĠĠĠĠĠ Ġentity Service , ĊĠĠĠĠĠĠĠĠĠ ĠHashMap (), ĊĠĠĠĠĠĠĠĠĠ ĠTest Base 6 4 Service ()) ĊĊĠĠĠĠĠ Ġproto Context . handle Migrations () ĊĊĠĠĠĠĠ Ġval Ġfirst File Ġ= ĠComplex Model . Mapped File . newBuilder () ĊĠĠĠĠĠĠĠĠĠ Ġ. setId ( UUID . randomUUID (). toString ()) ĊĠĠĠĠĠĠĠĠĠ Ġ. setName (" first ") ĊĊĠĠĠĠĠ Ġval Ġsecond File Ġ= ĠComplex Model . Mapped File . newBuilder () ĊĠĠĠĠĠĠĠĠĠ Ġ. setId ( UUID . randomUUID (). toString ()) ĊĠĠĠĠĠĠĠĠĠ Ġ. setName (" second ") ĊĠĠĠĠĠĠĠĠĠ Ġ. setParent ( first File ) ĊĊĠĠĠĠĠ Ġfirst File . add Children ( second File ) ĊĊĠĠĠĠĠ Ġval Ġthird File Ġ= ĠComplex Model . Mapped File . newBuilder () ĊĠĠĠĠĠĠĠĠĠ Ġ. setId ( UUID . randomUUID (). toString ()) ĊĠĠĠĠĠĠĠĠĠ Ġ. setName (" third ") ĊĠĠĠĠĠĠĠĠĠ Ġ. setParent ( second File ) ĊĊĠĠĠĠĠ Ġsecond File . add Children ( third File ) ĊĠĠĠĠĠ Ġproto Context . entity Message Service . merge ( first File . build ()) ĊĊĠĠĠĠĠ Ġ// Ġact ĊĠĠĠĠĠ Ġval Ġtable Names Ġ= Ġentity Service . getTable Names ( schema Name ) ĊĊĠĠĠĠĠ Ġ// Ġassert ĊĠĠĠĠĠ Ġprintln ( table Names ) ĊĠĠĠĠĠ Ġassert ( table Names . size Ġ> Ġ 1 ) ĊĠĠĠ Ġ} Ġfinally Ġ{ ĊĠĠĠĠĠ Ġentity Service . close () ĊĠĠĠĠĠ Ġcleanup ?. build () ĊĠĠĠ Ġ} ĊĠ Ġ} ĊĊĠ Ġfun Ġsimple Table Definition Test ( entity Service : ĠI Entity Service , Ġcleanup : ĠI Builder < Boolean >? Ġ= Ġnull , Ġschema : ĠString ) Ġ{ ĊĠĠĠ Ġ// Ġarrange ĊĠĠĠ Ġtry Ġ{ ĊĠĠĠĠĠ Ġval Ġproto Context Ġ= ĠEntity Proto Context ( ĊĠĠĠĠĠĠĠĠĠ ĠComplex Model . get Descriptor (), ĊĠĠĠĠĠĠĠĠĠ Ġentity Service , ĊĠĠĠĠĠĠĠĠĠ ĠHashMap (), ĊĠĠĠĠĠĠĠĠĠ ĠTest Base 6 4 Service ()) ĊĊĠĠĠĠĠ Ġproto Context . handle Migrations () ĊĊĠĠĠĠĠ Ġval Ġfirst File Ġ= ĠComplex Model . Mapped File . newBuilder () ĊĠĠĠĠĠĠĠĠĠ Ġ. setId ( UUID . randomUUID (). toString ()) ĊĠĠĠĠĠĠĠĠĠ Ġ. setName (" first ") ĊĊĠĠĠĠĠ Ġval Ġsecond File Ġ= ĠComplex Model . Mapped File . newBuilder () ĊĠĠĠĠĠĠĠĠĠ Ġ. setId ( UUID . randomUUID (). toString ()) ĊĠĠĠĠĠĠĠĠĠ Ġ. setName (" second ") ĊĠĠĠĠĠĠĠĠĠ Ġ. setParent ( first File ) ĊĊĠĠĠĠĠ Ġfirst File . add Children ( second File ) ĊĊĠĠĠĠĠ Ġval Ġthird File Ġ= ĠComplex Model . Mapped File . newBuilder () ĊĠĠĠĠĠĠĠĠĠ Ġ. setId ( UUID . randomUUID (). toString ()) ĊĠĠĠĠĠĠĠĠĠ Ġ. setName (" third ") ĊĠĠĠĠĠĠĠĠĠ Ġ. setParent ( second File ) ĊĊĠĠĠĠĠ Ġsecond File . add Children ( third File ) ĊĠĠĠĠĠ Ġproto Context . entity Message Service . merge ( first File . build ()) ĊĊĠĠĠĠĠ Ġ// Ġact ĊĠĠĠĠĠ Ġval Ġtable Definition Ġ= Ġentity Service . getTable Definition ( schema , ĠComplex Model . Answer . get Descriptor (). name ) ĊĊĠĠĠĠĠ Ġ// Ġassert ĊĠĠĠĠĠ Ġprintln ( table Definition ) ĊĠĠĠĠĠ Ġassert ( table Definition . column Definitions Count Ġ> Ġ 0 ) ĊĠĠĠ Ġ} Ġfinally Ġ{ ĊĠĠĠĠĠ Ġentity Service . close () ĊĠĠĠĠĠ Ġcleanup ?. build () ĊĠĠĠ Ġ} ĊĠ Ġ} ĊĊĠ Ġfun Ġsimple Table Definition Nullable Test ( entity Service : ĠI Entity Service , Ġcleanup : ĠI Builder < Boolean >? Ġ= Ġnull , Ġschema : ĠString ) Ġ{ ĊĠĠĠ Ġ// Ġarrange ĊĠĠĠ Ġtry Ġ{ ĊĠĠĠĠĠ Ġval Ġproto Context Ġ= ĠEntity Proto Context ( ĊĠĠĠĠĠĠĠĠĠ ĠComplex Model . get Descriptor (), ĊĠĠĠĠĠĠĠĠĠ Ġentity Service , ĊĠĠĠĠĠĠĠĠĠ ĠHashMap (), ĊĠĠĠĠĠĠĠĠĠ ĠTest Base 6 4 Service ()) ĊĊĠĠĠĠĠ Ġproto Context . handle Migrations () ĊĊĠĠĠĠĠ Ġval Ġfirst File Ġ= ĠComplex Model . Mapped File . newBuilder () ĊĠĠĠĠĠĠĠĠĠ Ġ. setId ( UUID . randomUUID (). toString ()) ĊĠĠĠĠĠĠĠĠĠ Ġ. setName (" first ") ĊĊĠĠĠĠĠ Ġval Ġsecond File Ġ= ĠComplex Model . Mapped File . newBuilder () ĊĠĠĠĠĠĠĠĠĠ Ġ. setId ( UUID . randomUUID (). toString ()) ĊĠĠĠĠĠĠĠĠĠ Ġ. setName (" second ") ĊĠĠĠĠĠĠĠĠĠ Ġ. setParent ( first File ) ĊĊĠĠĠĠĠ Ġfirst File . add Children ( second File ) ĊĊĠĠĠĠĠ Ġval Ġthird File Ġ= ĠComplex Model . Mapped File . newBuilder () ĊĠĠĠĠĠĠĠĠĠ Ġ. setId ( UUID . randomUUID (). toString ()) ĊĠĠĠĠĠĠĠĠĠ Ġ. setName (" third ") ĊĠĠĠĠĠĠĠĠĠ Ġ. setParent ( second File ) ĊĊĠĠĠĠĠ Ġsecond File . add Children ( third File ) ĊĠĠĠĠĠ Ġproto Context . entity Message Service . merge ( first File . build ()) ĊĊĠĠĠĠĠ Ġ// Ġact ĊĠĠĠĠĠ Ġval Ġtable Definition Ġ= Ġentity Service . getTable Definition ( schema , ĠComplex Model . Answer . get Descriptor (). name ) ĊĊĠĠĠĠĠ Ġ// Ġassert ĊĠĠĠĠĠ Ġprintln ( table Definition ) ĊĠĠĠĠĠ Ġassert ( table Definition . column Definitions Count Ġ> Ġ 0 ) ĊĠĠĠ Ġ} Ġfinally Ġ{ ĊĠĠĠĠĠ Ġentity Service . close () ĊĠĠĠĠĠ Ġcleanup ?. build () ĊĠĠĠ Ġ} ĊĠ Ġ} Ċ }