Return-Path: X-Original-To: apmail-poi-commits-archive@minotaur.apache.org Delivered-To: apmail-poi-commits-archive@minotaur.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id D195218CB1 for ; Wed, 30 Sep 2015 23:07:23 +0000 (UTC) Received: (qmail 85153 invoked by uid 500); 30 Sep 2015 23:06:49 -0000 Delivered-To: apmail-poi-commits-archive@poi.apache.org Received: (qmail 85116 invoked by uid 500); 30 Sep 2015 23:06:49 -0000 Mailing-List: contact commits-help@poi.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@poi.apache.org Delivered-To: mailing list commits@poi.apache.org Received: (qmail 85107 invoked by uid 99); 30 Sep 2015 23:06:49 -0000 Received: from Unknown (HELO spamd4-us-west.apache.org) (209.188.14.142) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 30 Sep 2015 23:06:49 +0000 Received: from localhost (localhost [127.0.0.1]) by spamd4-us-west.apache.org (ASF Mail Server at spamd4-us-west.apache.org) with ESMTP id 49809C00B1 for ; Wed, 30 Sep 2015 23:06:49 +0000 (UTC) X-Virus-Scanned: Debian amavisd-new at spamd4-us-west.apache.org X-Spam-Flag: NO X-Spam-Score: 1.795 X-Spam-Level: * X-Spam-Status: No, score=1.795 tagged_above=-999 required=6.31 tests=[KAM_ASCII_DIVIDERS=0.8, KAM_LAZY_DOMAIN_SECURITY=1, RP_MATCHES_RCVD=-0.006, URIBL_BLOCKED=0.001] autolearn=disabled Received: from mx1-us-west.apache.org ([10.40.0.8]) by localhost (spamd4-us-west.apache.org [10.40.0.11]) (amavisd-new, port 10024) with ESMTP id J3pgrYo2nIEZ for ; Wed, 30 Sep 2015 23:06:42 +0000 (UTC) Received: from mailrelay1-us-west.apache.org (mailrelay1-us-west.apache.org [209.188.14.139]) by mx1-us-west.apache.org (ASF Mail Server at mx1-us-west.apache.org) with ESMTP id B3F892031C for ; Wed, 30 Sep 2015 23:06:41 +0000 (UTC) Received: from svn01-us-west.apache.org (svn.apache.org [10.41.0.6]) by mailrelay1-us-west.apache.org (ASF Mail Server at mailrelay1-us-west.apache.org) with ESMTP id 3DC4FE0281 for ; Wed, 30 Sep 2015 23:06:41 +0000 (UTC) Received: from svn01-us-west.apache.org (localhost [127.0.0.1]) by svn01-us-west.apache.org (ASF Mail Server at svn01-us-west.apache.org) with ESMTP id F1C7E3A0248 for ; Wed, 30 Sep 2015 23:06:40 +0000 (UTC) Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: svn commit: r1706169 - in /poi/trunk/src: examples/src/org/apache/poi/hssf/view/ examples/src/org/apache/poi/xssf/usermodel/examples/ integrationtest/org/apache/poi/stress/ java/org/apache/poi/ddf/ java/org/apache/poi/hpsf/ java/org/apache/poi/hssf/mod... Date: Wed, 30 Sep 2015 23:06:40 -0000 To: commits@poi.apache.org From: kiwiwings@apache.org X-Mailer: svnmailer-1.0.9 Message-Id: <20150930230640.F1C7E3A0248@svn01-us-west.apache.org> Author: kiwiwings Date: Wed Sep 30 23:06:39 2015 New Revision: 1706169 URL: http://svn.apache.org/viewvc?rev=1706169&view=rev Log: sonar fixes Very interesting was the exception swallowing in PackagePropertiesPart. When it was properly thrown, it already led to various errors in the junits test - I've fixed the handling for at least the ones which are in our test set Added: poi/trunk/src/ooxml/java/org/apache/poi/xslf/usermodel/XSLFSlideShow.java - copied, changed from r1705778, poi/trunk/src/ooxml/java/org/apache/poi/xslf/XSLFSlideShow.java Removed: poi/trunk/src/ooxml/java/org/apache/poi/xslf/XSLFSlideShow.java Modified: poi/trunk/src/examples/src/org/apache/poi/hssf/view/SVSheetTable.java poi/trunk/src/examples/src/org/apache/poi/xssf/usermodel/examples/EmbeddedObjects.java poi/trunk/src/integrationtest/org/apache/poi/stress/XSLFFileHandler.java poi/trunk/src/java/org/apache/poi/ddf/EscherTextboxRecord.java poi/trunk/src/java/org/apache/poi/hpsf/Section.java poi/trunk/src/java/org/apache/poi/hssf/model/InternalSheet.java poi/trunk/src/java/org/apache/poi/hssf/record/CFHeaderBase.java poi/trunk/src/java/org/apache/poi/hssf/record/FilePassRecord.java poi/trunk/src/java/org/apache/poi/hssf/record/IndexRecord.java poi/trunk/src/java/org/apache/poi/hssf/record/aggregates/CFRecordsAggregate.java poi/trunk/src/java/org/apache/poi/poifs/filesystem/BlockStore.java poi/trunk/src/java/org/apache/poi/poifs/property/NPropertyTable.java poi/trunk/src/java/org/apache/poi/sl/usermodel/Insets2D.java poi/trunk/src/ooxml/java/org/apache/poi/extractor/ExtractorFactory.java poi/trunk/src/ooxml/java/org/apache/poi/openxml4j/opc/internal/PackagePropertiesPart.java poi/trunk/src/ooxml/java/org/apache/poi/poifs/crypt/dsig/facets/XAdESXLSignatureFacet.java poi/trunk/src/ooxml/java/org/apache/poi/xslf/extractor/XSLFPowerPointExtractor.java poi/trunk/src/ooxml/java/org/apache/poi/xslf/usermodel/XMLSlideShow.java poi/trunk/src/ooxml/testcases/org/apache/poi/TestEmbeded.java poi/trunk/src/ooxml/testcases/org/apache/poi/TestXMLPropertiesTextExtractor.java poi/trunk/src/ooxml/testcases/org/apache/poi/extractor/TestExtractorFactory.java poi/trunk/src/ooxml/testcases/org/apache/poi/xslf/TestXSLFBugs.java poi/trunk/src/ooxml/testcases/org/apache/poi/xslf/TestXSLFSlideShow.java poi/trunk/src/ooxml/testcases/org/apache/poi/xslf/extractor/TestXSLFPowerPointExtractor.java poi/trunk/src/scratchpad/src/org/apache/poi/hmef/attribute/MAPIAttribute.java poi/trunk/src/scratchpad/src/org/apache/poi/hslf/model/textproperties/BitMaskTextProp.java Modified: poi/trunk/src/examples/src/org/apache/poi/hssf/view/SVSheetTable.java URL: http://svn.apache.org/viewvc/poi/trunk/src/examples/src/org/apache/poi/hssf/view/SVSheetTable.java?rev=1706169&r1=1706168&r2=1706169&view=diff ============================================================================== --- poi/trunk/src/examples/src/org/apache/poi/hssf/view/SVSheetTable.java (original) +++ poi/trunk/src/examples/src/org/apache/poi/hssf/view/SVSheetTable.java Wed Sep 30 23:06:39 2015 @@ -163,7 +163,7 @@ public class SVSheetTable extends JTable Row row = sheet.getRow(i - sheet.getFirstRowNum()); if (row != null) { short h = row.getHeight(); - int height = Math.round(Math.max(1, h / (res / 70 * 20) + 3)); + int height = (int)Math.round(Math.max(1., ((double)h) / (((double)res) / 70. * 20.) + 3.)); System.out.printf("%d: %d (%d @ %d)%n", i, height, h, res); setRowHeight(i, height); } Modified: poi/trunk/src/examples/src/org/apache/poi/xssf/usermodel/examples/EmbeddedObjects.java URL: http://svn.apache.org/viewvc/poi/trunk/src/examples/src/org/apache/poi/xssf/usermodel/examples/EmbeddedObjects.java?rev=1706169&r1=1706168&r2=1706169&view=diff ============================================================================== --- poi/trunk/src/examples/src/org/apache/poi/xssf/usermodel/examples/EmbeddedObjects.java (original) +++ poi/trunk/src/examples/src/org/apache/poi/xssf/usermodel/examples/EmbeddedObjects.java Wed Sep 30 23:06:39 2015 @@ -19,10 +19,10 @@ package org.apache.poi.xssf.usermodel.ex import org.apache.poi.xssf.usermodel.XSSFWorkbook; import org.apache.poi.openxml4j.opc.OPCPackage; import org.apache.poi.openxml4j.opc.PackagePart; +import org.apache.poi.xslf.usermodel.XSLFSlideShow; import org.apache.poi.xwpf.usermodel.XWPFDocument; import org.apache.poi.hslf.usermodel.HSLFSlideShowImpl; import org.apache.poi.hwpf.HWPFDocument; -import org.apache.poi.xslf.XSLFSlideShow; import org.apache.poi.hssf.usermodel.HSSFWorkbook; import java.io.InputStream; Modified: poi/trunk/src/integrationtest/org/apache/poi/stress/XSLFFileHandler.java URL: http://svn.apache.org/viewvc/poi/trunk/src/integrationtest/org/apache/poi/stress/XSLFFileHandler.java?rev=1706169&r1=1706168&r2=1706169&view=diff ============================================================================== --- poi/trunk/src/integrationtest/org/apache/poi/stress/XSLFFileHandler.java (original) +++ poi/trunk/src/integrationtest/org/apache/poi/stress/XSLFFileHandler.java Wed Sep 30 23:06:39 2015 @@ -24,9 +24,9 @@ import java.io.FileInputStream; import java.io.InputStream; import org.apache.poi.extractor.ExtractorFactory; -import org.apache.poi.xslf.XSLFSlideShow; import org.apache.poi.xslf.extractor.XSLFPowerPointExtractor; import org.apache.poi.xslf.usermodel.XMLSlideShow; +import org.apache.poi.xslf.usermodel.XSLFSlideShow; import org.junit.Test; public class XSLFFileHandler extends SlideShowHandler { Modified: poi/trunk/src/java/org/apache/poi/ddf/EscherTextboxRecord.java URL: http://svn.apache.org/viewvc/poi/trunk/src/java/org/apache/poi/ddf/EscherTextboxRecord.java?rev=1706169&r1=1706168&r2=1706169&view=diff ============================================================================== --- poi/trunk/src/java/org/apache/poi/ddf/EscherTextboxRecord.java (original) +++ poi/trunk/src/java/org/apache/poi/ddf/EscherTextboxRecord.java Wed Sep 30 23:06:39 2015 @@ -27,7 +27,7 @@ import org.apache.poi.util.RecordFormatE * Escher format. We don't attempt to understand the contents, since * they will be in the parent's format, not Escher format. */ -public class EscherTextboxRecord extends EscherRecord implements Cloneable { +public final class EscherTextboxRecord extends EscherRecord implements Cloneable { public static final short RECORD_ID = (short)0xF00D; public static final String RECORD_DESCRIPTION = "msofbtClientTextbox"; Modified: poi/trunk/src/java/org/apache/poi/hpsf/Section.java URL: http://svn.apache.org/viewvc/poi/trunk/src/java/org/apache/poi/hpsf/Section.java?rev=1706169&r1=1706168&r2=1706169&view=diff ============================================================================== --- poi/trunk/src/java/org/apache/poi/hpsf/Section.java (original) +++ poi/trunk/src/java/org/apache/poi/hpsf/Section.java Wed Sep 30 23:06:39 2015 @@ -318,6 +318,38 @@ public class Section return 1; } + + + public int hashCode() { + final int prime = 31; + int result = 1; + result = prime * result + id; + result = prime * result + length; + result = prime * result + offset; + return result; + } + + + + public boolean equals(Object obj) { + if (this == obj) + return true; + if (obj == null) + return false; + if (getClass() != obj.getClass()) + return false; + PropertyListEntry other = (PropertyListEntry) obj; + if (id != other.id) + return false; + if (length != other.length) + return false; + if (offset != other.offset) + return false; + return true; + } + + + public String toString() { final StringBuffer b = new StringBuffer(); Modified: poi/trunk/src/java/org/apache/poi/hssf/model/InternalSheet.java URL: http://svn.apache.org/viewvc/poi/trunk/src/java/org/apache/poi/hssf/model/InternalSheet.java?rev=1706169&r1=1706168&r2=1706169&view=diff ============================================================================== --- poi/trunk/src/java/org/apache/poi/hssf/model/InternalSheet.java (original) +++ poi/trunk/src/java/org/apache/poi/hssf/model/InternalSheet.java Wed Sep 30 23:06:39 2015 @@ -164,7 +164,7 @@ public final class InternalSheet { int dimsloc = -1; if (rs.peekNextSid() != BOFRecord.sid) { - throw new RuntimeException("BOF record expected"); + throw new RecordFormatException("BOF record expected"); } BOFRecord bof = (BOFRecord) rs.getNext(); @@ -210,7 +210,7 @@ public final class InternalSheet { if (RecordOrderer.isRowBlockRecord(recSid)) { //only add the aggregate once if (rra != null) { - throw new RuntimeException("row/cell records found in the wrong place"); + throw new RecordFormatException("row/cell records found in the wrong place"); } RowBlocksReader rbr = new RowBlocksReader(rs); _mergedCellsTable.addRecords(rbr.getLooseMergedCells()); @@ -332,7 +332,7 @@ public final class InternalSheet { records.add(rec); } if (windowTwo == null) { - throw new RuntimeException("WINDOW2 was not found"); + throw new RecordFormatException("WINDOW2 was not found"); } if (_dimensions == null) { // Excel seems to always write the DIMENSION record, but tolerates when it is not present @@ -393,7 +393,7 @@ public final class InternalSheet { try { _destList.add((Record)r.clone()); } catch (CloneNotSupportedException e) { - throw new RuntimeException(e); + throw new RecordFormatException(e); } } } @@ -423,7 +423,7 @@ public final class InternalSheet { Record rec = (Record) ((Record) rb).clone(); clonedRecords.add(rec); } catch (CloneNotSupportedException e) { - throw new RuntimeException(e); + throw new RecordFormatException(e); } } return createSheet(new RecordStream(clonedRecords, 0)); Modified: poi/trunk/src/java/org/apache/poi/hssf/record/CFHeaderBase.java URL: http://svn.apache.org/viewvc/poi/trunk/src/java/org/apache/poi/hssf/record/CFHeaderBase.java?rev=1706169&r1=1706168&r2=1706169&view=diff ============================================================================== --- poi/trunk/src/java/org/apache/poi/hssf/record/CFHeaderBase.java (original) +++ poi/trunk/src/java/org/apache/poi/hssf/record/CFHeaderBase.java Wed Sep 30 23:06:39 2015 @@ -152,5 +152,5 @@ public abstract class CFHeaderBase exten } @Override - public abstract CFHeaderBase clone(); + public abstract CFHeaderBase clone(); // NOSONAR } Modified: poi/trunk/src/java/org/apache/poi/hssf/record/FilePassRecord.java URL: http://svn.apache.org/viewvc/poi/trunk/src/java/org/apache/poi/hssf/record/FilePassRecord.java?rev=1706169&r1=1706168&r2=1706169&view=diff ============================================================================== --- poi/trunk/src/java/org/apache/poi/hssf/record/FilePassRecord.java (original) +++ poi/trunk/src/java/org/apache/poi/hssf/record/FilePassRecord.java Wed Sep 30 23:06:39 2015 @@ -41,10 +41,10 @@ public final class FilePassRecord extend void serialize(LittleEndianOutput out); int getDataSize(); void appendToString(StringBuffer buffer); - KeyData clone(); + KeyData clone(); // NOSONAR } - public static class Rc4KeyData implements KeyData { + public static final class Rc4KeyData implements KeyData, Cloneable { private static final int ENCRYPTION_OTHER_RC4 = 1; private static final int ENCRYPTION_OTHER_CAPI_2 = 2; private static final int ENCRYPTION_OTHER_CAPI_3 = 3; @@ -135,7 +135,7 @@ public final class FilePassRecord extend } } - public static class XorKeyData implements KeyData { + public static final class XorKeyData implements KeyData, Cloneable { /** * key (2 bytes): An unsigned integer that specifies the obfuscation key. * See [MS-OFFCRYPTO], 2.3.6.2 section, the first step of initializing XOR Modified: poi/trunk/src/java/org/apache/poi/hssf/record/IndexRecord.java URL: http://svn.apache.org/viewvc/poi/trunk/src/java/org/apache/poi/hssf/record/IndexRecord.java?rev=1706169&r1=1706168&r2=1706169&view=diff ============================================================================== --- poi/trunk/src/java/org/apache/poi/hssf/record/IndexRecord.java (original) +++ poi/trunk/src/java/org/apache/poi/hssf/record/IndexRecord.java Wed Sep 30 23:06:39 2015 @@ -29,7 +29,7 @@ import org.apache.poi.util.LittleEndianO * @author Andrew C. Oliver (acoliver at apache dot org) * @author Jason Height (jheight at chariot dot net dot au) */ -public class IndexRecord extends StandardRecord implements Cloneable { +public final class IndexRecord extends StandardRecord implements Cloneable { public final static short sid = 0x020B; private int field_2_first_row; // first row on the sheet private int field_3_last_row_add1; // last row Modified: poi/trunk/src/java/org/apache/poi/hssf/record/aggregates/CFRecordsAggregate.java URL: http://svn.apache.org/viewvc/poi/trunk/src/java/org/apache/poi/hssf/record/aggregates/CFRecordsAggregate.java?rev=1706169&r1=1706168&r2=1706169&view=diff ============================================================================== --- poi/trunk/src/java/org/apache/poi/hssf/record/aggregates/CFRecordsAggregate.java (original) +++ poi/trunk/src/java/org/apache/poi/hssf/record/aggregates/CFRecordsAggregate.java Wed Sep 30 23:06:39 2015 @@ -28,6 +28,7 @@ import org.apache.poi.hssf.record.CFRule import org.apache.poi.hssf.record.CFRuleBase; import org.apache.poi.hssf.record.CFRuleRecord; import org.apache.poi.hssf.record.Record; +import org.apache.poi.hssf.record.RecordFormatException; import org.apache.poi.ss.formula.FormulaShifter; import org.apache.poi.ss.formula.ptg.AreaErrPtg; import org.apache.poi.ss.formula.ptg.AreaPtg; @@ -68,7 +69,7 @@ public final class CFRecordsAggregate ex + " this file will cause problems with old Excel versions"); } if (pRules.length != pHeader.getNumberOfConditionalFormats()) { - throw new RuntimeException("Mismatch number of rules"); + throw new RecordFormatException("Mismatch number of rules"); } header = pHeader; rules = new ArrayList(pRules.length); @@ -119,9 +120,9 @@ public final class CFRecordsAggregate ex public CFRecordsAggregate cloneCFAggregate() { CFRuleBase[] newRecs = new CFRuleBase[rules.size()]; for (int i = 0; i < newRecs.length; i++) { - newRecs[i] = (CFRuleRecord) getRule(i).clone(); + newRecs[i] = getRule(i).clone(); } - return new CFRecordsAggregate((CFHeaderBase)header.clone(), newRecs); + return new CFRecordsAggregate(header.clone(), newRecs); } /** Modified: poi/trunk/src/java/org/apache/poi/poifs/filesystem/BlockStore.java URL: http://svn.apache.org/viewvc/poi/trunk/src/java/org/apache/poi/poifs/filesystem/BlockStore.java?rev=1706169&r1=1706168&r2=1706169&view=diff ============================================================================== --- poi/trunk/src/java/org/apache/poi/poifs/filesystem/BlockStore.java (original) +++ poi/trunk/src/java/org/apache/poi/poifs/filesystem/BlockStore.java Wed Sep 30 23:06:39 2015 @@ -80,7 +80,7 @@ public abstract class BlockStore { protected class ChainLoopDetector { private boolean[] used_blocks; protected ChainLoopDetector(long rawSize) { - int numBlocks = (int)Math.ceil( rawSize / getBlockStoreBlockSize() ); + int numBlocks = (int)Math.ceil( ((double)rawSize) / getBlockStoreBlockSize() ); used_blocks = new boolean[numBlocks]; } protected void claim(int offset) { Modified: poi/trunk/src/java/org/apache/poi/poifs/property/NPropertyTable.java URL: http://svn.apache.org/viewvc/poi/trunk/src/java/org/apache/poi/poifs/property/NPropertyTable.java?rev=1706169&r1=1706168&r2=1706169&view=diff ============================================================================== --- poi/trunk/src/java/org/apache/poi/poifs/property/NPropertyTable.java (original) +++ poi/trunk/src/java/org/apache/poi/poifs/property/NPropertyTable.java Wed Sep 30 23:06:39 2015 @@ -120,7 +120,7 @@ public final class NPropertyTable extend public int countBlocks() { int size = _properties.size() * POIFSConstants.PROPERTY_SIZE; - return (int)Math.ceil(size / _bigBigBlockSize.getBigBlockSize()); + return (int)Math.ceil( ((double)size) / _bigBigBlockSize.getBigBlockSize()); } /** Modified: poi/trunk/src/java/org/apache/poi/sl/usermodel/Insets2D.java URL: http://svn.apache.org/viewvc/poi/trunk/src/java/org/apache/poi/sl/usermodel/Insets2D.java?rev=1706169&r1=1706168&r2=1706169&view=diff ============================================================================== --- poi/trunk/src/java/org/apache/poi/sl/usermodel/Insets2D.java (original) +++ poi/trunk/src/java/org/apache/poi/sl/usermodel/Insets2D.java Wed Sep 30 23:06:39 2015 @@ -21,7 +21,7 @@ package org.apache.poi.sl.usermodel; * This is a replacement for {@link java.awt.Insets} which works on doubles * instead of ints */ -public class Insets2D implements Cloneable { +public final class Insets2D implements Cloneable { /** * The inset from the top. Modified: poi/trunk/src/ooxml/java/org/apache/poi/extractor/ExtractorFactory.java URL: http://svn.apache.org/viewvc/poi/trunk/src/ooxml/java/org/apache/poi/extractor/ExtractorFactory.java?rev=1706169&r1=1706168&r2=1706169&view=diff ============================================================================== --- poi/trunk/src/ooxml/java/org/apache/poi/extractor/ExtractorFactory.java (original) +++ poi/trunk/src/ooxml/java/org/apache/poi/extractor/ExtractorFactory.java Wed Sep 30 23:06:39 2015 @@ -55,9 +55,9 @@ import org.apache.poi.poifs.filesystem.N import org.apache.poi.poifs.filesystem.OPOIFSFileSystem; import org.apache.poi.poifs.filesystem.OfficeXmlFileException; import org.apache.poi.poifs.filesystem.POIFSFileSystem; -import org.apache.poi.xslf.XSLFSlideShow; import org.apache.poi.xslf.extractor.XSLFPowerPointExtractor; import org.apache.poi.xslf.usermodel.XSLFRelation; +import org.apache.poi.xslf.usermodel.XSLFSlideShow; import org.apache.poi.xssf.extractor.XSSFEventBasedExcelExtractor; import org.apache.poi.xssf.extractor.XSSFExcelExtractor; import org.apache.poi.xssf.usermodel.XSSFRelation; Modified: poi/trunk/src/ooxml/java/org/apache/poi/openxml4j/opc/internal/PackagePropertiesPart.java URL: http://svn.apache.org/viewvc/poi/trunk/src/ooxml/java/org/apache/poi/openxml4j/opc/internal/PackagePropertiesPart.java?rev=1706169&r1=1706168&r2=1706169&view=diff ============================================================================== --- poi/trunk/src/ooxml/java/org/apache/poi/openxml4j/opc/internal/PackagePropertiesPart.java (original) +++ poi/trunk/src/ooxml/java/org/apache/poi/openxml4j/opc/internal/PackagePropertiesPart.java Wed Sep 30 23:06:39 2015 @@ -48,6 +48,10 @@ public final class PackagePropertiesPart public final static String NAMESPACE_DCTERMS_URI = "http://purl.org/dc/terms/"; + private final static String DEFAULT_DATEFORMAT = "yyyy-MM-dd'T'HH:mm:ss'Z'"; + private final static String ALTERNATIVE_DATEFORMAT = "yyyy-MM-dd'T'HH:mm:ss.SS'Z'"; + + /** * Constructor. * @@ -386,8 +390,8 @@ public final class PackagePropertiesPart try { this.created = setDateValue(created); } catch (InvalidFormatException e) { - new IllegalArgumentException("created : " - + e.getLocalizedMessage()); + throw new IllegalArgumentException("created : " + + e.getLocalizedMessage(), e); } } @@ -464,8 +468,8 @@ public final class PackagePropertiesPart try { this.lastPrinted = setDateValue(lastPrinted); } catch (InvalidFormatException e) { - new IllegalArgumentException("lastPrinted : " - + e.getLocalizedMessage()); + throw new IllegalArgumentException("lastPrinted : " + + e.getLocalizedMessage(), e); } } @@ -488,8 +492,8 @@ public final class PackagePropertiesPart try { this.modified = setDateValue(modified); } catch (InvalidFormatException e) { - new IllegalArgumentException("modified : " - + e.getLocalizedMessage()); + throw new IllegalArgumentException("modified : " + + e.getLocalizedMessage(), e); } } @@ -559,10 +563,18 @@ public final class PackagePropertiesPart if (s == null || s.equals("")) { return new Nullable(); } - SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss'Z'", Locale.ROOT); + if (!s.endsWith("Z")) { + s += "Z"; + } + SimpleDateFormat df = new SimpleDateFormat(DEFAULT_DATEFORMAT, Locale.ROOT); df.setTimeZone(LocaleUtil.TIMEZONE_UTC); Date d = df.parse(s, new ParsePosition(0)); if (d == null) { + df = new SimpleDateFormat(ALTERNATIVE_DATEFORMAT, Locale.ROOT); + df.setTimeZone(LocaleUtil.TIMEZONE_UTC); + d = df.parse(s, new ParsePosition(0)); + } + if (d == null) { throw new InvalidFormatException("Date not well formated"); } return new Nullable(d); @@ -585,7 +597,7 @@ public final class PackagePropertiesPart return ""; } - SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss'Z'", Locale.ROOT); + SimpleDateFormat df = new SimpleDateFormat(DEFAULT_DATEFORMAT, Locale.ROOT); df.setTimeZone(LocaleUtil.TIMEZONE_UTC); return df.format(date); } Modified: poi/trunk/src/ooxml/java/org/apache/poi/poifs/crypt/dsig/facets/XAdESXLSignatureFacet.java URL: http://svn.apache.org/viewvc/poi/trunk/src/ooxml/java/org/apache/poi/poifs/crypt/dsig/facets/XAdESXLSignatureFacet.java?rev=1706169&r1=1706168&r2=1706169&view=diff ============================================================================== --- poi/trunk/src/ooxml/java/org/apache/poi/poifs/crypt/dsig/facets/XAdESXLSignatureFacet.java (original) +++ poi/trunk/src/ooxml/java/org/apache/poi/poifs/crypt/dsig/facets/XAdESXLSignatureFacet.java Wed Sep 30 23:06:39 2015 @@ -28,6 +28,7 @@ import static org.apache.poi.poifs.crypt import java.io.ByteArrayInputStream; import java.io.ByteArrayOutputStream; +import java.io.IOException; import java.math.BigInteger; import java.security.cert.CRLException; import java.security.cert.CertificateEncodingException; @@ -324,21 +325,25 @@ public class XAdESXLSignatureFacet exten } private BigInteger getCrlNumber(X509CRL crl) { + byte[] crlNumberExtensionValue = crl.getExtensionValue(Extension.cRLNumber.getId()); + if (null == crlNumberExtensionValue) { + return null; + } + try { - byte[] crlNumberExtensionValue = crl.getExtensionValue(Extension.cRLNumber.getId()); - if (null == crlNumberExtensionValue) { - return null; + ASN1InputStream asn1IS1 = null, asn1IS2 = null; + try { + asn1IS1 = new ASN1InputStream(crlNumberExtensionValue); + ASN1OctetString octetString = (ASN1OctetString)asn1IS1.readObject(); + byte[] octets = octetString.getOctets(); + asn1IS2 = new ASN1InputStream(octets); + ASN1Integer integer = (ASN1Integer)asn1IS2.readObject(); + return integer.getPositiveValue(); + } finally { + asn1IS2.close(); + asn1IS1.close(); } - - @SuppressWarnings("resource") - ASN1InputStream asn1InputStream = new ASN1InputStream(crlNumberExtensionValue); - ASN1OctetString octetString = (ASN1OctetString)asn1InputStream.readObject(); - byte[] octets = octetString.getOctets(); - asn1InputStream = new ASN1InputStream(octets); - ASN1Integer integer = (ASN1Integer)asn1InputStream.readObject(); - BigInteger crlNumber = integer.getPositiveValue(); - return crlNumber; - } catch (Exception e) { + } catch (IOException e) { throw new RuntimeException("I/O error: " + e.getMessage(), e); } } Modified: poi/trunk/src/ooxml/java/org/apache/poi/xslf/extractor/XSLFPowerPointExtractor.java URL: http://svn.apache.org/viewvc/poi/trunk/src/ooxml/java/org/apache/poi/xslf/extractor/XSLFPowerPointExtractor.java?rev=1706169&r1=1706168&r2=1706169&view=diff ============================================================================== --- poi/trunk/src/ooxml/java/org/apache/poi/xslf/extractor/XSLFPowerPointExtractor.java (original) +++ poi/trunk/src/ooxml/java/org/apache/poi/xslf/extractor/XSLFPowerPointExtractor.java Wed Sep 30 23:06:39 2015 @@ -22,7 +22,6 @@ import java.util.List; import org.apache.poi.POIXMLTextExtractor; import org.apache.poi.openxml4j.exceptions.OpenXML4JException; import org.apache.poi.openxml4j.opc.OPCPackage; -import org.apache.poi.xslf.XSLFSlideShow; import org.apache.poi.xslf.usermodel.DrawingParagraph; import org.apache.poi.xslf.usermodel.DrawingTextBody; import org.apache.poi.xslf.usermodel.DrawingTextPlaceholder; @@ -35,6 +34,7 @@ import org.apache.poi.xslf.usermodel.XSL import org.apache.poi.xslf.usermodel.XSLFSlide; import org.apache.poi.xslf.usermodel.XSLFSlideLayout; import org.apache.poi.xslf.usermodel.XSLFSlideMaster; +import org.apache.poi.xslf.usermodel.XSLFSlideShow; import org.apache.xmlbeans.XmlException; import org.openxmlformats.schemas.presentationml.x2006.main.CTComment; import org.openxmlformats.schemas.presentationml.x2006.main.CTCommentAuthor; Modified: poi/trunk/src/ooxml/java/org/apache/poi/xslf/usermodel/XMLSlideShow.java URL: http://svn.apache.org/viewvc/poi/trunk/src/ooxml/java/org/apache/poi/xslf/usermodel/XMLSlideShow.java?rev=1706169&r1=1706168&r2=1706169&view=diff ============================================================================== --- poi/trunk/src/ooxml/java/org/apache/poi/xslf/usermodel/XMLSlideShow.java (original) +++ poi/trunk/src/ooxml/java/org/apache/poi/xslf/usermodel/XMLSlideShow.java Wed Sep 30 23:06:39 2015 @@ -49,7 +49,6 @@ import org.apache.poi.util.POILogFactory import org.apache.poi.util.POILogger; import org.apache.poi.util.PackageHelper; import org.apache.poi.util.Units; -import org.apache.poi.xslf.XSLFSlideShow; import org.apache.xmlbeans.XmlException; import org.apache.xmlbeans.XmlObject; import org.apache.xmlbeans.XmlOptions; @@ -124,12 +123,6 @@ implements SlideShow 0 ) { + if( (typeAndMV & Types.MULTIVALUED_FLAG) != 0 ) { isMV = true; typeId -= Types.MULTIVALUED_FLAG; } Modified: poi/trunk/src/scratchpad/src/org/apache/poi/hslf/model/textproperties/BitMaskTextProp.java URL: http://svn.apache.org/viewvc/poi/trunk/src/scratchpad/src/org/apache/poi/hslf/model/textproperties/BitMaskTextProp.java?rev=1706169&r1=1706168&r2=1706169&view=diff ============================================================================== --- poi/trunk/src/scratchpad/src/org/apache/poi/hslf/model/textproperties/BitMaskTextProp.java (original) +++ poi/trunk/src/scratchpad/src/org/apache/poi/hslf/model/textproperties/BitMaskTextProp.java Wed Sep 30 23:06:39 2015 @@ -17,7 +17,6 @@ package org.apache.poi.hslf.model.textproperties; -import org.apache.poi.hslf.record.Record; import org.apache.poi.util.POILogFactory; import org.apache.poi.util.POILogger; --------------------------------------------------------------------- To unsubscribe, e-mail: commits-unsubscribe@poi.apache.org For additional commands, e-mail: commits-help@poi.apache.org