@@ -113,6 +113,27 @@ public static void closeWorkbook( Workbook workbook, DocOutput docOutput ) throw
113113
114114 private static final String PRODUCER_DEFAULT = String .format ( VenusVersion .VENUS_PRODUCER_FORMAT_SH1 , DocConfig .FUGERIT_VENUS_DOC , PRODUCER_OVER );
115115
116+ private static void propertySetup (DocBase docBase , POIXMLProperties props ) {
117+ SafeFunction .applySilent ( () -> {
118+ POIXMLProperties .CoreProperties coreProps = props .getCoreProperties ();
119+ POIXMLProperties .CustomProperties customProps = props .getCustomProperties ();
120+ SafeFunction .applyIfNotNull ( docBase .getInfoDocTitle (), () -> coreProps .setTitle ( docBase .getInfoDocTitle () ) );
121+ SafeFunction .applyIfNotNull ( docBase .getInfoDocSubject (), () -> coreProps .setSubjectProperty ( docBase .getInfoDocSubject () ) );
122+ SafeFunction .applyIfNotNull ( docBase .getInfoDocVersion (), () -> coreProps .setVersion ( docBase .getInfoDocVersion () ) );
123+ SafeFunction .applyIfNotNull ( docBase .getInfoDocAuthor (), () -> customProps .addProperty ( "Author" , docBase .getInfoDocAuthor () ) );
124+ if ( docBase .getInfoDocProducer () != null ) {
125+ customProps .addProperty ( "Creator" , docBase .getInfoDocCreator () );
126+ } else {
127+ customProps .addProperty ( "Creator" , VenusVersion .VENUS_CREATOR );
128+ }
129+ if ( docBase .getInfoDocProducer () != null ) {
130+ customProps .addProperty ( "Producer" , docBase .getInfoDocProducer () );
131+ } else {
132+ customProps .addProperty ( "Producer" , PRODUCER_DEFAULT );
133+ }
134+ SafeFunction .applyIfNotNull ( docBase .getInfoDocLanguage (), () -> customProps .addProperty ( "ContentLanguage" , docBase .getInfoDocLanguage () ) );
135+ } );
136+ }
116137
117138 public static WorkbookHelper newHelper (boolean xlsx , InputStream is , DocBase docBase ) throws IOException {
118139 Workbook workbook = null ;
@@ -124,26 +145,7 @@ public static WorkbookHelper newHelper(boolean xlsx, InputStream is, DocBase doc
124145 xssfWorkbook = new XSSFWorkbook ( is );
125146 }
126147 POIXMLProperties props = xssfWorkbook .getProperties ();
127- SafeFunction .applySilent ( () -> {
128- POIXMLProperties .CoreProperties coreProps = props .getCoreProperties ();
129- POIXMLProperties .CustomProperties customProps = props .getCustomProperties ();
130- SafeFunction .applyIfNotNull ( docBase .getInfoDocTitle (), () -> coreProps .setTitle ( docBase .getInfoDocTitle () ) );
131- SafeFunction .applyIfNotNull ( docBase .getInfoDocSubject (), () -> coreProps .setSubjectProperty ( docBase .getInfoDocSubject () ) );
132- SafeFunction .applyIfNotNull ( docBase .getInfoDocVersion (), () -> coreProps .setVersion ( docBase .getInfoDocVersion () ) );
133- SafeFunction .applyIfNotNull ( docBase .getInfoDocAuthor (), () -> customProps .addProperty ( "Author" , docBase .getInfoDocAuthor () ) );
134- if ( docBase .getInfoDocProducer () != null ) {
135- customProps .addProperty ( "Creator" , docBase .getInfoDocCreator () );
136- } else {
137- customProps .addProperty ( "Creator" , VenusVersion .VENUS_CREATOR );
138- }
139- if ( docBase .getInfoDocProducer () != null ) {
140- customProps .addProperty ( "Producer" , docBase .getInfoDocProducer () );
141- } else {
142- customProps .addProperty ( "Producer" , PRODUCER_DEFAULT );
143- }
144- SafeFunction .applyIfNotNull ( docBase .getInfoDocLanguage (), () -> customProps .addProperty ( "ContentLanguage" , docBase .getInfoDocLanguage () ) );
145- } );
146-
148+ propertySetup ( docBase , props );
147149 workbook = xssfWorkbook ;
148150 } else {
149151 if ( is == null ) {
0 commit comments