Skip to content

Commit

Permalink
#64: Moves additional methods into the corresponding helper class
Browse files Browse the repository at this point in the history
  • Loading branch information
tjuerge committed Apr 5, 2015
1 parent 990c48b commit 1e159f5
Show file tree
Hide file tree
Showing 2 changed files with 30 additions and 23 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -69,7 +69,6 @@ import sculptormetamodel.Event
import sculptormetamodel.InheritanceType
import sculptormetamodel.NamedElement
import sculptormetamodel.Repository
import sculptormetamodel.Resource
import sculptormetamodel.SculptormetamodelFactory
import sculptormetamodel.Service
import sculptormetamodel.Trait
Expand Down Expand Up @@ -712,31 +711,11 @@ class DslTransformation {
}

def void scaffold(DslDomainObject domainObject) {
domainObject.transformSimpleDomainObject.scaffold()
}

def void scaffold(DomainObject domainObject) {

// Scaffold repository
if (domainObject.repository == null)
domainObject.addRepository()
domainObject.repository.addRepositoryScaffoldOperations()

// Scaffold service
val serviceName = domainObject.name + "Service"
if (!domainObject.module.services.exists(s | s.name == serviceName))
domainObject.module.addService(serviceName)
domainObject.module.services.filter(s | s.name == serviceName).forEach[addServiceScaffoldOperations(domainObject.repository)]
domainObject.transformSimpleDomainObject.scaffold
}

def void scaffold(DslResource resource) {
resource.transform.scaffold()
}

def void scaffold(Resource resource) {
val serviceName = resource.getDomainResourceName() + "Service"
val delegateService = resource.module.application.modules.map[services].flatten.findFirst(e|e.name == serviceName)
resource.addResourceScaffoldOperations(delegateService)
resource.transform.scaffold
}

}
Original file line number Diff line number Diff line change
Expand Up @@ -30,11 +30,14 @@ import org.sculptor.dsl.sculptordsl.DslResource
import org.sculptor.dsl.sculptordsl.DslService
import org.sculptor.dsl.sculptordsl.DslVisibility
import org.sculptor.generator.chain.ChainOverridable
import org.sculptor.generator.ext.Helper
import org.sculptor.generator.ext.Properties
import org.sculptor.generator.util.GenericAccessObjectManager
import org.sculptor.generator.util.HelperBase
import org.sculptor.generator.util.PropertiesBase
import sculptormetamodel.DiscriminatorType
import sculptormetamodel.DomainObject
import sculptormetamodel.Resource

/**
* Overridable helper methods for transforming DSL meta model to generator meta model.
Expand All @@ -45,6 +48,7 @@ class DslTransformationHelper {
@Inject var GenericAccessObjectManager genericAccessObjectManager

@Inject extension HelperBase helperBase
@Inject extension Helper helper
@Inject extension PropertiesBase propertiesBase
@Inject extension Properties properties

Expand Down Expand Up @@ -189,4 +193,28 @@ class DslTransformationHelper {
handleBooleanAnnotation("valid", reference.valid, reference.validMessage, reference.validate)
}

def void scaffold(DomainObject domainObject) {
domainObject.scaffoldRepository
domainObject.scaffoldService
}

def void scaffoldRepository(DomainObject domainObject) {
if (domainObject.repository == null)
domainObject.addRepository
domainObject.repository.addRepositoryScaffoldOperations
}

def void scaffoldService(DomainObject domainObject) {
val serviceName = domainObject.name + "Service"
if (!domainObject.module.services.exists[s | s.name == serviceName])
domainObject.module.addService(serviceName)
domainObject.module.services.filter[s | s.name == serviceName].forEach[addServiceScaffoldOperations(domainObject.repository)]
}

def void scaffold(Resource resource) {
val serviceName = resource.domainResourceName + "Service"
val delegateService = resource.module.application.modules.map[services].flatten.findFirst(e|e.name == serviceName)
resource.addResourceScaffoldOperations(delegateService)
}

}

0 comments on commit 1e159f5

Please sign in to comment.