// Path: src/main/java/com/bitfiction/mvctemplate/ejb/BaseEntityService.java
// @Local
// public interface BaseEntityService {
// 	
// 	public BaseEntity findById(String id);
// 	
// 	public List<BaseEntity> view();
// 	
// 	public List<BaseEntity> update(List<BaseEntity> baseEntities);
// 
// }
// 
// Path: src/main/java/com/bitfiction/mvctemplate/model/BaseEntity.java
// @Entity
// @Table(name = "BaseEntity")
// @SequenceGenerator(name="seqBaseEntity", initialValue=10, allocationSize=100)
// public class BaseEntity {
//      
//    // Avoid org.hibernate.InstantiationException: No default constructor for entity	
//    public BaseEntity() {
// 	   super();
//    }
//    
//    public BaseEntity(
// 		   OneToOneEntity oneToOneEntity, 
// 		   OneToOneEntityEditableByAdmin OneToOneEntityEditableByAdmin) {
// 		this(oneToOneEntity, OneToOneEntityEditableByAdmin, null);
//    }
// 	
//    public BaseEntity(
// 		   OneToOneEntity oneToOneEntity, 
// 		   OneToOneEntityEditableByAdmin OneToOneEntityEditableByAdmin, 
// 		   Set<OneToManyEntity> oneToManyEntities) {
// 		super();
// 		this.oneToOneEntity = oneToOneEntity;
// 		this.OneToOneEntityEditableByAdmin = OneToOneEntityEditableByAdmin;
// 		this.oneToManyEntities = oneToManyEntities;
//    }
//    
//    @Id
//    @GeneratedValue(strategy=GenerationType.SEQUENCE, generator="seqBaseEntity")
//    @Column(name="id")
//    private Long id;
//    
//    @OneToOne(fetch=FetchType.EAGER, optional=true)
//    @JoinColumn(name="oneToOneEntityId", referencedColumnName="id")
//    private OneToOneEntity oneToOneEntity;
//    
//    @OneToOne(fetch=FetchType.EAGER, optional=true)
//    @JoinColumn(name="oneToOneEntityEditableByAdminId", referencedColumnName="id")
//    private OneToOneEntityEditableByAdmin OneToOneEntityEditableByAdmin;
//    
//    @JsonIgnore
//    @OneToMany(mappedBy="baseEntity", fetch=FetchType.LAZY)
//    private Set<OneToManyEntity> oneToManyEntities = new HashSet<OneToManyEntity>();
// 	
//     public Long getId() {
// 		return id;
// 	}
// 	
// 	public void setId(Long id) {
// 		this.id = id;
// 	}
// 
// 	public OneToOneEntity getOneToOneEntity() {
// 		return oneToOneEntity;
// 	}
// 
// 	public void setOneToOneEntity(OneToOneEntity oneToOneEntity) {
// 		this.oneToOneEntity = oneToOneEntity;
// 	}
// 
// 	public OneToOneEntityEditableByAdmin getOneToOneEntityEditableByAdmin() {
// 		return OneToOneEntityEditableByAdmin;
// 	}
// 
// 	public void setOneToOneEntityEditableByAdmin(
// 			OneToOneEntityEditableByAdmin OneToOneEntityEditableByAdmin) {
// 		this.OneToOneEntityEditableByAdmin = OneToOneEntityEditableByAdmin;
// 	}
// 
// 	public Set<OneToManyEntity> getOneToManyEntities() {
// 		return oneToManyEntities;
// 	}
// 
// 	public void setOneToManyEntities(Set<OneToManyEntity> oneToManyEntities) {
// 		this.oneToManyEntities = oneToManyEntities;
// 	}
//    
// 
// }


import java.util.ArrayList;
import java.util.List;
import java.util.logging.Logger;
import javax.annotation.security.RolesAllowed;
import javax.ejb.Stateless;
import javax.inject.Inject;
import javax.persistence.EntityManager;
import org.jboss.ejb3.annotation.SecurityDomain;
import com.bitfiction.mvctemplate.ejb.BaseEntityService;
import com.bitfiction.mvctemplate.model.BaseEntity;
package com.bitfiction.mvctemplate.ejb.impl;





@Stateless
@RolesAllowed({ "user" })
@SecurityDomain("ExtjsMVCTemplateRealm")
public class BaseEntityServiceImpl implements BaseEntityService {

	@Inject
	private EntityManager em;
	
