LibreOffice Module xmerge (master) 1
SheetMerge.java
Go to the documentation of this file.
1/*
2 * This file is part of the LibreOffice project.
3 *
4 * This Source Code Form is subject to the terms of the Mozilla Public
5 * License, v. 2.0. If a copy of the MPL was not distributed with this
6 * file, You can obtain one at http://mozilla.org/MPL/2.0/.
7 *
8 * This file incorporates work covered by the following license notice:
9 *
10 * Licensed to the Apache Software Foundation (ASF) under one or more
11 * contributor license agreements. See the NOTICE file distributed
12 * with this work for additional information regarding copyright
13 * ownership. The ASF licenses this file to you under the Apache
14 * License, Version 2.0 (the "License"); you may not use this file
15 * except in compliance with the License. You may obtain a copy of
16 * the License at http://www.apache.org/licenses/LICENSE-2.0 .
17 */
18
19package org.openoffice.xmerge.merger.merge;
20
21import org.w3c.dom.Node;
22import org.w3c.dom.NodeList;
23
26
37public final class SheetMerge extends DocumentMerge {
38
46 super(cc, merge);
47 }
48
54 @Override
55 protected void removeNode(Node node) {
56 clearRow(node);
57 }
58
64 private void clearRow(Node node) {
65 NodeList children = node.getChildNodes();
66 int numOfChildren = children.getLength();
67
68 // clear all the cells under the row node but maintain any unsupported
69 // features
70 // TODO: we can actually check anything left after the clear up.
71 // if there is nothing left, then we can even delete the cell nodes
72 for (int i = 0; i < numOfChildren; i++) {
73 SheetUtil.emptyCell(cc_, children.item(i));
74 }
75 }
76}
This is an implementation of the MergeAlgorithm interface.
ConverterCapabilities cc_
The capabilities of this converter.
This class extends the DocumentMerge class.
Definition: SheetMerge.java:37
SheetMerge(ConverterCapabilities cc, NodeMergeAlgorithm merge)
Constructor.
Definition: SheetMerge.java:45
void clearRow(Node node)
Clear the row corresponding to the Node.
Definition: SheetMerge.java:64
void removeNode(Node node)
Remove specified Node.
Definition: SheetMerge.java:55
Utility methods to handle sheet XML tree.
Definition: SheetUtil.java:32
static void emptyCell(ConverterCapabilities cc, Node node)
Empty the content of a cell value.
Definition: SheetUtil.java:50
A ConverterCapabilities object is used by DocumentMerger implementations.
This is an interface for a MergeAlgorithm to merge two Node objects.
int i
The DiffAlgorithm and MergeAlgorithm are used to provide the merge capabilities of this project.
Provides interfaces for converting between two Document formats, and supports a "merge" interface for...
Definition: Convert.java:19