javadoc: replace invalid self enclosing elements

git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1802110 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
PJ Fanning 2017-07-17 08:24:24 +00:00
parent 9b3812d027
commit 810d03f499
272 changed files with 854 additions and 854 deletions

View File

@ -140,15 +140,15 @@ public final class HSSFReadWrite {
* Method main
*
* Given 1 argument takes that as the filename, inputs it and dumps the
* cell values/types out to sys.out.<br/>
* cell values/types out to sys.out.<br>
*
* given 2 arguments where the second argument is the word "write" and the
* first is the filename - writes out a sample (test) spreadsheet
* see {@link HSSFReadWrite#testCreateSampleSheet(String)}.<br/>
* see {@link HSSFReadWrite#testCreateSampleSheet(String)}.<br>
*
* given 2 arguments where the first is an input filename and the second
* an output filename (not write), attempts to fully read in the
* spreadsheet and fully write it out.<br/>
* spreadsheet and fully write it out.<br>
*
* given 3 arguments where the first is an input filename and the second an
* output filename (not write) and the third is "modify1", attempts to read in the

View File

@ -64,11 +64,11 @@ public class SVSheetTable extends JTable {
/**
* This field is the magic number to convert from a Character width to a java
* pixel width.
* <p/>
* <p>
* When the "normal" font size in a workbook changes, this effects all of the
* heights and widths. Unfortunately there is no way to retrieve this
* information, hence the MAGIC number.
* <p/>
* <p>
* This number may only work for the normal style font size of Arial size 10.
*/
private static final int magicCharFactor = 7;

View File

@ -29,7 +29,7 @@ import java.util.List;
* initial paint of the component, and then executed at the appropriate time,
* such as at the end of the containing object's {@link
* JComponent#paintChildren(Graphics)} method.
* <p/>
* <p>
* It is up to the parent component to invoke the {@link #paint(Graphics2D)}
* method of this objet at that appropriate time.
*
@ -153,7 +153,7 @@ public class PendingPaintings {
* is retrieved from the first object found that has a {@link
* #PENDING_PAINTINGS} client property, starting with this component and
* looking up its ancestors (parent, parent's parent, etc.)
* <p/>
* <p>
* This allows any descendant of a component that has a {@link
* PendingPaintings} property to add its own pending paintings.
*

View File

@ -46,7 +46,7 @@ import org.xml.sax.XMLReader;
* org.apache.poi.hssf.eventusermodel.examples.
* As with the HSSF version, this tries to spot missing
* rows and cells, and output empty entries for them.
* <p/>
* <p>
* Data sheets are read using a SAX parser to keep the
* memory footprint relatively small, so this should be
* able to read enormous workbooks. The styles table and
@ -55,7 +55,7 @@ import org.xml.sax.XMLReader;
* (read-only) class is used for the shared string table
* because the standard POI SharedStringsTable grows very
* quickly with the number of unique strings.
* <p/>
* <p>
* For a more advanced implementation of SAX event parsing
* of XLSX files, see {@link XSSFEventBasedExcelExtractor}
* and {@link XSSFSheetXMLHandler}. Note that for many cases,

View File

@ -144,14 +144,14 @@ public class UpdateEmbeddedDoc {
* Called to test whether or not the embedded workbook was correctly
* updated. This method simply recovers the first cell from the first row
* of the first workbook and tests the value it contains.
* <p/>
* <p>
* Note that execution will not continue up to the assertion as the
* embedded workbook is now corrupted and causes an IllegalArgumentException
* with the following message
* <p/>
* <p>
* <em>java.lang.IllegalArgumentException: Your InputStream was neither an
* OLE2 stream, nor an OOXML stream</em>
* <p/>
* <p>
* to be thrown when the WorkbookFactory.createWorkbook(InputStream) method
* is executed.
*

View File

@ -37,7 +37,7 @@ import org.apache.tools.ant.ProjectHelper;
/**
* A BuildFileTest is a TestCase which executes targets from an Ant buildfile
* for testing.
* <p/>
* <p>
* This class provides a number of utility methods for particular build file
* tests which extend this class.
*
@ -73,7 +73,7 @@ public abstract class BuildFileTest extends TestCase {
/**
* Automatically calls the target called "tearDown"
* from the build file tested if it exits.
* <p/>
* <p>
* This allows to use Ant tasks directly in the build file
* to clean up after each test. Note that no "setUp" target
* is automatically called, since it's trivial to have a
@ -215,7 +215,7 @@ public abstract class BuildFileTest extends TestCase {
/**
* Gets the log the BuildFileTest object.
* <p/>
* <p>
* Only valid if configureProject() has been called.
*
* @return The log value

View File

@ -75,7 +75,7 @@ public final class InternalSheet {
private PageSettingsBlock _psBlock;
/**
* 'Worksheet Protection Block'<br/>
* 'Worksheet Protection Block'<br>
* Aggregate object is always present, but possibly empty.
*/
private final WorksheetProtectionBlock _protectionBlock = new WorksheetProtectionBlock();

View File

@ -40,21 +40,21 @@ import org.apache.poi.ss.formula.ptg.Ref3DPtg;
import org.apache.poi.ss.usermodel.Workbook;
/**
* Link Table (OOO pdf reference: 4.10.3 ) <p/>
* Link Table (OOO pdf reference: 4.10.3 ) <p>
*
* The main data of all types of references is stored in the Link Table inside the Workbook Globals
* Substream (4.2.5). The Link Table itself is optional and occurs only if there are any
* references in the document.
* <p/>
* <p>
*
* In BIFF8 the Link Table consists of
* <ul>
* <li>zero or more EXTERNALBOOK Blocks<p/>
* <li>zero or more EXTERNALBOOK Blocks<p>
* each consisting of
* <ul>
* <li>exactly one EXTERNALBOOK (0x01AE) record</li>
* <li>zero or more EXTERNALNAME (0x0023) records</li>
* <li>zero or more CRN Blocks<p/>
* <li>zero or more CRN Blocks<p>
* each consisting of
* <ul>
* <li>exactly one XCT (0x0059)record</li>

View File

@ -74,7 +74,7 @@ import org.apache.poi.hssf.record.aggregates.WorksheetProtectionBlock;
import org.apache.poi.hssf.record.pivottable.ViewDefinitionRecord;
/**
* Finds correct insert positions for records in workbook streams<p/>
* Finds correct insert positions for records in workbook streams<p>
*
* See OOO excelfileformat.pdf sec. 4.2.5 'Record Order in a BIFF8 Workbook Stream'
*/

View File

@ -91,12 +91,12 @@ public class DConRefRecord extends StandardRecord
/**
* The link's path string. This is the <code>rgb</code> field of a
* <code>XLUnicodeStringNoCch</code>. Therefore it will contain at least one leading special
* character (0x01 or 0x02) and probably other ones.<p/>
* character (0x01 or 0x02) and probably other ones.<p>
* @see <A href="http://msdn.microsoft.com/en-us/library/dd923491(office.12).aspx">
* DConFile [MS-XLS s. 2.5.77]</A> and
* <A href="http://msdn.microsoft.com/en-us/library/dd950157(office.12).aspx">
* VirtualPath [MS-XLS s. 2.5.69]</a>
* <p/>
* <p>
*/
private byte[] path;
/**

View File

@ -47,7 +47,7 @@ public final class ExternalNameRecord extends StandardRecord {
/**
* 'rgoper' / 'Last received results of the DDE link'
* (seems to be only applicable to DDE links)<br/>
* (seems to be only applicable to DDE links)<br>
* Logically this is a 2-D array, which has been flattened into 1-D array here.
*/
private Object[] _ddeValues;

View File

@ -142,9 +142,9 @@ public final class HyperlinkRecord extends StandardRecord implements Cloneable {
}
/**
* Read a GUID in standard text form e.g.<br/>
* Read a GUID in standard text form e.g.<br>
* 13579BDF-0246-8ACE-0123-456789ABCDEF
* <br/> -&gt; <br/>
* <br> -&gt; <br>
* 0x13579BDF, 0x0246, 0x8ACE 0x0123456789ABCDEF
*/
public static GUID parse(String rep) {
@ -240,7 +240,7 @@ public final class HyperlinkRecord extends StandardRecord implements Cloneable {
private String _address;
/**
* Text describing a place in document. In Excel UI, this is appended to the
* address, (after a '#' delimiter).<br/>
* address, (after a '#' delimiter).<br>
* This field is optional. If present, the {@link #HLINK_PLACE} must be set.
*/
private String _textMark;

View File

@ -47,7 +47,7 @@ public final class NoteRecord extends StandardRecord implements Cloneable {
private boolean field_5_hasMultibyte;
private String field_6_author;
/**
* Saves padding byte value to reduce delta during round-trip serialization.<br/>
* Saves padding byte value to reduce delta during round-trip serialization.<br>
*
* The documentation is not clear about how padding should work. In any case
* Excel(2007) does something different.

View File

@ -136,7 +136,7 @@ public final class RecordFactory {
private static final Class<?>[] CONSTRUCTOR_ARGS = { RecordInputStream.class, };
/**
* contains the classes for all the records we want to parse.<br/>
* contains the classes for all the records we want to parse.<br>
* Note - this most but not *every* subclass of Record.
*/
@SuppressWarnings("unchecked")

View File

@ -85,11 +85,11 @@ public final class FormulaRecordAggregate extends RecordAggregate implements Cel
* the {@link Ptg} tokens for the formula. However as it turns out in these
* cases, Excel encodes the unshared {@link Ptg} tokens in the right place (inside the {@link
* FormulaRecord}). So the the only thing that needs to be done is to ignore the erroneous
* shared formula flag.<br/>
* shared formula flag.<br>
*
* This method may also be used for setting breakpoints to help diagnose issues regarding the
* abnormally-set 'shared formula' flags.
* (see TestValueRecordsAggregate.testSpuriousSharedFormulaFlag()).<p/>
* (see TestValueRecordsAggregate.testSpuriousSharedFormulaFlag()).<p>
*/
private static void handleMissingSharedFormulaRecord(FormulaRecord formula) {
// make sure 'unshared' formula is actually available

View File

@ -42,7 +42,7 @@ public final class PageSettingsBlock extends RecordAggregate {
private static final ContinueRecord[] EMPTY_CONTINUE_RECORD_ARRAY = { };
private final Record _pls;
/**
* holds any continue records found after the PLS record.<br/>
* holds any continue records found after the PLS record.<br>
* This would not be required if PLS was properly interpreted.
* Currently, PLS is an {@link UnknownRecord} and does not automatically
* include any trailing {@link ContinueRecord}s.

View File

@ -166,7 +166,7 @@ public final class RowRecordsAggregate extends RecordAggregate {
}
/** Returns the number of row blocks.
* <p/>The row blocks are goupings of rows that contain the DBCell record
* <p>The row blocks are goupings of rows that contain the DBCell record
* after them
*/
public int getRowBlockCount() {

View File

@ -28,7 +28,7 @@ import org.apache.poi.util.RecordFormatException;
/**
* Groups the sheet protection records for a worksheet.
* <p/>
* <p>
*
* See OOO excelfileformat.pdf sec 4.18.2 'Sheet Protection in a Workbook
* (BIFF5-BIFF8)'
@ -124,14 +124,14 @@ public final class WorksheetProtectionBlock extends RecordAggregate {
* This method reads {@link WorksheetProtectionBlock} records from the supplied RecordStream
* until the first non-WorksheetProtectionBlock record is encountered. As each record is read,
* it is incorporated into this WorksheetProtectionBlock.
* <p/>
* <p>
* As per the OOO documentation, the protection block records can be expected to be written
* together (with no intervening records), but earlier versions of POI (prior to Jun 2009)
* didn't do this. Workbooks with sheet protection created by those earlier POI versions
* seemed to be valid (Excel opens them OK). So PO allows continues to support reading of files
* with non continuous worksheet protection blocks.
*
* <p/>
* <p>
* <b>Note</b> - when POI writes out this WorksheetProtectionBlock, the records will always be
* written in one consolidated block (in the standard ordering) regardless of how scattered the
* records were when they were originally read.

View File

@ -25,7 +25,7 @@ import org.apache.poi.util.HexDump;
import org.apache.poi.util.LittleEndianOutput;
/**
* The area format record is used to define the colours and patterns for an area.<p/>
* The area format record is used to define the colours and patterns for an area.<p>
*
* @author Glen Stampoultzis (glens at apache.org)
*/

View File

@ -25,7 +25,7 @@ import org.apache.poi.util.HexDump;
import org.apache.poi.util.LittleEndianOutput;
/**
* The area record is used to define a area chart.<p/>
* The area record is used to define a area chart.<p>
*
* @author Glen Stampoultzis (glens at apache.org)
*/

View File

@ -23,7 +23,7 @@ import org.apache.poi.util.HexDump;
import org.apache.poi.util.LittleEndianOutput;
/**
* The axis line format record defines the axis type details.<p/>
* The axis line format record defines the axis type details.<p>
*
* @author Glen Stampoultzis (glens at apache.org)
*/

View File

@ -25,7 +25,7 @@ import org.apache.poi.util.HexDump;
import org.apache.poi.util.LittleEndianOutput;
/**
* The axis options record provides unit information and other various tidbits about the axis.<p/>
* The axis options record provides unit information and other various tidbits about the axis.<p>
*
* @author Andrew C. Oliver(acoliver at apache.org)
*/

View File

@ -23,7 +23,7 @@ import org.apache.poi.util.HexDump;
import org.apache.poi.util.LittleEndianOutput;
/**
* The axis size and location<p/>
* The axis size and location<p>
*
* @author Glen Stampoultzis (glens at apache.org)
*/

View File

@ -23,7 +23,7 @@ import org.apache.poi.util.HexDump;
import org.apache.poi.util.LittleEndianOutput;
/**
* The axis record defines the type of an axis.<p/>
* The axis record defines the type of an axis.<p>
*
* @author Glen Stampoultzis (glens at apache.org)
*/

View File

@ -23,7 +23,7 @@ import org.apache.poi.util.HexDump;
import org.apache.poi.util.LittleEndianOutput;
/**
* The number of axes used on a chart.<p/>
* The number of axes used on a chart.<p>
*
* @author Glen Stampoultzis (glens at apache.org)
*/

View File

@ -25,7 +25,7 @@ import org.apache.poi.util.HexDump;
import org.apache.poi.util.LittleEndianOutput;
/**
* The bar record is used to define a bar chart.<p/>
* The bar record is used to define a bar chart.<p>
*
* @author Glen Stampoultzis (glens at apache.org)
*/

View File

@ -23,7 +23,7 @@ import org.apache.poi.util.HexDump;
import org.apache.poi.util.LittleEndianOutput;
/**
* CATLAB - Category Labels (0x0856)<br/>
* CATLAB - Category Labels (0x0856)<br>
*
* @author Patrick Cheng
*/

View File

@ -25,7 +25,7 @@ import org.apache.poi.util.HexDump;
import org.apache.poi.util.LittleEndianOutput;
/**
* This record refers to a category or series axis and is used to specify label/tickmark frequency.<p/>
* This record refers to a category or series axis and is used to specify label/tickmark frequency.<p>
*
* @author Glen Stampoultzis (glens at apache.org)
*/

View File

@ -23,7 +23,7 @@ import org.apache.poi.util.HexDump;
import org.apache.poi.util.LittleEndianOutput;
/**
* ENDBLOCK - Chart Future Record Type End Block (0x0853)<br/>
* ENDBLOCK - Chart Future Record Type End Block (0x0853)<br>
*
* @author Patrick Cheng
*/

View File

@ -23,7 +23,7 @@ import org.apache.poi.util.HexDump;
import org.apache.poi.util.LittleEndianOutput;
/**
* The font index record indexes into the font table for the text record.<p/>
* The font index record indexes into the font table for the text record.<p>
*
* @author Glen Stampoultzis (glens at apache.org)
*/

View File

@ -25,7 +25,7 @@ import org.apache.poi.util.HexDump;
import org.apache.poi.util.LittleEndianOutput;
/**
* The series label record defines the type of label associated with the data format record.<p/>
* The series label record defines the type of label associated with the data format record.<p>
*
* @author Glen Stampoultzis (glens at apache.org)
*/

View File

@ -25,7 +25,7 @@ import org.apache.poi.util.HexDump;
import org.apache.poi.util.LittleEndianOutput;
/**
* The Tick record defines how tick marks and label positioning/formatting<p/>
* The Tick record defines how tick marks and label positioning/formatting<p>
*
* @author Andrew C. Oliver(acoliver at apache.org)
*/

View File

@ -35,11 +35,11 @@ import org.apache.poi.util.POILogger;
import org.apache.poi.util.StringUtil;
/**
* Title: Unicode String<p/>
* Title: Unicode String<p>
* Description: Unicode String - just standard fields that are in several records.
* It is considered more desirable then repeating it in all of them.<p/>
* This is often called a XLUnicodeRichExtendedString in MS documentation.<p/>
* REFERENCE: PG 264 Microsoft Excel 97 Developer's Kit (ISBN: 1-57231-498-2)<p/>
* It is considered more desirable then repeating it in all of them.<p>
* This is often called a XLUnicodeRichExtendedString in MS documentation.<p>
* REFERENCE: PG 264 Microsoft Excel 97 Developer's Kit (ISBN: 1-57231-498-2)<p>
* REFERENCE: PG 951 Excel Binary File Format (.xls) Structure Specification v20091214
*/
public class UnicodeString implements Comparable<UnicodeString> {

View File

@ -65,7 +65,7 @@ final class UnknownLengthRecordOutput implements LittleEndianOutput {
return MAX_DATA_SIZE - _size;
}
/**
* Finishes writing the current record and updates 'ushort size' field.<br/>
* Finishes writing the current record and updates 'ushort size' field.<br>
* After this method is called, only {@link #getTotalSize()} may be called.
*/
public void terminate() {

View File

@ -24,7 +24,7 @@ import org.apache.poi.util.LittleEndianOutput;
import org.apache.poi.util.StringUtil;
/**
* SXDI - Data Item (0x00C5)<br/>
* SXDI - Data Item (0x00C5)<br>
*
* @author Patrick Cheng
*/

View File

@ -25,7 +25,7 @@ import org.apache.poi.util.RecordFormatException;
import org.apache.poi.util.StringUtil;
/**
* SXVDEX - Extended PivotTable View Fields (0x0100)<br/>
* SXVDEX - Extended PivotTable View Fields (0x0100)<br>
*
* @author Patrick Cheng
*/

View File

@ -24,7 +24,7 @@ import org.apache.poi.util.LittleEndianOutput;
import org.apache.poi.util.RecordFormatException;
/**
* SXPI - Page Item (0x00B6)<br/>
* SXPI - Page Item (0x00B6)<br>
*
* @author Patrick Cheng
*/

View File

@ -23,7 +23,7 @@ import org.apache.poi.util.HexDump;
import org.apache.poi.util.LittleEndianOutput;
/**
* SXIDSTM - Stream ID (0x00D5)<br/>
* SXIDSTM - Stream ID (0x00D5)<br>
*
* @author Patrick Cheng
*/

View File

@ -24,7 +24,7 @@ import org.apache.poi.util.LittleEndianOutput;
import org.apache.poi.util.StringUtil;
/**
* SXVIEW - View Definition (0x00B0)<br/>
* SXVIEW - View Definition (0x00B0)<br>
*/
public final class ViewDefinitionRecord extends StandardRecord {
public static final short sid = 0x00B0;

View File

@ -24,7 +24,7 @@ import org.apache.poi.util.LittleEndianOutput;
import org.apache.poi.util.StringUtil;
/**
* SXVD - View Fields (0x00B1)<br/>
* SXVD - View Fields (0x00B1)<br>
*
* @author Patrick Cheng
*/

View File

@ -23,7 +23,7 @@ import org.apache.poi.util.HexDump;
import org.apache.poi.util.LittleEndianOutput;
/**
* SXVS - View Source (0x00E3)<br/>
* SXVS - View Source (0x00E3)<br>
*
* @author Patrick Cheng
*/

View File

@ -806,7 +806,7 @@ public class HSSFCell implements Cell {
/**
* Chooses a new boolean value for the cell when its type is changing.<p/>
* Chooses a new boolean value for the cell when its type is changing.<p>
*
* Usually the caller is calling setCellType() with the intention of calling
* setCellValue(boolean) straight afterwards. This method only exists to give

View File

@ -28,10 +28,10 @@ import org.apache.poi.ss.usermodel.BuiltinFormats;
import org.apache.poi.ss.usermodel.DataFormat;
/**
* Identifies both built-in and user defined formats within a workbook.<p/>
* See {@link BuiltinFormats} for a list of supported built-in formats.<p/>
* Identifies both built-in and user defined formats within a workbook.<p>
* See {@link BuiltinFormats} for a list of supported built-in formats.<p>
*
* <b>International Formats</b><br/>
* <b>International Formats</b><br>
* Since version 2003 Excel has supported international formats. These are denoted
* with a prefix "[$-xxx]" (where xxx is a 1-7 digit hexadecimal number).
* See the Microsoft article

View File

@ -36,7 +36,7 @@ import org.apache.poi.ss.usermodel.RichTextString;
import org.apache.poi.ss.usermodel.Workbook;
/**
* Evaluates formula cells.<p/>
* Evaluates formula cells.<p>
*
* For performance reasons, this class keeps a cache of all previously calculated intermediate
* cell values. Be sure to call {@link #clearAllCachedResultValues()} if any workbook cells are changed between

View File

@ -30,7 +30,7 @@ import org.apache.poi.util.HexDump;
/**
* Represents binary object (i.e. OLE) data stored in the file. Eg. A GIF, JPEG etc...
* <p/>
* <p>
* Right now, 13, july, 2012 can not be created from scratch
*/
public final class HSSFObjectData extends HSSFPicture implements ObjectData {

View File

@ -126,9 +126,9 @@ public class HSSFPicture extends HSSFSimpleShape implements Picture {
* If the default font is changed the resized image can be streched vertically or horizontally.
* </p>
* <p>
* <code>resize(1.0,1.0)</code> keeps the original size,<br/>
* <code>resize(0.5,0.5)</code> resize to 50% of the original,<br/>
* <code>resize(2.0,2.0)</code> resizes to 200% of the original.<br/>
* <code>resize(1.0,1.0)</code> keeps the original size,<br>
* <code>resize(0.5,0.5)</code> resize to 50% of the original,<br>
* <code>resize(2.0,2.0)</code> resizes to 200% of the original.<br>
* <code>resize({@link Double#MAX_VALUE},{@link Double#MAX_VALUE})</code> resizes to the dimension of the embedded image.
* </p>
*

View File

@ -521,7 +521,7 @@ public final class HSSFSheet implements org.apache.poi.ss.usermodel.Sheet {
* <code>
* Truncate([numChars*7+5]/7*256)/256 = 8;
* </code>
* <p/>
* <p>
* which gives <code>7.29</code>.
*
* @param columnIndex - the column to set (0-based)

View File

@ -44,7 +44,7 @@ public final class HSSFSheetConditionalFormatting implements SheetConditionalFor
/**
* A factory method allowing to create a conditional formatting rule
* with a cell comparison operator<p/>
* with a cell comparison operator<p>
* TODO - formulas containing cell references are currently not parsed properly
*
* @param comparisonOperation - a constant value from
@ -83,7 +83,7 @@ public final class HSSFSheetConditionalFormatting implements SheetConditionalFor
/**
* A factory method allowing to create a conditional formatting rule with a formula.<br>
*
* The formatting rules are applied by Excel when the value of the formula not equal to 0.<p/>
* The formatting rules are applied by Excel when the value of the formula not equal to 0.<p>
* TODO - formulas containing cell references are currently not parsed properly
* @param formula - formula for the valued, compared with the cell
*/

View File

@ -1061,11 +1061,11 @@ public final class HSSFWorkbook extends POIDocument implements org.apache.poi.ss
}
/**
* Removes sheet at the given index.<p/>
* Removes sheet at the given index.<p>
*
* Care must be taken if the removed sheet is the currently active or only selected sheet in
* the workbook. There are a few situations when Excel must have a selection and/or active
* sheet. (For example when printing - see Bug 40414).<br/>
* sheet. (For example when printing - see Bug 40414).<br>
*
* This method makes sure that if the removed sheet was active, another sheet will become
* active in its place. Furthermore, if the removed sheet was the only selected sheet, another

View File

@ -26,7 +26,7 @@ import org.apache.poi.ss.SpreadsheetVersion;
public final class AreaReference extends org.apache.poi.ss.util.AreaReference {
/**
* Create an area ref from a string representation. Sheet names containing special characters should be
* delimited and escaped as per normal syntax rules for formulas.<br/>
* delimited and escaped as per normal syntax rules for formulas.<br>
* The area reference must be contiguous (i.e. represent a single rectangle, not a union of rectangles)
*/
public AreaReference(String reference) {

View File

@ -22,7 +22,7 @@ import org.apache.poi.util.LittleEndianInput;
import org.apache.poi.util.LittleEndianOutput;
/**
* See OOO documentation: excelfileformat.pdf sec 2.5.14 - 'Cell Range Address'<p/>
* See OOO documentation: excelfileformat.pdf sec 2.5.14 - 'Cell Range Address'<p>
*
* Implements a CellRangeAddress with 8-but column fields.
*/

View File

@ -45,7 +45,7 @@ import org.apache.poi.util.StringUtil;
@Internal
public class CryptoFunctions {
/**
* <p><cite>2.3.4.7 ECMA-376 Document Encryption Key Generation (Standard Encryption)<br/>
* <p><cite>2.3.4.7 ECMA-376 Document Encryption Key Generation (Standard Encryption)<br>
* 2.3.4.11 Encryption Key Generation (Agile Encryption)</cite></p>
*
* <p>The encryption key for ECMA-376 document encryption [ECMA-376] using agile
@ -133,9 +133,9 @@ public class CryptoFunctions {
* generated by using the following method, where H() is a hash function that MUST be the same as
* specified in section 2.3.4.11 and a plus sign (+) represents concatenation:</p>
* <ul>
* <li>If a blockKey is provided, let IV be a hash of the KeySalt and the following value:<br/>
* <li>If a blockKey is provided, let IV be a hash of the KeySalt and the following value:<br>
* {@code blockKey: IV = H(KeySalt + blockKey)}</li>
* <li>If a blockKey is not provided, let IV be equal to the following value:<br/>
* <li>If a blockKey is not provided, let IV be equal to the following value:<br>
* {@code KeySalt:IV = KeySalt}</li>
* <li>If the number of bytes in the value of IV is less than the the value of the blockSize attribute
* corresponding to the cipherAlgorithm attribute, pad the array of bytes by appending 0x36 until

View File

@ -255,7 +255,7 @@ public class NPOIFSFileSystem extends BlockStore
/**
* Create a POIFSFileSystem from an <tt>InputStream</tt>. Normally the stream is read until
* EOF. The stream is always closed.<p/>
* EOF. The stream is always closed.<p>
*
* Some streams are usable after reaching EOF (typically those that return <code>true</code>
* for <tt>markSupported()</tt>). In the unlikely case that the caller has such a stream

View File

@ -96,7 +96,7 @@ public class OPOIFSFileSystem
/**
* Create a OPOIFSFileSystem from an <tt>InputStream</tt>. Normally the stream is read until
* EOF. The stream is always closed.<p/>
* EOF. The stream is always closed.<p>
*
* Some streams are usable after reaching EOF (typically those that return <code>true</code>
* for <tt>markSupported()</tt>). In the unlikely case that the caller has such a stream

View File

@ -52,7 +52,7 @@ public class POIFSFileSystem
/**
* Create a POIFSFileSystem from an <tt>InputStream</tt>. Normally the stream is read until
* EOF. The stream is always closed.<p/>
* EOF. The stream is always closed.<p>
*
* Some streams are usable after reaching EOF (typically those that return <code>true</code>
* for <tt>markSupported()</tt>). In the unlikely case that the caller has such a stream

View File

@ -45,7 +45,7 @@ public final class BlockAllocationTableReader {
/**
* Maximum number size (in blocks) of the allocation table as supported by
* POI.<br/>
* POI.<br>
*
* This constant has been chosen to help POI identify corrupted data in the
* header block (rather than crash immediately with {@link OutOfMemoryError}

View File

@ -20,13 +20,13 @@ package org.apache.poi.poifs.storage;
/**
* Wraps a <tt>byte</tt> array and provides simple data input access.
* Internally, this class maintains a buffer read index, so that for the most part, primitive
* data can be read in a data-input-stream-like manner.<p/>
* data can be read in a data-input-stream-like manner.<p>
*
* Note - the calling class should call the {@link #available()} method to detect end-of-buffer
* and move to the next data block when the current is exhausted.
* For optimisation reasons, no error handling is performed in this class. Thus, mistakes in
* calling code ran may raise ugly exceptions here, like {@link ArrayIndexOutOfBoundsException},
* etc .<p/>
* etc .<p>
*
* The multi-byte primitive input methods ({@link #readUShortLE()}, {@link #readIntLE()} and
* {@link #readLongLE()}) have corresponding 'spanning read' methods which (when required) perform

View File

@ -222,7 +222,7 @@ public class CellDateFormatter extends CellFormatter {
/**
* {@inheritDoc}
* <p/>
* <p>
* For a date, this is <tt>"mm/d/y"</tt>.
*/
public void simpleValue(StringBuffer toAppendTo, Object value) {

View File

@ -211,7 +211,7 @@ public class CellElapsedFormatter extends CellFormatter {
/**
* {@inheritDoc}
* <p/>
* <p>
* For a date, this is <tt>"mm/d/y"</tt>.
*/
public void simpleValue(StringBuffer toAppendTo, Object value) {

View File

@ -43,7 +43,7 @@ import org.apache.poi.util.Removal;
* Format a value according to the standard Excel behavior. This "standard" is
* not explicitly documented by Microsoft, so the behavior is determined by
* experimentation; see the tests.
* <p/>
* <p>
* An Excel format has up to four parts, separated by semicolons. Each part
* specifies what to do with particular kinds of values, depending on the number
* of parts given:
@ -75,12 +75,12 @@ import org.apache.poi.util.Removal;
* fourth part (example: text in the cell's usual color, with the text value
* surround by brackets).</dd>
* </dl>
* <p/>
* <p>
* A given format part may specify a given Locale, by including something
* like <tt>[$$-409]</tt> or <tt>[$&pound;-809]</tt> or <tt>[$-40C]</tt>. These
* are (currently) largely ignored. You can use {@link DateFormatConverter}
* to look these up into Java Locales if desired.
* <p/>
* <p>
* In addition to these, there is a general format that is used when no format
* is specified. This formatting is presented by the {@link #GENERAL_FORMAT}
* object.

View File

@ -35,12 +35,12 @@ import static org.apache.poi.ss.format.CellFormatter.quote;
* Objects of this class represent a single part of a cell format expression.
* Each cell can have up to four of these for positive, zero, negative, and text
* values.
* <p/>
* <p>
* Each format part can contain a color, a condition, and will always contain a
* format specification. For example <tt>"[Red][>=10]#"</tt> has a color
* (<tt>[Red]</tt>), a condition (<tt>>=10</tt>) and a format specification
* (<tt>#</tt>).
* <p/>
* <p>
* This class also contains patterns for matching the subparts of format
* specification. These are used internally, but are made public in case other
* code has use for them.

View File

@ -583,7 +583,7 @@ public class CellNumberFormatter extends CellFormatter {
* the result is the original format, and that starting from that situation,
* the indexes of the original special characters can be used to place the new
* characters. As just described, this is not true for the exponent's sign.
* <p/>
* <p>
* So here is how we handle it:
*
* (1) When parsing the format, remove the sign from after the 'e' and put it
@ -847,7 +847,7 @@ public class CellNumberFormatter extends CellFormatter {
/**
* {@inheritDoc}
* <p/>
* <p>
* For a number, this is <tt>"#"</tt> for integer values, and <tt>"#.#"</tt>
* for floating-point values.
*/

View File

@ -74,7 +74,7 @@ public class CellTextFormatter extends CellFormatter {
/**
* {@inheritDoc}
* <p/>
* <p>
* For text, this is just printing the text.
*/
public void simpleValue(StringBuffer toAppendTo, Object value) {

View File

@ -29,7 +29,7 @@ import org.apache.poi.ss.usermodel.Sheet;
import org.apache.poi.ss.usermodel.Workbook;
/**
* Common functionality across file formats for evaluating formula cells.<p/>
* Common functionality across file formats for evaluating formula cells.<p>
*/
public abstract class BaseFormulaEvaluator implements FormulaEvaluator, WorkbookEvaluatorProvider {
protected final WorkbookEvaluator _bookEvaluator;

View File

@ -26,7 +26,7 @@ import org.apache.poi.ss.formula.eval.ValueEval;
import org.apache.poi.ss.formula.IEvaluationListener.ICacheEntry;
/**
* Stores the parameters that identify the evaluation of one cell.<br/>
* Stores the parameters that identify the evaluation of one cell.<br>
*/
abstract class CellCacheEntry implements ICacheEntry {
public static final CellCacheEntry[] EMPTY_ARRAY = { };

View File

@ -23,7 +23,7 @@ import java.util.Set;
import org.apache.poi.ss.formula.eval.ValueEval;
/**
* Stores details about the current evaluation of a cell.<br/>
* Stores details about the current evaluation of a cell.<br>
*/
final class CellEvaluationFrame {

View File

@ -36,12 +36,12 @@ import org.apache.poi.ss.util.CellReference;
import org.apache.poi.ss.util.SheetUtil;
/**
* Evaluates Conditional Formatting constraints.<p/>
* Evaluates Conditional Formatting constraints.<p>
*
* For performance reasons, this class keeps a cache of all previously evaluated rules and cells.
* Be sure to call {@link #clearAllCachedFormats()} if any conditional formats are modified, added, or deleted,
* and {@link #clearAllCachedValues()} whenever cell values change.
* <p/>
* <p>
*
*/
public class ConditionalFormattingEvaluator {
@ -53,9 +53,9 @@ public class ConditionalFormattingEvaluator {
* All the underlying structures, for both HSSF and XSSF, repeatedly go to the raw bytes/XML for the
* different pieces used in the ConditionalFormatting* structures. That's highly inefficient,
* and can cause significant lag when checking formats for large workbooks.
* <p/>
* <p>
* Instead we need a cached version that is discarded when definitions change.
* <p/>
* <p>
* Sheets don't implement equals, and since its an interface,
* there's no guarantee instances won't be recreated on the fly by some implementation.
* So we use sheet name.
@ -65,9 +65,9 @@ public class ConditionalFormattingEvaluator {
/**
* Evaluating rules for cells in their region(s) is expensive, so we want to cache them,
* and empty/reevaluate the cache when values change.
* <p/>
* <p>
* Rule lists are in priority order, as evaluated by Excel (smallest priority # for XSSF, definition order for HSSF)
* <p/>
* <p>
* CellReference implements equals().
*/
private final Map<CellReference, List<EvaluationConditionalFormatRule>> values = new HashMap<CellReference, List<EvaluationConditionalFormatRule>>();
@ -92,7 +92,7 @@ public class ConditionalFormattingEvaluator {
/**
* Call this whenever cell values change in the workbook, so condional formats are re-evaluated
* for all cells.
* <p/>
* <p>
* TODO: eventually this should work like {@link EvaluationCache#notifyUpdateCell(int, int, EvaluationCell)}
* and only clear values that need recalculation based on the formula dependency tree.
*/
@ -136,10 +136,10 @@ public class ConditionalFormattingEvaluator {
* This checks all applicable {@link ConditionalFormattingRule}s for the cell's sheet,
* in defined "priority" order, returning the matches if any. This is a property currently
* not exposed from <code>CTCfRule</code> in <code>XSSFConditionalFormattingRule</code>.
* <p/>
* <p>
* Most cells will have zero or one applied rule, but it is possible to define multiple rules
* that apply at the same time to the same cell, thus the List result.
* <p/>
* <p>
* Note that to properly apply conditional rules, care must be taken to offset the base
* formula by the relative position of the current cell, or the wrong value is checked.
* This is handled by {@link WorkbookEvaluator#evaluate(String, CellReference, CellRangeAddressBase)}.
@ -171,10 +171,10 @@ public class ConditionalFormattingEvaluator {
* This checks all applicable {@link ConditionalFormattingRule}s for the cell's sheet,
* in defined "priority" order, returning the matches if any. This is a property currently
* not exposed from <code>CTCfRule</code> in <code>XSSFConditionalFormattingRule</code>.
* <p/>
* <p>
* Most cells will have zero or one applied rule, but it is possible to define multiple rules
* that apply at the same time to the same cell, thus the List result.
* <p/>
* <p>
* Note that to properly apply conditional rules, care must be taken to offset the base
* formula by the relative position of the current cell, or the wrong value is checked.
* This is handled by {@link WorkbookEvaluator#evaluate(String, CellReference, CellRangeAddressBase)}.
@ -249,9 +249,9 @@ public class ConditionalFormattingEvaluator {
/**
* Conditional formatting rules can apply only to cells in the sheet to which they are attached.
* The POI data model does not have a back-reference to the owning sheet, so it must be passed in separately.
* <p/>
* <p>
* We could overload this with convenience methods taking a sheet name and sheet index as well.
* <p/>
* <p>
* @param sheet containing the rule
* @param conditionalFormattingIndex of the {@link ConditionalFormatting} instance in the sheet's array
* @param ruleIndex of the {@link ConditionalFormattingRule} instance within the {@link ConditionalFormatting}

View File

@ -44,12 +44,12 @@ import org.apache.poi.ss.util.CellReference;
import org.apache.poi.ss.util.SheetUtil;
/**
* Evaluates Data Validation constraints.<p/>
* Evaluates Data Validation constraints.<p>
*
* For performance reasons, this class keeps a cache of all previously retrieved {@link DataValidation} instances.
* Be sure to call {@link #clearAllCachedValues()} if any workbook validation definitions are
* added, modified, or deleted.
* <p/>
* <p>
* Changing cell values should be fine, as long as the corresponding {@link WorkbookEvaluator#clearAllCachedResultValues()}
* is called as well.
*
@ -58,7 +58,7 @@ public class DataValidationEvaluator {
/**
* Expensive to compute, so cache them as they are retrieved.
* <p/>
* <p>
* Sheets don't implement equals, and since its an interface,
* there's no guarantee instances won't be recreated on the fly by some implementation.
* So we use sheet name.
@ -157,10 +157,10 @@ public class DataValidationEvaluator {
* If {@link #getValidationForCell(CellReference)} returns an instance, and the
* {@link ValidationType} is {@link ValidationType#LIST}, return the valid
* values, whether they are from a static list or cell range.
* <p/>
* <p>
* For all other validation types, or no validation at all, this method
* returns null.
* <p/>
* <p>
* This method could throw an exception if the validation type is not LIST,
* but since this method is mostly useful in UI contexts, null seems the
* easier path.
@ -214,7 +214,7 @@ public class DataValidationEvaluator {
* Use the validation returned by {@link #getValidationForCell(CellReference)} if you
* want the error display details. This is the validation checked by this
* method, which attempts to replicate Excel's data validation rules.
* <p/>
* <p>
* Note that to properly apply some validations, care must be taken to
* offset the base validation formula by the relative position of the
* current cell, or the wrong value is checked.

View File

@ -21,7 +21,7 @@ import org.apache.poi.ss.usermodel.CellType;
/**
* Abstracts a cell for the purpose of formula evaluation. This interface represents both formula
* and non-formula cells.<br/>
* and non-formula cells.<br>
*
* For POI internal use only
*

View File

@ -51,12 +51,12 @@ import org.apache.poi.ss.util.CellRangeAddress;
* {@link ConditionalFormattingEvaluator}. This references a rule, its owning
* {@link ConditionalFormatting}, its priority order (lower index = higher priority in Excel),
* and the information needed to evaluate the rule for a given cell.
* <p/>
* <p>
* Having this all combined and cached avoids repeated access calls to the
* underlying structural objects, XSSF CT* objects and HSSF raw byte structures.
* Those objects can be referenced from here. This object will be out of sync if
* anything modifies the referenced structures' evaluation properties.
* <p/>
* <p>
* The assumption is that consuming applications will read the display properties once and
* create whatever style objects they need, caching those at the application level.
* Thus this class only caches values needed for evaluation, not display.
@ -225,7 +225,7 @@ public class EvaluationConditionalFormatRule implements Comparable<EvaluationCon
/**
* Per Excel Help, XSSF rule priority is sheet-wide, not just within the owning ConditionalFormatting object.
* This can be seen by creating 4 rules applying to two different ranges and examining the XML.
* <p/>
* <p>
* HSSF priority is based on definition/persistence order.
*
* @param o

View File

@ -20,7 +20,7 @@ package org.apache.poi.ss.formula;
import org.apache.poi.ss.formula.ptg.NamePtg;
import org.apache.poi.ss.formula.ptg.Ptg;
/**
* Abstracts a name record for formula evaluation.<br/>
* Abstracts a name record for formula evaluation.<br>
*
* For POI internal use only
*

View File

@ -20,7 +20,7 @@ package org.apache.poi.ss.formula;
import org.apache.poi.util.Internal;
/**
* Abstracts a sheet for the purpose of formula evaluation.<br/>
* Abstracts a sheet for the purpose of formula evaluation.<br>
*
* For POI internal use only
*

View File

@ -49,16 +49,16 @@ final class EvaluationTracker {
/**
* Notifies this evaluation tracker that evaluation of the specified cell is
* about to start.<br/>
* about to start.<br>
*
* In the case of a <code>true</code> return code, the caller should
* continue evaluation of the specified cell, and also be sure to call
* <tt>endEvaluate()</tt> when complete.<br/>
* <tt>endEvaluate()</tt> when complete.<br>
*
* In the case of a <code>null</code> return code, the caller should
* return an evaluation result of
* <tt>ErrorEval.CIRCULAR_REF_ERROR<tt>, and not call <tt>endEvaluate()</tt>.
* <br/>
* <br>
* @return <code>false</code> if the specified cell is already being evaluated
*/
public boolean startEvaluate(FormulaCellCacheEntry cce) {
@ -94,10 +94,10 @@ final class EvaluationTracker {
}
/**
* Notifies this evaluation tracker that the evaluation of the specified cell is complete. <p/>
* Notifies this evaluation tracker that the evaluation of the specified cell is complete. <p>
*
* Every successful call to <tt>startEvaluate</tt> must be followed by a call to <tt>endEvaluate</tt> (recommended in a finally block) to enable
* proper tracking of which cells are being evaluated at any point in time.<p/>
* proper tracking of which cells are being evaluated at any point in time.<p>
*
* Assuming a well behaved client, parameters to this method would not be
* required. However, they have been included to assert correct behaviour,

View File

@ -25,7 +25,7 @@ import org.apache.poi.ss.formula.udf.UDFFinder;
import org.apache.poi.util.Internal;
/**
* Abstracts a workbook for the purpose of formula evaluation.<br/>
* Abstracts a workbook for the purpose of formula evaluation.<br>
*
* For POI internal use only
*

View File

@ -18,7 +18,7 @@
package org.apache.poi.ss.formula;
/**
* Should be implemented by any {@link org.apache.poi.ss.formula.ptg.Ptg} subclass that needs has an extern sheet index <br/>
* Should be implemented by any {@link org.apache.poi.ss.formula.ptg.Ptg} subclass that needs has an extern sheet index <br>
*
* For POI internal use only
*

View File

@ -87,9 +87,9 @@ import org.apache.poi.util.POILogger;
* <term> ::= <factor> [ <mulop> <factor> ]*
* <factor> ::= <number> | (<expression>) | <cellRef> | <function>
* <function> ::= <functionName> ([expression [, expression]*])
* <p/>
* <p>
* For POI internal use only
* <p/>
* <p>
*/
@Internal
public final class FormulaParser {

View File

@ -25,7 +25,7 @@ import org.apache.poi.ss.util.AreaReference;
import org.apache.poi.ss.util.CellReference;
/**
* Abstracts a workbook for the purpose of formula parsing.<br/>
* Abstracts a workbook for the purpose of formula parsing.<br>
*
* For POI internal use only
*

View File

@ -28,7 +28,7 @@ import org.apache.poi.ss.formula.ptg.ParenthesisPtg;
import org.apache.poi.ss.formula.ptg.Ptg;
/**
* Common logic for rendering formulas.<br/>
* Common logic for rendering formulas.<br>
*
* For POI internal use only
*

View File

@ -22,7 +22,7 @@ import org.apache.poi.ss.formula.ptg.NamePtg;
import org.apache.poi.ss.formula.ptg.NameXPtg;
/**
* Abstracts a workbook for the purpose of converting formula to text.<br/>
* Abstracts a workbook for the purpose of converting formula to text.<br>
*
* For POI internal use only
*

View File

@ -20,7 +20,7 @@ package org.apache.poi.ss.formula;
import org.apache.poi.ss.formula.eval.ValueEval;
/**
* Tests can implement this class to track the internal working of the {@link WorkbookEvaluator}.<br/>
* Tests can implement this class to track the internal working of the {@link WorkbookEvaluator}.<br>
*
* For POI internal testing use only
*

View File

@ -19,12 +19,12 @@ package org.apache.poi.ss.formula;
/**
* Used to help optimise cell evaluation result caching by allowing applications to specify which
* parts of a workbook are <em>final</em>.<br/>
* parts of a workbook are <em>final</em>.<br>
* The term <b>final</b> is introduced here to denote immutability or 'having constant definition'.
* This classification refers to potential actions (on the evaluated workbook) by the evaluating
* application. It does not refer to operations performed by the evaluator ({@link
* WorkbookEvaluator}).<br/>
* <br/>
* WorkbookEvaluator}).<br>
* <br>
* <b>General guidelines</b>:
* <ul>
* <li>a plain value cell can be marked as 'final' if it will not be changed after the first call

View File

@ -38,18 +38,18 @@ import org.apache.poi.util.Removal;
* <li>value</li>
* <li>array</li>
* </ul>
* <p/>
* <p>
*
* The final operand class chosen for each token depends on the formula type and the token's place
* in the formula. If POI gets the operand class wrong, Excel <em>may</em> interpret the formula
* incorrectly. This condition is typically manifested as a formula cell that displays as '#VALUE!',
* but resolves correctly when the user presses F2, enter.<p/>
* but resolves correctly when the user presses F2, enter.<p>
*
* The logic implemented here was partially inspired by the description in
* "OpenOffice.org's Documentation of the Microsoft Excel File Format". The model presented there
* seems to be inconsistent with observed Excel behaviour (These differences have not been fully
* investigated). The implementation in this class has been heavily modified in order to satisfy
* concrete examples of how Excel performs the same logic (see TestRVA).<p/>
* concrete examples of how Excel performs the same logic (see TestRVA).<p>
*
* Hopefully, as additional important test cases are identified and added to the test suite,
* patterns might become more obvious in this code and allow for simplification.

View File

@ -162,7 +162,7 @@ public final class SheetNameFormatter {
/**
* Used to decide whether sheet names like 'AB123' need delimiting due to the fact that they
* look like cell references.
* <p/>
* <p>
* This code is currently being used for translating formulas represented with <code>Ptg</code>
* tokens into human readable text form. In formula expressions, a sheet name always has a
* trailing '!' so there is little chance for ambiguity. It doesn't matter too much what this
@ -177,7 +177,7 @@ public final class SheetNameFormatter {
*
* At the time of writing, POI's formula parser tolerates cell-like sheet names in formulas
* with or without delimiters. The same goes for Excel(2007), both manual and automated entry.
* <p/>
* <p>
* For better or worse this implementation attempts to replicate Excel's formula renderer.
* Excel uses range checking on the apparent 'row' and 'column' components. Note however that
* the maximum sheet size varies across versions.
@ -190,7 +190,7 @@ public final class SheetNameFormatter {
/**
* Note - this method assumes the specified rawSheetName has only letters and digits. It
* cannot be used to match absolute or range references (using the dollar or colon char).
* <p/>
* <p>
* Some notable cases:
* <blockquote><table border="0" cellpadding="1" cellspacing="0"
* summary="Notable cases.">

View File

@ -19,7 +19,7 @@ package org.apache.poi.ss.formula;
/**
* Should be implemented by any {@link org.apache.poi.ss.formula.ptg.Ptg} subclass that needs a workbook to render its formula.
* <br/>
* <br>
*
* For POI internal use only
*

View File

@ -44,11 +44,11 @@ import org.apache.poi.util.Internal;
import org.apache.poi.util.POILogFactory;
import org.apache.poi.util.POILogger;
/**
* Evaluates formula cells.<p/>
* Evaluates formula cells.<p>
*
* For performance reasons, this class keeps a cache of all previously calculated intermediate
* cell values. Be sure to call {@link #clearAllCachedResultValues()} if any workbook cells are changed between
* calls to evaluate~ methods on this class.<br/>
* calls to evaluate~ methods on this class.<br>
*
* For POI internal use only
*
@ -595,7 +595,7 @@ public final class WorkbookEvaluator {
/**
* returns an appropriate Eval impl instance for the Ptg. The Ptg must be
* one of: Area3DPtg, AreaPtg, ReferencePtg, Ref3DPtg, IntPtg, NumberPtg,
* StringPtg, BoolPtg <br/>special Note: OperationPtg subtypes cannot be
* StringPtg, BoolPtg <br>special Note: OperationPtg subtypes cannot be
* passed here!
*/
private ValueEval getEvalForPtg(Ptg ptg, OperationEvaluationContext ec) {

View File

@ -24,11 +24,11 @@ import org.apache.poi.ss.formula.eval.EvaluationException;
import org.apache.poi.ss.formula.eval.ValueEval;
import org.apache.poi.ss.formula.functions.FreeRefFunction;
/**
* Implementation of 'Analysis Toolpak' Excel function IFERROR()<br/>
* Implementation of 'Analysis Toolpak' Excel function IFERROR()<br>
*
* Returns an error text if there is an error in the evaluation<p/>
* Returns an error text if there is an error in the evaluation<p>
*
* <b>Syntax</b><br/>
* <b>Syntax</b><br>
* <b>IFERROR</b>(<b>expression</b>, <b>string</b>)
*
* @author Johan Karlsteen

View File

@ -23,14 +23,14 @@ import org.apache.poi.ss.formula.functions.FreeRefFunction;
import org.apache.poi.ss.formula.functions.NumericFunction;
/**
* Implementation of Excel 'Analysis ToolPak' function MROUND()<br/>
* Implementation of Excel 'Analysis ToolPak' function MROUND()<br>
*
* Returns a number rounded to the desired multiple.<p/>
* Returns a number rounded to the desired multiple.<p>
*
* <b>Syntax</b><br/>
* <b>Syntax</b><br>
* <b>MROUND</b>(<b>number</b>, <b>multiple</b>)
*
* <p/>
* <p>
*
* @author Yegor Kozlov
*/

View File

@ -26,13 +26,13 @@ import org.apache.poi.ss.formula.eval.ValueEval;
import org.apache.poi.ss.formula.functions.FreeRefFunction;
/**
* Implementation of Excel 'Analysis ToolPak' function NETWORKDAYS()<br/>
* Implementation of Excel 'Analysis ToolPak' function NETWORKDAYS()<br>
* Returns the number of workdays given a starting and an ending date, considering an interval of holidays. A workday is any non
* saturday/sunday date.
* <p/>
* <b>Syntax</b><br/>
* <p>
* <b>Syntax</b><br>
* <b>NETWORKDAYS</b>(<b>startDate</b>, <b>endDate</b>, holidays)
* <p/>
* <p>
*
* @author jfaenomoto@gmail.com
*/

View File

@ -25,7 +25,7 @@ import org.apache.poi.ss.formula.eval.ValueEval;
import org.apache.poi.ss.formula.functions.FreeRefFunction;
import org.apache.poi.ss.formula.OperationEvaluationContext;
/**
* Implementation of Excel 'Analysis ToolPak' function ISEVEN() ISODD()<br/>
* Implementation of Excel 'Analysis ToolPak' function ISEVEN() ISODD()<br>
*
* @author Josh Micich
*/

View File

@ -25,15 +25,15 @@ import org.apache.poi.ss.formula.functions.FreeRefFunction;
import org.apache.poi.ss.formula.OperationEvaluationContext;
/**
* Implementation of Excel 'Analysis ToolPak' function RANDBETWEEN()<br/>
* Implementation of Excel 'Analysis ToolPak' function RANDBETWEEN()<br>
*
* Returns a random integer number between the numbers you specify.<p/>
* Returns a random integer number between the numbers you specify.<p>
*
* <b>Syntax</b><br/>
* <b>RANDBETWEEN</b>(<b>bottom</b>, <b>top</b>)<p/>
* <b>Syntax</b><br>
* <b>RANDBETWEEN</b>(<b>bottom</b>, <b>top</b>)<p>
*
* <b>bottom</b> is the smallest integer RANDBETWEEN will return.<br/>
* <b>top</b> is the largest integer RANDBETWEEN will return.<br/>
* <b>bottom</b> is the smallest integer RANDBETWEEN will return.<br>
* <b>top</b> is the largest integer RANDBETWEEN will return.<br>
* @author Brendan Nolan
*/

View File

@ -26,13 +26,13 @@ import org.apache.poi.ss.formula.functions.FreeRefFunction;
import org.apache.poi.ss.usermodel.DateUtil;
/**
* Implementation of Excel 'Analysis ToolPak' function WORKDAY()<br/>
* Implementation of Excel 'Analysis ToolPak' function WORKDAY()<br>
* Returns the date past a number of workdays beginning at a start date, considering an interval of holidays. A workday is any non
* saturday/sunday date.
* <p/>
* <b>Syntax</b><br/>
* <p>
* <b>Syntax</b><br>
* <b>WORKDAY</b>(<b>startDate</b>, <b>days</b>, holidays)
* <p/>
* <p>
*
* @author jfaenomoto@gmail.com
*/

View File

@ -29,12 +29,12 @@ import org.apache.poi.ss.formula.functions.FreeRefFunction;
import org.apache.poi.ss.formula.OperationEvaluationContext;
import org.apache.poi.ss.usermodel.DateUtil;
/**
* Implementation of Excel 'Analysis ToolPak' function YEARFRAC()<br/>
* Implementation of Excel 'Analysis ToolPak' function YEARFRAC()<br>
*
* Returns the fraction of the year spanned by two dates.<p/>
* Returns the fraction of the year spanned by two dates.<p>
*
* <b>Syntax</b><br/>
* <b>YEARFRAC</b>(<b>startDate</b>, <b>endDate</b>, basis)<p/>
* <b>Syntax</b><br>
* <b>YEARFRAC</b>(<b>startDate</b>, <b>endDate</b>, basis)<p>
*
* The <b>basis</b> optionally specifies the behaviour of YEARFRAC as follows:
*

View File

@ -26,7 +26,7 @@ import org.apache.poi.util.LocaleUtil;
/**
* Internal calculation methods for Excel 'Analysis ToolPak' function YEARFRAC()<br/>
* Internal calculation methods for Excel 'Analysis ToolPak' function YEARFRAC()<br>
*
* Algorithm inspired by www.dwheeler.com/yearfrac
*/

View File

@ -24,7 +24,7 @@ import org.apache.poi.util.StringUtil;
/**
* To support Constant Values (2.5.7) as required by the CRN record.
* This class is also used for two dimensional arrays which are encoded by
* EXTERNALNAME (5.39) records and Array tokens.<p/>
* EXTERNALNAME (5.39) records and Array tokens.<p>
*
* @author Josh Micich
*/

View File

@ -21,7 +21,7 @@ import org.apache.poi.ss.usermodel.FormulaError;
import org.apache.poi.util.POILogFactory;
import org.apache.poi.util.POILogger;
/**
* Represents a constant error code value as encoded in a constant values array. <p/>
* Represents a constant error code value as encoded in a constant values array. <p>
*
* This class is a type-safe wrapper for a 16-bit int value performing a similar job to
* <tt>ErrorEval</tt>.

View File

@ -29,7 +29,7 @@ public final class BoolEval implements NumericValueEval, StringValueEval {
public static final BoolEval TRUE = new BoolEval(true);
/**
* Convenience method for the following:<br/>
* Convenience method for the following:<br>
* <code>(b ? BoolEval.TRUE : BoolEval.FALSE)</code>
*
* @return the <tt>BoolEval</tt> instance representing <tt>b</tt>.

View File

@ -20,7 +20,7 @@ package org.apache.poi.ss.formula.eval;
/**
* This class is used to simplify error handling logic <i>within</i> operator and function
* implementations. Note - <tt>OperationEval.evaluate()</tt> and <tt>Function.evaluate()</tt>
* method signatures do not throw this exception so it cannot propagate outside.<p/>
* method signatures do not throw this exception so it cannot propagate outside.<p>
*
* Here is an example coded without <tt>EvaluationException</tt>, to show how it can help:
* <pre>
@ -51,9 +51,9 @@ package org.apache.poi.ss.formula.eval;
* </pre>
* In this example, if any error is encountered while processing the arguments, an error is
* returned immediately. This code is difficult to refactor due to all the points where errors
* are returned.<br/>
* are returned.<br>
* Using <tt>EvaluationException</tt> allows the error returning code to be consolidated to one
* place.<p/>
* place.<p>
* <pre>
* public Eval evaluate(Eval[] args, int srcRow, short srcCol) {
* try {
@ -91,14 +91,14 @@ package org.apache.poi.ss.formula.eval;
* return temp;
*}
* </pre>
* It is not mandatory to use EvaluationException, doing so might give the following advantages:<br/>
* - Methods can more easily be extracted, allowing for re-use.<br/>
* It is not mandatory to use EvaluationException, doing so might give the following advantages:<br>
* - Methods can more easily be extracted, allowing for re-use.<br>
* - Type management (typecasting etc) is simpler because error conditions have been separated from
* intermediate calculation values.<br/>
* - Fewer local variables are required. Local variables can have stronger types.<br/>
* intermediate calculation values.<br>
* - Fewer local variables are required. Local variables can have stronger types.<br>
* - It is easier to mimic common Excel error handling behaviour (exit upon encountering first
* error), because exceptions conveniently propagate up the call stack regardless of execution
* points or the number of levels of nested calls.<p/>
* points or the number of levels of nested calls.<p>
*
* <b>Note</b> - Only standard evaluation errors are represented by <tt>EvaluationException</tt> (
* i.e. conditions expected to be encountered when evaluating arbitrary Excel formulas). Conditions

View File

@ -97,10 +97,10 @@ public final class OperandResolver {
*
* Note that the row area (A1:B1) does not include column C and the column area (D2:D3) does
* not include row 4, so the values in C1(=25) and D4(=400) are not accessible to the formula
* as written, but in the 4 cells A2:B3, the row and column selection works ok.<p/>
* as written, but in the 4 cells A2:B3, the row and column selection works ok.<p>
*
* The same concept is extended to references across sheets, such that even multi-row,
* multi-column areas can be useful.<p/>
* multi-column areas can be useful.<p>
*
* Of course with carefully (or carelessly) chosen parameters, cyclic references can occur and
* hence this method <b>can</b> throw a 'circular reference' EvaluationException. Note that
@ -180,14 +180,14 @@ public final class OperandResolver {
}
/**
* Applies some conversion rules if the supplied value is not already an integer.<br/>
* Applies some conversion rules if the supplied value is not already an integer.<br>
* Value is first coerced to a <tt>double</tt> ( See <tt>coerceValueToDouble()</tt> ).
* Note - <tt>BlankEval</tt> is converted to <code>0</code>.<p/>
* Note - <tt>BlankEval</tt> is converted to <code>0</code>.<p>
*
* Excel typically converts doubles to integers by truncating toward negative infinity.<br/>
* The equivalent java code is:<br/>
* &nbsp;&nbsp;<code>return (int)Math.floor(d);</code><br/>
* <b>not</b>:<br/>
* Excel typically converts doubles to integers by truncating toward negative infinity.<br>
* The equivalent java code is:<br>
* &nbsp;&nbsp;<code>return (int)Math.floor(d);</code><br>
* <b>not</b>:<br>
* &nbsp;&nbsp;<code>return (int)d; // wrong - rounds toward zero</code>
*
*/
@ -232,21 +232,21 @@ public final class OperandResolver {
}
/**
* Converts a string to a double using standard rules that Excel would use.<br/>
* Tolerates leading and trailing spaces, <p/>
* Converts a string to a double using standard rules that Excel would use.<br>
* Tolerates leading and trailing spaces, <p>
*
* Doesn't support currency prefixes, commas, percentage signs or arithmetic operations strings.
*
* Some examples:<br/>
* " 123 " -&gt; 123.0<br/>
* ".123" -&gt; 0.123<br/>
* "1E4" -&gt; 1000<br/>
* "-123" -&gt; -123.0<br/>
* These not supported yet:<br/>
* " $ 1,000.00 " -&gt; 1000.0<br/>
* "$1.25E4" -&gt; 12500.0<br/>
* "5**2" -&gt; 500<br/>
* "250%" -&gt; 2.5<br/>
* Some examples:<br>
* " 123 " -&gt; 123.0<br>
* ".123" -&gt; 0.123<br>
* "1E4" -&gt; 1000<br>
* "-123" -&gt; -123.0<br>
* These not supported yet:<br>
* " $ 1,000.00 " -&gt; 1000.0<br>
* "$1.25E4" -&gt; 12500.0<br>
* "5**2" -&gt; 500<br>
* "250%" -&gt; 2.5<br>
*
* @return <code>null</code> if the specified text cannot be parsed as a number
*/

View File

@ -22,7 +22,7 @@ import org.apache.poi.ss.formula.functions.Function;
/**
* Implementation of Excel formula token '%'. <p/>
* Implementation of Excel formula token '%'. <p>
* @author Josh Micich
*/
public final class PercentEval extends Fixed1ArgFunction {

View File

@ -34,7 +34,7 @@ import org.apache.poi.util.Internal;
* Represents a sheet being used for forked evaluation. Initially, objects of this class contain
* only the cells from the master workbook. By calling {@link #getOrCreateUpdatableCell(int, int)},
* the master cell object is logically replaced with a {@link ForkedEvaluationCell} instance, which
* will be used in all subsequent evaluations.<br/>
* will be used in all subsequent evaluations.<br>
*
* For POI internal use only
*/

Some files were not shown because too many files have changed in this diff Show More