Java tutorial
/* Copyright 2013-2015 Fabian Steeg, hbz. Licensed under the Eclipse Public License 1.0 */ package controllers; import models.Index; import models.Parameter; import play.libs.F.Promise; import play.mvc.Controller; import play.mvc.Result; import com.google.common.collect.ImmutableMap; /** * Path controller. Implements path-style routes and `about` redirects. * * @author Fabian Steeg (fsteeg) */ public final class Path extends Controller { private Path() { /* No instantiation */ } /** * Redirect to * {@link #resourceAbout(String, String, String, String, String, String, int, int)} */ @SuppressWarnings("javadoc") public static Result resource(final String id, final String format, final int from, final int size) { return redirect(routes.Path.resourceAbout(id, format, from, size)); } /** * Return * {@link Api#resource(String, String, String, String, String, String, int, int)} */ @SuppressWarnings("javadoc") public static Promise<Result> resourceAbout(final String id, final String format, final int from, final int size) { return Application.search(Index.LOBID_RESOURCES, ImmutableMap.of(Parameter.ID, id), format, from, size, "", "", "", "", false, ""); } /** Redirect to {@link #itemAbout(String, String, String, int, int)} */ @SuppressWarnings("javadoc") public static Result item(final String id, final String format, final int from, final int size) { return redirect(routes.Path.itemAbout(id, format, from, size)); } /** Return {@link Api#item(String, String, String, int, int)} */ @SuppressWarnings("javadoc") public static Promise<Result> itemAbout(final String id, final String format, final int from, final int size) { return Api.item(id, "", "", format, from, size, "", false); } /** * Redirect to {@link #organisationAbout(String, String, String, int, int)} */ @SuppressWarnings("javadoc") public static Result organisation(final String id, final String format, final int from, final int size) { return redirect(routes.Path.organisationAbout(id, format, from, size)); } /** Return {@link Api#organisation(String, String, String, int, int)} */ @SuppressWarnings("javadoc") public static Promise<Result> organisationAbout(final String id, final String format, final int from, final int size) { return Api.organisation(id, "", "", format, from, size, "", false); } /** Redirect to {@link #personAbout(String, String, String, int, int)} */ @SuppressWarnings("javadoc") public static Result person(final String id, final String format, final int from, final int size, final String type) { return redirect(routes.Path.personAbout(id, format, from, size, type)); } /** Return {@link Api#person(String, String, String, int, int)} */ @SuppressWarnings("javadoc") public static Promise<Result> personAbout(final String id, final String format, final int from, final int size, final String type) { return Api.person(id, "", "", format, from, size, type, false); } }