Package akka.http.scaladsl.unmarshalling
Interface LowerPriorityGenericUnmarshallers
-
- All Known Subinterfaces:
GenericUnmarshallers
- All Known Implementing Classes:
Unmarshaller$
public interface LowerPriorityGenericUnmarshallers
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description <L,R>
Unmarshaller<HttpEntity,scala.util.Either<L,R>>eitherUnmarshaller(Unmarshaller<HttpEntity,L> ua, scala.reflect.ClassTag<R> rightTag, Unmarshaller<HttpEntity,R> ub, scala.reflect.ClassTag<L> leftTag)
Enables usingEither
to encode the following unmarshalling logic: Attempt unmarshalling the entity as asR
first (yieldingR
), and if it fails attempt unmarshalling asL
(yieldingLeft
).<A,B>
Unmarshaller<scala.Option<A>,B>liftToSourceOptionUnmarshaller(Unmarshaller<A,B> um)
<T> Unmarshaller<HttpMessage,T>
messageUnmarshallerFromEntityUnmarshaller(Unmarshaller<HttpEntity,T> um)
<A,B>
Unmarshaller<scala.Option<A>,B>sourceOptionUnmarshaller(Unmarshaller<A,B> um)
-
-
-
Method Detail
-
messageUnmarshallerFromEntityUnmarshaller
<T> Unmarshaller<HttpMessage,T> messageUnmarshallerFromEntityUnmarshaller(Unmarshaller<HttpEntity,T> um)
-
liftToSourceOptionUnmarshaller
<A,B> Unmarshaller<scala.Option<A>,B> liftToSourceOptionUnmarshaller(Unmarshaller<A,B> um)
-
sourceOptionUnmarshaller
<A,B> Unmarshaller<scala.Option<A>,B> sourceOptionUnmarshaller(Unmarshaller<A,B> um)
-
eitherUnmarshaller
<L,R> Unmarshaller<HttpEntity,scala.util.Either<L,R>> eitherUnmarshaller(Unmarshaller<HttpEntity,L> ua, scala.reflect.ClassTag<R> rightTag, Unmarshaller<HttpEntity,R> ub, scala.reflect.ClassTag<L> leftTag)
Enables usingEither
to encode the following unmarshalling logic: Attempt unmarshalling the entity as asR
first (yieldingR
), and if it fails attempt unmarshalling asL
(yieldingLeft
).The either unmarshaller only works with strict entities, so make sure to wrap routes that want to use it with
toStrictEntity
. Otherwise, if a non-strict entity is provided, it will fail with anIllegalArgumentException
.Note that the Either's "R" type will be attempted first (as Left is often considered as the "failed case" in Either).
- Parameters:
ua
- (undocumented)rightTag
- (undocumented)ub
- (undocumented)leftTag
- (undocumented)- Returns:
- (undocumented)
-
-