apacheisis

How do you do to do the same but for many parameters, like for example name, lastname, date of birth, etc (only class parameters) in apache isis?


I´m trying to get the default values of a class so as to update that class. I achieved it for one single parameter, but I couldn´t do so for more than one parameter at the same time. What do I have to do in that case?

Example with single attribute:

@action(...)
public Modelo UpdateNombre(

    @Parameter(...)
    @ParameterLayout(...)
    final String nombre){

    setNombre(nombre);
    return this;

}

public String defaul0UpdateNombre() {return getNombre();}

Example with multiple attribute:

@action(...)
public Modelo UpdateModelo(

    @Parameter(...)
    @ParameterLayout(...)
    final String nombre,

    @Parameter(...)
    @ParameterLayout(...)
    final int cantidad,

    @Parameter(...)
    @ParameterLayout(...)
    final boolean baja){

    setNombre(nombre);
    setCantidad(cantidad);
    setBaja(baja);
    return this;

}

public Modelo defaul0UpdateModelo() {

    Modelo modelo;
    modelo.nombre = getNombre();
    modelo.cantidad = getCantidad();
    modelo.baja = getBaja();

    return modelo;

}

Solution

  • The syntax is default{N}Xxx() were N=0,1,2

    Therefore:

    @Action(...)
    public Modelo updateModelo(
    
        @Parameter(...)
        @ParameterLayout(...)
        final String nombre,
    
        @Parameter(...)
        @ParameterLayout(...)
        final int cantidad,
    
        @Parameter(...)
        @ParameterLayout(...)
        final boolean baja){
    
        setNombre(nombre);
        setCantidad(cantidad);
        setBaja(baja);
        return this;
    
    }
    
    public Modelo default0UpdateModelo() {
    
        Modelo modelo;
        modelo.nombre = getNombre();
        modelo.cantidad = getCantidad();
        modelo.baja = getBaja();
    
        return modelo;
    
    }