package Ġpl . be one . prom ena . alf resco . lib . transformer rend ition . external . rend ition Ċ Ċ import Ġmu . Kotlin Logging Ċ import Ġorg . alf resco . model . Content Model . PROP _ LAST _ TH UMB NA IL _ MO DIF ICATION _ DATA Ċ import Ġorg . alf resco . model . Content Model . TYPE _ TH UMB NA IL Ċ import Ġorg . alf resco . repo . node . Node Service Policies . On Create Node Policy Ċ import Ġorg . alf resco . repo . policy . Behaviour . Notification Frequency . TRANSACTION _ COMMIT Ċ import Ġorg . alf resco . repo . policy . Java Behaviour Ċ import Ġorg . alf resco . repo . policy . Policy Component Ċ import Ġorg . alf resco . service . cm r . repository . Child Association Ref Ċ import Ġorg . alf resco . service . cm r . repository . Node Ref Ċ import Ġorg . alf resco . service . cm r . repository . Node Service Ċ import Ġpl . be one . prom ena . alf resco . module . core . application model . model . Prom ena Model . PROPERTY _ REN DITION _ NAME Ċ import Ġjava . io . Serializable Ċ import Ġjavax . annotation . Post Construct Ċ Ċ class ĠThumb nail Node Creation Behaviour ( ĊĠĠĠ Ġprivate Ġval Ġpolicy Component : ĠPolicy Component , ĊĠĠĠ Ġprivate Ġval Ġnode Service : ĠNode Service Ċ ) Ġ{ ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġprivate Ġval Ġlogger Ġ= ĠKotlin Logging . logger Ġ{} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Post Construct ĊĠĠĠ Ġfun Ġregister () Ġ{ ĊĠĠĠĠĠĠĠ Ġpolicy Component . bind Class Behaviour ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠOn Create Node Policy . QNAME , ĊĠĠĠĠĠĠĠĠĠĠĠ ĠTYPE _ TH UMB NA IL , ĊĠĠĠĠĠĠĠĠĠĠĠ ĠJava Behaviour ( this , Ġ" onCreate Node ", ĠTRAN SACTION _ COMMIT ) ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠAdds Ġor Ġmod ifies Ġ` cm : last Thumbnail Modification ` Ġusing Ġthe Ġ` prom ena : rend ition Name ` Ġof Ġ[ child Association Ref ]. ĊĠĠĠĠ Ġ* ĠIt Ġis Ġrequired Ġby ĠA lf resco ĠShare Ġto Ġdisplay Ġrend itions Ġin ĠRepository . ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġfun ĠonCreate Node ( child Association Ref : ĠChild Association Ref ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġnode Ref Ġ= Ġchild Association Ref . child Ref ĊĠĠĠĠĠĠĠ Ġif Ġ( node Ref Ġ!= Ġnull Ġ&& Ġnode Service . exists ( node Ref )) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġrend ition Name Ġ= Ġnode Service . getProperty ( node Ref , ĠPROPERTY _ REN DITION _ NAME ) Ġas ĠString ? ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( rend ition Name Ġ!= Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġparent Node Ref Ġ= Ġchild Association Ref . parent Ref ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġlast Thumbnail Modification Data Ġ= Ġdetermine Last Thumbnail Modification Data ( parentNode Ref , Ġrend ition Name ) Ġas ĠSerializable ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġnode Service . setProperty ( parentNode Ref , ĠPROP _ LAST _ TH UMB NA IL _ MO DIF ICATION _ DATA , Ġlast Thumbnail Modification Data ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġlogger . debug Ġ{ Ġ" Set Ġ< cm :${ PROP _ LAST _ TH UMB NA IL _ MO DIF ICATION _ DATA . local Name }> Ġto Ġ<$ last Thumbnail Modification Data > Ġin Ġ<$ node Ref >" Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Suppress (" UN CHECK ED _ CAST ") ĊĠĠĠ Ġprivate Ġfun Ġdetermine Last Thumbnail Modification Data ( node Ref : ĠNode Ref , Ġrend ition Name : ĠString ): ĠList < String > Ġ= ĊĠĠĠĠĠĠĠ Ġ(( node Service . getProperty ( node Ref , ĠPROP _ LAST _ TH UMB NA IL _ MO DIF ICATION _ DATA ) Ġ?: ĠlistOf < String >()) Ġas ĠList < String >) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. filter Not Ġ{ Ġit . startsWith ( rend ition Name ) Ġ} Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcreate Last Thumbnail Modification Data Item ( rend ition Name ) ĊĊĠĠĠ Ġprivate Ġfun Ġcreate Last Thumbnail Modification Data Item ( rend ition Name : ĠString ): ĠString Ġ= ĊĠĠĠĠĠĠĠ Ġrend ition Name Ġ+ Ġ":" Ġ+ ĠSystem . currentTimeMillis () Ċ }