package br.com.caelum.example.controller;
import java.util.List;
import br.com.caelum.example.model.Item;
import br.com.caelum.example.model.Payment;
import br.com.caelum.example.model.Payment.Status;
import br.com.caelum.vraptor.restfulie.hypermedia.HypermediaResource;
import br.com.caelum.vraptor.restfulie.relation.RelationBuilder;
public class Basket implements HypermediaResource {
private long id;
private List<Item> items;
private Payment payment;
public long getId() {
return id;
}
public List<Item> getItems() {
return items;
}
public Payment getPayment() {
return payment;
}
@Override
public void configureRelations(RelationBuilder builder) {
builder.relation("self").uses(BasketsController.class).show(id);
builder.relation("payment").uses(PaymentsController.class).create(id, null);
}
public void pay(Payment payment) {
this.payment = payment;
payment.setStatus(Status.ACCEPTED);
}
public void setId(Long id) {
this.id = id;
}
}