package Ġpl . be one . prom ena . transformer . appender . jdk specific . application model Ċ Ċ import Ġpl . be one . lib . type converter . application model . exception . Type Conversion Exception Ċ import Ġpl . be one . prom ena . transformer . appender . jdk specific . application model . J dk Specific Appender Parameters Constants . Chars Ċ import Ġpl . be one . prom ena . transformer . application model . exception . transformer . Transformation NotSupportedException Ċ import Ġpl . be one . prom ena . transformer . application model . medi atype . MediaType Ċ import Ġpl . be one . prom ena . transformer . application model . medi atype . MediaType Constants . TEXT _ PLAIN Ċ import Ġpl . be one . prom ena . transformer . contract . data . Data Descriptor Ċ import Ġpl . be one . prom ena . transformer . contract . model . Parameters Ċ Ċ object ĠJ dk Specific Appender Support Ġ{ ĊĊĠĠĠ Ġ@ Jvm Static ĊĠĠĠ Ġfun Ġis Supported ( data Descriptor : ĠData Descriptor , Ġtarget MediaType : ĠMediaType , Ġparameters : ĠParameters ) Ġ{ ĊĠĠĠĠĠĠĠ Ġdata Descriptor . descriptors . forEach Ġ{ Ġ(_, Ġmedia Type ) Ġ-> ĠMediaType Support . is Supported ( media Type , Ġtarget MediaType ) Ġ} ĊĠĠĠĠĠĠĠ ĠParameters Support . is Supported ( parameters ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġobject ĠMediaType Support Ġ{ ĊĠĠĠĠĠĠĠ Ġprivate Ġval Ġsupported MediaType Ġ= Ġset Of ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠTEXT _ PLAIN Ġto ĠTEXT _ PLAIN ĊĠĠĠĠĠĠĠ Ġ) ĊĊĠĠĠĠĠĠĠ Ġ@ Jvm Static ĊĠĠĠĠĠĠĠ Ġfun Ġis Supported ( media Type : ĠMediaType , Ġtarget MediaType : ĠMediaType ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ(! supported MediaType . contains ( media Type Ġto Ġtarget MediaType )) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġthrow ĠTransformation NotSupportedException . unsupported MediaType ( media Type , Ġtarget MediaType ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġobject ĠParameters Support Ġ{ ĊĠĠĠĠĠĠĠ Ġ@ Jvm Static ĊĠĠĠĠĠĠĠ Ġfun Ġis Supported ( parameters : ĠParameters ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġparameters . validate ( Chars . NAME , ĠCh ars . CLASS , Ġtrue ) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġprivate Ġfun Ġ< T > ĠParameters . validate ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġname : ĠString , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġclazz : ĠClass < T >, ĊĠĠĠĠĠĠĠĠĠĠĠ Ġmandatory : ĠBoolean , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġvalue Verifier Message : ĠString ? Ġ= Ġnull , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġvalue Verifier : Ġ( T ) Ġ-> ĠBoolean Ġ= Ġ{ Ġtrue Ġ} ĊĠĠĠĠĠĠĠ Ġ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtry Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġvalue Ġ= Ġget ( name , Ġclazz ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ(! value Verifier ( value )) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġthrow ĠTransformation NotSupportedException . unsupported Parameter Value ( name , Ġvalue , Ġvalue Verifier Message ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġcatch Ġ( e : ĠNoSuch ElementException ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( mandatory ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġthrow ĠTransformation NotSupportedException . mandatory Parameter ( name ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġcatch Ġ( e : ĠType Conversion Exception ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġthrow ĠTransformation NotSupportedException . unsupported ParameterType ( name , Ġclazz ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ }