package dom.mesa;

import java.util.List;

import javax.jdo.annotations.IdentityType;

import org.apache.isis.applib.AbstractDomainObject;
import org.apache.isis.applib.DomainObjectContainer;
import org.apache.isis.applib.annotation.Bulk;
import org.apache.isis.applib.annotation.MemberOrder;
import org.apache.isis.applib.annotation.Named;

@javax.jdo.annotations.PersistenceCapable(identityType = IdentityType.DATASTORE)
public class Mesa extends AbstractDomainObject {

	// {{ numeroMesa (property)
	private int numeroMesa;

	@javax.jdo.annotations.Column(allowsNull = "false")
	@MemberOrder(sequence = "1")
	public int getNumeroMesa() {
		return numeroMesa;
	}

	public void setNumeroMesa(final int numeroMesa) {
		this.numeroMesa = numeroMesa;
	}

	// {{ CapacidadMesa (property)
	private int capacidadMesa;

	@javax.jdo.annotations.Column(allowsNull = "false")
	@MemberOrder(sequence = "")
	public int getCapacidadMesa() {
		return capacidadMesa;
	}

	public void setCapacidadMesa(final int capacidadMesa) {
		this.capacidadMesa = capacidadMesa;
	}

	// {{ EstadoMesa (property)
	private Estado estadoMesa;

	@javax.jdo.annotations.Column(allowsNull = "false")
	@MemberOrder(sequence = "1")
	public Estado getEstadoMesa() {
		return estadoMesa;
	}

	public void setEstadoMesa(final Estado estadoMesa) {
		this.estadoMesa = estadoMesa;
	}
	// }}
	@Named("Borrar")
    @Bulk
    @MemberOrder(name="accionMesa", sequence = "1")
    public List<Mesa> borrar() {
    	
    	contenedor.removeIfNotAlready(this);
    	
    	return mesaServicio.listarMesas();
    }
	
    //{{ injected: DomainObjectContainer
    private DomainObjectContainer contenedor;

    public void injectDomainObjectContainer(final DomainObjectContainer container) {
        this.setContainer(container);
    }

	public DomainObjectContainer getContainer() {
		return contenedor;
	}

	public void setContainer(DomainObjectContainer container) {
		this.contenedor = container;
	}
	
	/*
	 * Inyección del servicio
	 */
	
	private MesaServicio mesaServicio;
	
	public void injectarMesaServicio(final MesaServicio serviciomesa) {
        this.mesaServicio = serviciomesa;
    }
}

@@ -16,32 +16,8 @@
 a;%0A%0A
-import java.util.List;%0A%0A
 impo
@@ -55,16 +55,16 @@
 tyType;%0A
+
 %0Aimport 
@@ -165,55 +165,8 @@
 er;%0A
-import org.apache.isis.applib.annotation.Bulk;%0A
 impo
@@ -218,56 +218,8 @@
 der;
-%0Aimport org.apache.isis.applib.annotation.Named;
 %0A%0A@j
@@ -1229,801 +1229,7 @@
  %7D%7D%0A
-%09@Named(%22Borrar%22)%0A    @Bulk%0A    @MemberOrder(name=%22accionMesa%22, sequence = %221%22)%0A    public List%3CMesa%3E borrar() %7B%0A    %09%0A    %09contenedor.removeIfNotAlready(this);%0A    %09%0A    %09return mesaServicio.listarMesas();%0A    %7D%0A%09%0A    //%7B%7B injected: DomainObjectContainer%0A    private DomainObjectContainer contenedor;%0A%0A    public void injectDomainObjectContainer(final DomainObjectContainer container) %7B%0A        this.setContainer(container);%0A    %7D%0A%0A%09public DomainObjectContainer getContainer() %7B%0A%09%09return contenedor;%0A%09%7D%0A%0A%09public void setContainer(DomainObjectContainer container) %7B%0A%09%09this.contenedor = container;%0A%09%7D%0A%09%0A%09/*%0A%09 * Inyecci%C3%B3n del servicio%0A%09 */%0A%09%0A%09private MesaServicio mesaServicio;%0A%09%0A%09public void injectarMesaServicio(final MesaServicio serviciomesa) %7B%0A        this.mesaServicio = serviciomesa;%0A    %7D
 %0A%7D%0A

Revert "añadir la funcionalidad borrar mesa"