package Ġcom . d print . actions Ċ Ċ import Ġcom . d print . config . Project Configuration Ċ import Ġcom . d print . core . Bundle Ċ import Ġcom . d print . core . Log Utils Ċ import Ġcom . d print . services . Formatter Service Ċ import Ġcom . intellij . ide . actions On Save . impl . Actions On Save File Document Manager Listener Ċ import Ġcom . intellij . openapi . components . service Ċ import Ġcom . intellij . openapi . diagnostic . logger Ċ import Ġcom . intellij . openapi . editor . Document Ċ import Ġcom . intellij . openapi . file Editor . File Document Manager Ċ import Ġcom . intellij . openapi . project . Project Ċ Ċ private Ġval ĠLOGGER Ġ= Ġlogger < On Save Action >() Ċ Ċ class ĠOn Save Action Ġ: ĠActions On Save File Document Manager Listener . Action On Save () Ġ{ ĊĊĠĠĠ Ġoverride Ġfun Ġis Enabled For Project ( project : ĠProject ): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġproject . service < Project Configuration >(). state . enabled ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġprocess Documents ( project : ĠProject , Ġdocuments : ĠArray < out ĠDocument >) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġformatter Service Ġ= Ġproject . service < Formatter Service >() ĊĠĠĠĠĠĠĠ Ġval Ġmanager Ġ= ĠFile Document Manager . getInstance () ĊĠĠĠĠĠĠĠ Ġfor Ġ( document Ġin Ġdocuments ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġmanager . getFile ( document )?. let Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠLog Utils . info ( Bundle . message (" save . action . run ", Ġit . path ), Ġproject , ĠLOGGER ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġformatter Service . format ( it ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