
/**
 * ELLECTRA-WeB
 * UML_2_EJB3.0: Main transformation
 * Authors: Gøran K.Olsen, SINTEF ICT
 *          
 */

import "JEE_EntityGenerator.m2t"
import "JEE_WebServiceGenerator.m2t"
import "JEE_StatelessGenerator.m2t"
import "JEE_GenerateGUI.m2t"
import "JEE_Security_Time_Stamp_Generator.m2t"
import "JEE_Security_File_Date_Utils_Generator.m2t"
import "JEE_Security_Crypto_Generator.m2t"
import "JEE_Security_KeyManager_Generator.m2t"
import "JEE_Security_SendEmail_Generator.m2t"
import "JEE_OJEU_Generator.m2t"
import "ePP_ReadSettings.m2t"
import "ServerSideANTScript.m2t"
texttransformation eppMainGenerator(in uml:"http://www.eclipse.org/uml2/2.1.0/UML",
								    in ref:"http://www.eclipse.org/uml2/2.1.0/UML" ){  
  
  uml.Model::main(){
  	stdout.println("## Generating ePP Solution from model: " + self.name)
  	self.generateDeployment_configuration()
  	self.GenerateAntScript()
  	
  	stdout.println("## ## Generating Persistence Layer from model: " + self.name)
	self.generateJEE_Persistency()
	
	stdout.println("## ## Generating Web Service Layer from model: " + self.name)
	self.generateJEE_StatelessBean ()
	
	stdout.println("## ## Generating Security Layer from model: " + self.name)
	self.generateJEE_Security_TimeStamp()
	self.generateJEE_Security_Utils_ws()
	self.generateJEE_Security_Crypto()
	self.generateJEE_Security_KeyManager()
	self.generateJEE_Security_SendEmail()

	
	stdout.println("## ## Generating OJEU Web Service from model: " + self.name)
	self.generateJEE_OJEU()
	
	stdout.println("## Generating ePP Solution Finished ")
	
  }
  
}

