Advertisement
Guest User

Untitled

a guest
Mar 21st, 2018
55
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.34 KB | None | 0 0
  1. [comment encoding = UTF-8 /]
  2. [module generate('http://www.eclipse.org/uml2/5.0.0/UML')/]
  3.  
  4. [import org::eclipse::acceleo::module::sample::services::uml2services /]
  5.  
  6. [template public generate(aClass : Class)]
  7.  
  8.  
  9.  
  10. [file (aClass.classFileName(),false)]
  11. package [aClass.containingPackages().name->sep('.')/]
  12.  
  13. //[protected ('imports')]
  14. // [/protected]
  15.  
  16. public class [aClass.name.toUpperFirst()/] {
  17. [for (p: Property | aClass.attribute) separator('\n')]
  18. private [p.type.name/] [p.name/];
  19. [/for]
  20.  
  21. [for (p: Property | aClass.attribute) separator('\n')]
  22. public [p.type.name/] get[p.name.toUpperFirst()/]() {
  23. return this.[p.name/];
  24. }
  25. [/for]
  26.  
  27. [for (o: Operation | aClass.ownedOperation) separator('\n')]
  28. public [o.type.name/] [o.name/]() {
  29. //[protected (o.name)]
  30. // TODO should be implemented
  31. //[/protected]
  32. }
  33. [/for]
  34. }
  35. [/file]
  36.  
  37. [/template]
  38.  
  39. [query public classFileName(aClass : Class) : String =
  40. aClass.qualifiedName().replaceAll('\\.', '/').concat('.java')
  41. /]
  42. [query public qualifiedName(aClass : Class) : String =
  43. aClass.containingPackages().name->sep('.')->including('.')->including(aClass.name)->toString()
  44. /]
  45. [query public containingPackages(aClass : Class) : Sequence(Package) =
  46. aClass.ancestors(Package)->reject(oclIsKindOf(Model))->reverse()
  47. /]
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement