package Ġcom . d rew . metadata . x mp Ċ Ċ import Ġcom . adobe . internal . x mp . X MP Exception Ċ import Ġcom . adobe . internal . x mp . X MP Meta Factory Ċ import Ġcom . adobe . internal . x mp . options . Serialize Options Ċ import Ġcom . d rew . metadata . Metadata Ċ import Ġjava . io . OutputStream Ċ Ċ object ĠX mp Writer Ġ{ ĊĠ Ġ/** ĊĠĠ Ġ* ĠSerial izes Ġthe ĠX mp Directory Ġcomponent Ġof Ġ` Metadata ` Ġinto Ġan Ġ` OutputStream ` ĊĠĠ Ġ* Ġ@ param Ġos ĠDestination Ġfor Ġthe Ġx mp Ġdata ĊĠĠ Ġ* Ġ@ param Ġdata Ġpopulated Ġmetadata ĊĠĠ Ġ* Ġ@ return Ġserialize Ġsuccess ĊĠĠ Ġ*/ ĊĠ Ġfun Ġwrite ( os : ĠOutputStream ?, Ġdata : ĠMetadata ): ĠBoolean Ġ{ ĊĠĠĠ Ġval Ġdir Ġ= Ġdata . getFirst Directory OfType ( X mp Directory :: class . java ) Ġ?: Ġreturn Ġfalse ĊĠĠĠ Ġval Ġmeta Ġ= Ġdir . x mp Meta ĊĠĠĠ Ġtry Ġ{ ĊĠĠĠĠĠ Ġval Ġso Ġ= ĠSerialize Options (). set O mit Packet Wrapper ( true ) ĊĠĠĠĠĠ ĠX MP Meta Factory . serialize ( meta , Ġos , Ġso ) ĊĠĠĠ Ġ} Ġcatch Ġ( e : ĠX MP Exception ) Ġ{ ĊĠĠĠĠĠ Ġe . printStackTrace () ĊĠĠĠĠĠ Ġreturn Ġfalse ĊĠĠĠ Ġ} ĊĠĠĠ Ġreturn Ġtrue ĊĠ Ġ} Ċ } Ċ