Package org.rootservices.otter.gateway
Class Gateway
- java.lang.Object
-
- org.rootservices.otter.gateway.Gateway
-
- Direct Known Subclasses:
ServletGateway
public class Gateway extends java.lang.ObjectBase implementation for integrating a gateway. A gateway translates the http delivery framework to otter and dispatches requests to resources. The http delivery framework objects must not go past this implementation into Otter's internals. Example extension is, ServletGateway.
-
-
Field Summary
Fields Modifier and Type Field Description protected Engineengineprotected java.util.Map<java.lang.String,LocationTranslator<? extends DefaultSession,? extends DefaultUser>>locationTranslatorsprotected java.util.Map<java.lang.String,RestLocationTranslator<? extends DefaultUser,?>>restLocationTranslators
-
Constructor Summary
Constructors Constructor Description Gateway(Engine engine, java.util.Map<java.lang.String,LocationTranslator<? extends DefaultSession,? extends DefaultUser>> locationTranslators, java.util.Map<java.lang.String,RestLocationTranslator<? extends DefaultUser,?>> restLocationTranslators)
-
Method Summary
Modifier and Type Method Description <U extends DefaultUser,P>
voidadd(RestTarget<U,P> restTarget)<S extends DefaultSession,U extends DefaultUser>
voidadd(Target<S,U> target)protected Locationadd(Dispatcher dispatcher, Method method, Location location)<S extends DefaultSession,U extends DefaultUser>
LocationTranslator<S,U>locationTranslator(java.lang.String groupName)Finds the location translator for the groupName.<U extends DefaultUser,P>
voidnotFound(RestTarget<U,P> notFound)<S extends DefaultSession,U extends DefaultUser>
voidnotFound(Target<S,U> notFound)<U extends DefaultUser,P>
RestLocationTranslator<U,P>restLocationTranslator(java.lang.String groupName)Finds the rest location translator for the groupName.
-
-
-
Field Detail
-
engine
protected Engine engine
-
locationTranslators
protected java.util.Map<java.lang.String,LocationTranslator<? extends DefaultSession,? extends DefaultUser>> locationTranslators
-
restLocationTranslators
protected java.util.Map<java.lang.String,RestLocationTranslator<? extends DefaultUser,?>> restLocationTranslators
-
-
Constructor Detail
-
Gateway
public Gateway(Engine engine, java.util.Map<java.lang.String,LocationTranslator<? extends DefaultSession,? extends DefaultUser>> locationTranslators, java.util.Map<java.lang.String,RestLocationTranslator<? extends DefaultUser,?>> restLocationTranslators)
-
-
Method Detail
-
add
protected Location add(Dispatcher dispatcher, Method method, Location location)
-
add
public <S extends DefaultSession,U extends DefaultUser> void add(Target<S,U> target)
-
add
public <U extends DefaultUser,P> void add(RestTarget<U,P> restTarget)
-
locationTranslator
public <S extends DefaultSession,U extends DefaultUser> LocationTranslator<S,U> locationTranslator(java.lang.String groupName)
Finds the location translator for the groupName. Casting is safe here because the type of the value in locationTranslators are upper bound wild cards for, DefaultSession and DefaultUser. Therefore the values extend, DefaultSession and DefaultUser. https://docs.oracle.com/javase/tutorial/java/generics/subtyping.html- Type Parameters:
S- SessionU- User- Parameters:
groupName- the name of the group. Used as a lookup key for the translator.- Returns:
- the locationTranslator for the group
-
restLocationTranslator
public <U extends DefaultUser,P> RestLocationTranslator<U,P> restLocationTranslator(java.lang.String groupName)
Finds the rest location translator for the groupName. Casting is safe here because the type of the value in locationTranslators are upper bound wild cards for, DefaultUser and Translatable. Therefore the values extend, DefaultUser and Translatable. https://docs.oracle.com/javase/tutorial/java/generics/subtyping.html- Type Parameters:
U- UserP- Payload- Parameters:
groupName- the name of the group. Used as a lookup key for the translator.- Returns:
- the restLocationTranslator for the group
-
notFound
public <S extends DefaultSession,U extends DefaultUser> void notFound(Target<S,U> notFound)
-
notFound
public <U extends DefaultUser,P> void notFound(RestTarget<U,P> notFound)
-
-