	@Inject
	private Logger log;
	
// Path: src/main/java/com/bitfiction/mvctemplate/ejb/BaseEntityService.java
// @Local
// public interface BaseEntityService {
// 	
// 	public BaseEntity findById(String id);
// 	
// 	public List<BaseEntity> view();
// 	
// 	public List<BaseEntity> update(List<BaseEntity> baseEntities);
// 
// }
// 
// Path: src/main/java/com/bitfiction/mvctemplate/model/BaseEntity.java
// @Entity
// @Table(name = "BaseEntity")
// @SequenceGenerator(name="seqBaseEntity", initialValue=10, allocationSize=100)
// public class BaseEntity {
//      
//    // Avoid org.hibernate.InstantiationException: No default constructor for entity	
//    public BaseEntity() {
// 	   super();
//    }
//    
//    public BaseEntity(
// 		   OneToOneEntity oneToOneEntity, 
// 		   OneToOneEntityEditableByAdmin OneToOneEntityEditableByAdmin) {
// 		this(oneToOneEntity, OneToOneEntityEditableByAdmin, null);
//    }
// 	
//    public BaseEntity(
// 		   OneToOneEntity oneToOneEntity, 
// 		   OneToOneEntityEditableByAdmin OneToOneEntityEditableByAdmin, 
// 		   Set<OneToManyEntity> oneToManyEntities) {
// 		super();
// 		this.oneToOneEntity = oneToOneEntity;
// 		this.OneToOneEntityEditableByAdmin = OneToOneEntityEditableByAdmin;
// 		this.oneToManyEntities = oneToManyEntities;
//    }
//    
//    @Id
//    @GeneratedValue(strategy=GenerationType.SEQUENCE, generator="seqBaseEntity")
//    @Column(name="id")
//    private Long id;
//    
//    @OneToOne(fetch=FetchType.EAGER, optional=true)
//    @JoinColumn(name="oneToOneEntityId", referencedColumnName="id")
//    private OneToOneEntity oneToOneEntity;
//    
//    @OneToOne(fetch=FetchType.EAGER, optional=true)
//    @JoinColumn(name="oneToOneEntityEditableByAdminId", referencedColumnName="id")
//    private OneToOneEntityEditableByAdmin OneToOneEntityEditableByAdmin;
//    
//    @JsonIgnore
//    @OneToMany(mappedBy="baseEntity", fetch=FetchType.LAZY)
//    private Set<OneToManyEntity> oneToManyEntities = new HashSet<OneToManyEntity>();
// 	
//     public Long getId() {
// 		return id;
// 	}
// 	
// 	public void setId(Long id) {
// 		this.id = id;
// 	}
// 
// 	public OneToOneEntity getOneToOneEntity() {
// 		return oneToOneEntity;
// 	}
// 
// 	public void setOneToOneEntity(OneToOneEntity oneToOneEntity) {
// 		this.oneToOneEntity = oneToOneEntity;
// 	}
// 
// 	public OneToOneEntityEditableByAdmin getOneToOneEntityEditableByAdmin() {
// 		return OneToOneEntityEditableByAdmin;
// 	}
// 
// 	public void setOneToOneEntityEditableByAdmin(
// 			OneToOneEntityEditableByAdmin OneToOneEntityEditableByAdmin) {
// 		this.OneToOneEntityEditableByAdmin = OneToOneEntityEditableByAdmin;
// 	}
// 
// 	public Set<OneToManyEntity> getOneToManyEntities() {
// 		return oneToManyEntities;
// 	}
// 
// 	public void setOneToManyEntities(Set<OneToManyEntity> oneToManyEntities) {
// 		this.oneToManyEntities = oneToManyEntities;
// 	}
//    
// 
// }


// Path: src/main/java/com/bitfiction/mvctemplate/ejb/impl/BaseEntityServiceImpl.java
import java.util.ArrayList;
import java.util.List;
import java.util.logging.Logger;
import javax.annotation.security.RolesAllowed;
import javax.ejb.Stateless;
import javax.inject.Inject;
import javax.persistence.EntityManager;
import org.jboss.ejb3.annotation.SecurityDomain;
import com.bitfiction.mvctemplate.ejb.BaseEntityService;
import com.bitfiction.mvctemplate.model.BaseEntity;

package com.bitfiction.mvctemplate.ejb.impl;





@Stateless
@RolesAllowed({ "user" })
@SecurityDomain("ExtjsMVCTemplateRealm")
public class BaseEntityServiceImpl implements BaseEntityService {

	@Inject
	private EntityManager em;
	
	@Inject
	private Logger log;
	
	private static final String SELECT_BY_ID = "select entity from BaseEntity entity where entity.id = :id";