Class SubversionLogVTI
- All Implemented Interfaces:
AutoCloseable,ResultSet,Wrapper,org.apache.derby.vti.AwareVTI
This VTI makes a table out of the output of the subversion log ("svn log") command.
-
Nested Class Summary
Nested classes/interfaces inherited from class org.apache.derby.vti.VTITemplate
org.apache.derby.vti.VTITemplate.ColumnDescriptor -
Field Summary
FieldsModifier and TypeFieldDescriptionprivate SimpleDateFormatprivate static final String[]private static final intprivate static final intprivate static final intprivate static final intprivate static final Stringprivate static final intFields inherited from interface java.sql.ResultSet
CLOSE_CURSORS_AT_COMMIT, CONCUR_READ_ONLY, CONCUR_UPDATABLE, FETCH_FORWARD, FETCH_REVERSE, FETCH_UNKNOWN, HOLD_CURSORS_OVER_COMMIT, TYPE_FORWARD_ONLY, TYPE_SCROLL_INSENSITIVE, TYPE_SCROLL_SENSITIVE -
Constructor Summary
ConstructorsConstructorDescriptionSubversionLogVTI(String logFileName) Build a SubversionLogVTI given the name of the output file created by the "svn log" command. -
Method Summary
Modifier and TypeMethodDescriptionprivate SimpleDateFormatSubversion formats timestamps thusly: "2007-09-16 11:17:37 -0700 (Sun, 16 Sep 2007)"getTimestamp(int columnIndex) Subversion formats timestamps thusly: "2007-09-16 11:17:37 -0700 (Sun, 16 Sep 2007)"private booleanisRecordHeader(String line) Returns true if a line is a record header.protected String[]parseRow()Parse the next chunk of text, using readLine(), and return the next row.private StringRead the next field in the main line of the record.private StringRead a line, possibly just using the last line that was pushed back.static ResultSetsubversionLogVTI(String logFileName) This is the method which is registered as a table function.Methods inherited from class org.apache.derbyDemo.vtis.core.FlatFileVTI
close, getLineNumber, getMetaData, getRawColumn, getTextFileName, next, readLine, wrap, wrapMethods inherited from class org.apache.derby.vti.StringColumnVTI
findColumn, getAsciiStream, getBigDecimal, getBinaryStream, getBlob, getBoolean, getByte, getBytes, getClob, getColumnCount, getColumnName, getDate, getDouble, getFloat, getInt, getLong, getShort, getString, getTime, setColumnNames, wasNullMethods inherited from class org.apache.derby.vti.VTITemplate
absolute, afterLast, beforeFirst, cancelRowUpdates, clearWarnings, deleteRow, first, getArray, getArray, getAsciiStream, getBigDecimal, getBigDecimal, getBigDecimal, getBinaryStream, getBlob, getBoolean, getByte, getBytes, getCharacterStream, getCharacterStream, getClob, getConcurrency, getContext, getCursorName, getDate, getDate, getDate, getDouble, getFetchDirection, getFetchSize, getFloat, getHoldability, getInt, getLong, getNCharacterStream, getNCharacterStream, getNClob, getNClob, getNString, getNString, getObject, getObject, getObject, getObject, getObject, getObject, getRef, getRef, getReturnTableSignature, getRow, getRowId, getRowId, getShort, getSQLXML, getSQLXML, getStatement, getString, getTime, getTime, getTime, getTimestamp, getTimestamp, getTimestamp, getType, getUnicodeStream, getUnicodeStream, getURL, getURL, getWarnings, insertRow, isAfterLast, isBeforeFirst, isClosed, isFirst, isLast, isWrapperFor, last, moveToCurrentRow, moveToInsertRow, notImplemented, previous, refreshRow, relative, rowDeleted, rowInserted, rowUpdated, setContext, setFetchDirection, setFetchSize, unwrap, updateArray, updateArray, updateAsciiStream, updateAsciiStream, updateAsciiStream, updateAsciiStream, updateAsciiStream, updateAsciiStream, updateBigDecimal, updateBigDecimal, updateBinaryStream, updateBinaryStream, updateBinaryStream, updateBinaryStream, updateBinaryStream, updateBinaryStream, updateBlob, updateBlob, updateBlob, updateBlob, updateBlob, updateBlob, updateBoolean, updateBoolean, updateByte, updateByte, updateBytes, updateBytes, updateCharacterStream, updateCharacterStream, updateCharacterStream, updateCharacterStream, updateCharacterStream, updateCharacterStream, updateClob, updateClob, updateClob, updateClob, updateClob, updateClob, updateDate, updateDate, updateDouble, updateDouble, updateFloat, updateFloat, updateInt, updateInt, updateLong, updateLong, updateNCharacterStream, updateNCharacterStream, updateNCharacterStream, updateNCharacterStream, updateNClob, updateNClob, updateNClob, updateNClob, updateNClob, updateNClob, updateNString, updateNString, updateNull, updateNull, updateObject, updateObject, updateObject, updateObject, updateRef, updateRef, updateRow, updateRowId, updateRowId, updateShort, updateShort, updateSQLXML, updateSQLXML, updateString, updateString, updateTime, updateTime, updateTimestamp, updateTimestampMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface java.sql.ResultSet
updateObject, updateObject, updateObject, updateObject
-
Field Details
-
COLUMN_NAMES
-
XID
private static final int XID- See Also:
-
COMMITTER
private static final int COMMITTER- See Also:
-
COMMIT_TIME
private static final int COMMIT_TIME- See Also:
-
LINE_COUNT
private static final int LINE_COUNT- See Also:
-
DESCRIPTION
private static final int DESCRIPTION- See Also:
-
RECORD_HEADER
- See Also:
-
_dateFormatter
-
-
Constructor Details
-
SubversionLogVTI
Build a SubversionLogVTI given the name of the output file created by the "svn log" command.
-
-
Method Details
-
subversionLogVTI
This is the method which is registered as a table function.
- Throws:
SQLException
-
parseRow
Parse the next chunk of text, using readLine(), and return the next row. Returns null if the file is exhausted.
- Specified by:
parseRowin classFlatFileVTI- Throws:
SQLException
-
getTimestamp
Subversion formats timestamps thusly: "2007-09-16 11:17:37 -0700 (Sun, 16 Sep 2007)"
- Specified by:
getTimestampin interfaceResultSet- Overrides:
getTimestampin classorg.apache.derby.vti.StringColumnVTI- Throws:
SQLException
-
readField
Read the next field in the main line of the record. Fields are delimited by | or line-end.
- Throws:
SQLException
-
isRecordHeader
Returns true if a line is a record header.
-
readNextLine
Read a line, possibly just using the last line that was pushed back.
- Throws:
SQLException
-
getDateFormatter
Subversion formats timestamps thusly: "2007-09-16 11:17:37 -0700 (Sun, 16 Sep 2007)"
-