+/* ====================================================================
+ Licensed to the Apache Software Foundation (ASF) under one or more
+ contributor license agreements. See the NOTICE file distributed with
+ this work for additional information regarding copyright ownership.
+ The ASF licenses this file to You under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with
+ the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+==================================================================== */
package org.apache.poi.xdgf.extractor;
import java.io.IOException;
final SortedMap<Long, T> _baseItems;
final SortedMap<Long, T> _masterItems;
+
+ private static final class EmptyIterator<T> implements Iterator<T> {
+
+ public boolean hasNext() {
+ return false;
+ }
+
+ public T next() {
+ return null;
+ }
+
+ }
public CombinedIterable(SortedMap<Long, T> baseItems,
SortedMap<Long, T> masterItems) {
if (_masterItems != null)
vmasterI = _masterItems.entrySet().iterator();
else
- vmasterI = Collections.emptyIterator();
+ vmasterI = new EmptyIterator<Entry<Long, T>>();
return new Iterator<T>() {
+/* ====================================================================
+ Licensed to the Apache Software Foundation (ASF) under one or more
+ contributor license agreements. See the NOTICE file distributed with
+ this work for additional information regarding copyright ownership.
+ The ASF licenses this file to You under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with
+ the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+==================================================================== */
package org.apache.poi.xdgf.usermodel.shape;
import java.awt.geom.AffineTransform;
import java.io.FileOutputStream;
import java.io.OutputStream;
import java.io.PrintStream;
+import java.io.UnsupportedEncodingException;
import org.apache.poi.xdgf.usermodel.XDGFPage;
import org.apache.poi.xdgf.usermodel.XDGFShape;
public class HierarchyPrinter {
public static void printHierarchy(XDGFPage page, File outDir)
- throws FileNotFoundException {
+ throws FileNotFoundException, UnsupportedEncodingException {
File pageFile = new File(outDir, "page" + page.getPageNumber() + "-"
+ Util.sanitizeFilename(page.getName()) + ".txt");
OutputStream os = new FileOutputStream(pageFile);
- PrintStream pos = new PrintStream(os);
+ PrintStream pos = new PrintStream(os, false, "utf-8");
printHierarchy(page, pos);
}
public static void printHierarchy(XmlVisioDocument document,
- String outDirname) throws FileNotFoundException {
+ String outDirname) throws FileNotFoundException, UnsupportedEncodingException {
File outDir = new File(outDirname);
+/* ====================================================================
+ Licensed to the Apache Software Foundation (ASF) under one or more
+ contributor license agreements. See the NOTICE file distributed with
+ this work for additional information regarding copyright ownership.
+ The ASF licenses this file to You under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with
+ the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+==================================================================== */
package org.apache.poi.xdgf.extractor;
import java.io.IOException;