use of br.com.caelum.vraptor.Path in project agiletickets by caelum.
the class EspetaculosController method adiciona.
@Post
@Path("/espetaculos")
public void adiciona(Espetaculo espetaculo) {
// se nao tiver descricao, avisa o usuario
if (Strings.isNullOrEmpty(espetaculo.getNome())) {
validator.add(new ValidationMessage("Nome do espetáculo não pode estar em branco", ""));
}
if (Strings.isNullOrEmpty(espetaculo.getDescricao())) {
validator.add(new ValidationMessage("Descrição do espetáculo não pode estar em branco", ""));
}
validator.onErrorRedirectTo(this).lista();
agenda.cadastra(espetaculo);
result.redirectTo(this).lista();
}
use of br.com.caelum.vraptor.Path in project agiletickets by caelum.
the class EspetaculosController method cadastraSessoes.
@Post
@Path("/espetaculo/{espetaculoId}/sessoes")
public void cadastraSessoes(Long espetaculoId, LocalDate inicio, LocalDate fim, LocalTime horario, Periodicidade periodicidade) {
Espetaculo espetaculo = carregaEspetaculo(espetaculoId);
// aqui faz a magica!
// cria sessoes baseado no periodo de inicio e fim passados pelo usuario
List<Sessao> sessoes = espetaculo.criaSessoes(inicio, fim, horario, periodicidade);
agenda.agende(sessoes);
result.include("message", sessoes.size() + " sessões criadas com sucesso");
result.redirectTo(this).lista();
}
use of br.com.caelum.vraptor.Path in project restfulie-java by caelum.
the class ItemsController method list.
@Get
@Path("/items")
public void list() {
ConfigurableHypermediaResource resource = restfulie.enhance(database.lista());
resource.relation("basket").uses(BasketsController.class).create(null);
result.use(representation()).from(resource, "items").serialize();
}
use of br.com.caelum.vraptor.Path in project restfulie-java by caelum.
the class OrderingController method get.
@Get
@Path("/orders/{order.id}")
public void get(Order order) {
order = database.getOrder(order.getId());
if (order != null) {
Serializer serializer = result.use(representation()).from(order);
serializer.include("items").include("location");
serializer.include("payment").serialize();
} else {
status.notFound();
}
}
use of br.com.caelum.vraptor.Path in project restfulie-java by caelum.
the class OrderingController method add.
@Post
@Path("/orders")
@Consumes
public void add(Order order) {
int id = 0;
for (Item i : order.getItems()) {
i.use(order, ++id);
}
database.save(order);
routes.uriFor(OrderingController.class).get(order);
status.created(routes.getUri());
}
Aggregations