[jboss-cvs] jboss-seam/seam-gen/src ...

Gavin King gavin.king at jboss.com
Mon Nov 6 15:13:47 EST 2006


  User: gavin   
  Date: 06/11/06 15:13:47

  Added:       seam-gen/src            Action.java ActionBean.java
                        Conversation.java ConversationBean.java Entity.java
                        EntityHome.java EntityList.java FormAction.java
                        FormActionBean.java TestCase.java testng.xml
  Log:
  use ant replace instead of freemarker
  
  Revision  Changes    Path
  1.1      date: 2006/11/06 20:13:47;  author: gavin;  state: Exp;jboss-seam/seam-gen/src/Action.java
  
  Index: Action.java
  ===================================================================
  package @actionPackage@;
  
  import javax.ejb.Local;
  
  @Local
  public interface @interfaceName@ {  
      
  	//seam-gen method
  	public String @methodName@();  
  	
      //add additional interface methods here
  }
  
  
  1.1      date: 2006/11/06 20:13:47;  author: gavin;  state: Exp;jboss-seam/seam-gen/src/ActionBean.java
  
  Index: ActionBean.java
  ===================================================================
  package @actionPackage@;
  
  import javax.ejb.Stateless;
  import org.jboss.seam.annotations.Name;
  import org.jboss.seam.annotations.In;
  import org.jboss.seam.annotations.Logger;
  import org.jboss.seam.log.Log;
  import org.jboss.seam.core.FacesMessages;
  
  @Stateless
  @Name("@componentName@")
  public class @beanName@ implements @interfaceName@ {
  	
      @Logger private Log log;
  	
      @In(create=true) 
      FacesMessages facesMessages;
      
      //seam-gen method
  	public String @methodName@()
  	{
  		//implement your business logic here
  		log.info("@componentName at .@methodName@() action called");
  		facesMessages.add("@methodName@");
  		return "success";
  	}
  	
     //add additional action methods
  	
  }
  
  
  
  1.1      date: 2006/11/06 20:13:47;  author: gavin;  state: Exp;jboss-seam/seam-gen/src/Conversation.java
  
  Index: Conversation.java
  ===================================================================
  package @actionPackage@;
  
  import javax.ejb.Local;
  
  @Local
  public interface @interfaceName@ {  
  	
  	//seam-gen methods
  	public String begin();
  	public String increment();
  	public String end();
  	public int getValue();
  	public void destroy();
  	
     //add additional interface methods here	
  }
  
  
  1.1      date: 2006/11/06 20:13:47;  author: gavin;  state: Exp;jboss-seam/seam-gen/src/ConversationBean.java
  
  Index: ConversationBean.java
  ===================================================================
  package @actionPackage@;
  
  import javax.ejb.Remove;
  import javax.ejb.Stateful;
  import org.jboss.seam.annotations.Name;
  import org.jboss.seam.annotations.Begin;
  import org.jboss.seam.annotations.End;
  import org.jboss.seam.annotations.Destroy;
  import org.jboss.seam.annotations.Logger;
  import org.jboss.seam.log.Log;
  
  @Stateful
  @Name("@componentName@")
  public class @beanName@ implements @interfaceName@ {
  	
      @Logger private Log log;
      
      private int value;
  	
  	@Begin
  	public String begin()
  	{
  		//implement your begin conversation business logic
  		log.info("beginning conversation");
  		return "success";
  	}
  	
  	public String increment()
  	{
  		log.info("incrementing");
  		value++;
  		return "success";
  	}
  	
  	//add additional action methods that participate in this conversation
  	
  	@End
  	public String end()
  	{
          //implement your end conversation business logic
          log.info("ending conversation");
  		return "home";
  	}
  	
  	public int getValue()
  	{
  		return value;
  	}
  	
  	@Destroy @Remove                                                                      
  	public void destroy() {}	
  }
  
  
  
  1.1      date: 2006/11/06 20:13:47;  author: gavin;  state: Exp;jboss-seam/seam-gen/src/Entity.java
  
  Index: Entity.java
  ===================================================================
  package @modelPackage@;
  
  import java.io.Serializable;
  import javax.persistence.Entity;
  import javax.persistence.Id;
  import javax.persistence.GeneratedValue;
  import javax.persistence.Version;
  import org.hibernate.validator.Length;
  
  @Entity
  public class @entityName@ implements Serializable {
  	
  	//seam-gen attributes (you should probably edit these)
  	private Long id;
  	private Integer version;
  	private String name;
  	
      //add additional entity attributes
  	
  	//seam-gen attribute getters/setters with annotations (you probably should edit)
  		
  	@Id @GeneratedValue
  	public Long getId() {
  	     return id;
  	}
  
  	public void setId(Long id) {
  	     this.id = id;
  	}
  	
  	@Version
  	public Integer getVersion() {
  	     return version;
  	}
  
  	private void setVersion(Integer version) {
  	     this.version = version;
  	}   	
  	
  	@Length(max=20)
  	public String getName() {
  	     return name;
  	}
  
  	public void setName(String name) {
  	     this.name = name;
  	}   	
  }
  
  
  
  1.1      date: 2006/11/06 20:13:47;  author: gavin;  state: Exp;jboss-seam/seam-gen/src/EntityHome.java
  
  Index: EntityHome.java
  ===================================================================
  package @actionPackage@;
  
  import org.jboss.seam.annotations.Name;
  import org.jboss.seam.annotations.Begin;
  import org.jboss.seam.annotations.RequestParameter;
  import org.jboss.seam.framework.EntityHome;
  
  import @modelPackage at .@entityName@;
  
  @Name("@homeName@")
  public class @entityName at Home extends EntityHome<@entityName@>
  {
  
      @RequestParameter 
      Long @componentName at Id;
      
      @Override
      public Object getId() 
      { 
          if (@componentName at Id==null)
          {
              return super.getId();
          }
          else
          {
              return @componentName at Id;
          }
      }
      
      @Override @Begin
      public void create() {
          super.create();
      }
   	
  }
  
  
  
  1.1      date: 2006/11/06 20:13:47;  author: gavin;  state: Exp;jboss-seam/seam-gen/src/EntityList.java
  
  Index: EntityList.java
  ===================================================================
  package @actionPackage@;
  
  import org.jboss.seam.annotations.Name;
  import org.jboss.seam.framework.EntityQuery;
  
  @Name("@listName@")
  public class @entityName at List extends EntityQuery
  {
      @Override
      public String getEjbql() 
      { 
          return "select @componentName@ from @entityName@ @componentName@";
      }
  }
  
  
  
  1.1      date: 2006/11/06 20:13:47;  author: gavin;  state: Exp;jboss-seam/seam-gen/src/FormAction.java
  
  Index: FormAction.java
  ===================================================================
  package @actionPackage@;
  
  import javax.ejb.Local;
  
  @Local
  public interface @interfaceName@ {  
     
  	//seam-gen methods
  	public String @methodName@(); 
  	public String getValue();
  	public void setValue(String value);
  	public void destroy();
  	
     //add additional interface methods here
  }
  
  
  1.1      date: 2006/11/06 20:13:47;  author: gavin;  state: Exp;jboss-seam/seam-gen/src/FormActionBean.java
  
  Index: FormActionBean.java
  ===================================================================
  package @actionPackage@;
  
  import javax.ejb.Remove;
  import javax.ejb.Stateful;
  import org.jboss.seam.annotations.Name;
  import org.jboss.seam.annotations.In;
  import org.jboss.seam.annotations.Destroy;
  import org.jboss.seam.annotations.Logger;
  import org.jboss.seam.log.Log;
  import org.jboss.seam.core.FacesMessages;
  import org.hibernate.validator.Length;
  
  @Stateful 
  @Name("@componentName@")
  public class @beanName@ implements @interfaceName@ {
  
      @Logger private Log log;
      
      @In(create=true) 
      FacesMessages facesMessages;
      
      private String value;
  	
  	//seam-gen method
  	public String @methodName@()
  	{
  		//implement your business logic here
  		log.info("@componentName at .@methodName@() action called with: #0", value);
  		facesMessages.add( "@methodName@ #0", (Object) value );
  		return "success";
  	}
  	
  	//add additional action methods
  	
  	@Length(max=10)
  	public String getValue()
  	{
  		return value;
  	}
  	
  	public void setValue(String value)
  	{
  		this.value = value;
  	}
  	
  	@Destroy @Remove                                                                      
  	public void destroy() {}	
  }
  
  
  
  1.1      date: 2006/11/06 20:13:47;  author: gavin;  state: Exp;jboss-seam/seam-gen/src/TestCase.java
  
  Index: TestCase.java
  ===================================================================
  package @testPackage@;
  
  import org.testng.annotations.Test;
  import org.jboss.seam.mock.SeamTest;
  
  public class @interfaceName at Test extends SeamTest {
  
  	@Test
  	public void test() throws Exception {
  		new FacesRequest() {
  			@Override
  			protected void updateModelValues() throws Exception {				
  				//set form input to model attributes
  			}
  			@Override
  			protected void invokeApplication() {
  				//call action methods here
  				invokeMethod("#{@componentName at .@methodName@}");
  			}
  			@Override
  			protected void renderResponse() {
  				//check model attributes if needed
  			}
  		}.run();
  	}	
  }
  
  
  
  1.1      date: 2006/11/06 20:13:47;  author: gavin;  state: Exp;jboss-seam/seam-gen/src/testng.xml
  
  Index: testng.xml
  ===================================================================
  <!DOCTYPE suite SYSTEM "http://beust.com/testng/testng-1.0.dtd" >
  
  <suite name="@interfaceName@ Tests" verbose="2" parallel="false">
     <test name="@interfaceName@ Test">
       <classes>
         <class name="@testPackage at .@interfaceName at Test"/>       
       </classes>
     </test>	
  </suite>
  
  



More information about the jboss-cvs-commits mailing list