use of org.apache.tapestry5.http.Link in project tapestry-5 by apache.
the class TapestryIOCModule method setupStandardSymbolProviders.
/**
* <dl>
* <dt>SystemProperties</dt>
* <dd>Exposes JVM System properties as symbols (currently case-sensitive)</dd>
* <dt>EnvironmentVariables</dt>
* <dd>Exposes environment variables as symbols (adding a "env." prefix)</dd>
* <dt>ApplicationDefaults</dt>
* <dd>Values contributed to @{@link SymbolProvider} @{@link ApplicationDefaults}</dd>
* <dt>FactoryDefaults</dt>
* <dd>Values contributed to @{@link SymbolProvider} @{@link FactoryDefaults}</dd>
* </dl>
*/
@Contribute(SymbolSource.class)
public static void setupStandardSymbolProviders(OrderedConfiguration<SymbolProvider> configuration, @ApplicationDefaults SymbolProvider applicationDefaults, @FactoryDefaults SymbolProvider factoryDefaults) {
configuration.add("SystemProperties", new SystemPropertiesSymbolProvider(), "before:*");
configuration.add("EnvironmentVariables", new SystemEnvSymbolProvider());
configuration.add("ApplicationDefaults", applicationDefaults);
configuration.add("FactoryDefaults", factoryDefaults);
}
use of org.apache.tapestry5.http.Link in project tapestry-5 by apache.
the class TapestryIOCModule method setupObjectProviders.
/**
* <dl>
* <dt>AnnotationBasedContributions</dt>
* <dd>Empty placeholder used to separate annotation-based ObjectProvider contributions (which come before) from
* non-annotation based (such as ServiceOverride) which come after.</dd>
* <dt>Value</dt>
* <dd>Supports the {@link org.apache.tapestry5.ioc.annotations.Value} annotation</dd>
* <dt>Symbol</dt>
* <dd>Supports the {@link org.apache.tapestry5.ioc.annotations.Symbol} annotations</dd>
* <dt>Autobuild</dt>
* <dd>Supports the {@link org.apache.tapestry5.ioc.annotations.Autobuild} annotation</dd>
* <dt>ServiceOverride</dt>
* <dd>Allows simple service overrides via the {@link org.apache.tapestry5.ioc.services.ServiceOverride} service
* (and its configuration)
* </dl>
*/
@Contribute(MasterObjectProvider.class)
public static void setupObjectProviders(OrderedConfiguration<ObjectProvider> configuration, @Local final ServiceOverride serviceOverride) {
configuration.add("AnnotationBasedContributions", null);
configuration.addInstance("Value", ValueObjectProvider.class, before("AnnotationBasedContributions").build());
configuration.addInstance("Symbol", SymbolObjectProvider.class, before("AnnotationBasedContributions").build());
configuration.add("Autobuild", new AutobuildObjectProvider(), before("AnnotationBasedContributions").build());
ObjectProvider wrapper = new ObjectProvider() {
@Override
public <T> T provide(Class<T> objectType, AnnotationProvider annotationProvider, ObjectLocator locator) {
return serviceOverride.getServiceOverrideProvider().provide(objectType, annotationProvider, locator);
}
};
configuration.add("ServiceOverride", wrapper, after("AnnotationBasedContributions").build());
}
use of org.apache.tapestry5.http.Link in project tapestry5-hotel-booking by ccordenier.
the class View method startBooking.
/**
* Start booking process.
*
* @param hotel
* @return link to the current hotel booking
*/
@OnEvent(value = EventConstants.SUCCESS, component = "startBookingForm")
Object startBooking(Hotel hotel) {
User user = (User) dao.find(User.class, authenticator.getLoggedUser().getId());
userWorkspace.startBooking(hotel, user);
return Book.class;
}
use of org.apache.tapestry5.http.Link in project tapestry5-hotel-booking by ccordenier.
the class AuthenticationFilter method dispatchedToLoginPage.
private boolean dispatchedToLoginPage(String pageName) throws IOException {
if (authenticator.isLoggedIn()) {
// Logged user should not go back to Signin or Signup
if (signinPage.equalsIgnoreCase(pageName) || signupPage.equalsIgnoreCase(pageName)) {
Link link = renderLinkSource.createPageRenderLink(defaultPage);
response.sendRedirect(link);
return true;
}
return false;
}
Component page = componentSource.getPage(pageName);
if (page.getClass().isAnnotationPresent(AnonymousAccess.class)) {
return false;
}
Link link = renderLinkSource.createPageRenderLink("Signin");
response.sendRedirect(link);
return true;
}
use of org.apache.tapestry5.http.Link in project flowlogix by flowlogix.
the class LoginFormBase method detectJavaScript.
@AfterRender
public void detectJavaScript() {
Link link = componentResources.createEventLink(ENABLE_JS_EVENT);
String eventURI = link.toAbsoluteURI(requestGlobals.getRequest().isSecure());
jsSupport.addInitializerCall("detectJS", eventURI);
}
Aggregations