org.tmatesoft.svn.core.io.diff
Class SVNDiffInstruction

java.lang.Object
  extended by org.tmatesoft.svn.core.io.diff.SVNDiffInstruction

public class SVNDiffInstruction
extends java.lang.Object

The SVNDiffInstruction class represents instructions used as delta applying rules.

For now there are three types of copy instructions:

These are three different ways how full text representation bytes are obtained.

Since:
1.2

Field Summary
static int COPY_FROM_NEW_DATA
          A type of an instruction that says that data must be copied from the new data to the target view.
static int COPY_FROM_SOURCE
          A type of an instruction that says that data must be copied from the source view to the target one.
static int COPY_FROM_TARGET
          A type of an instruction that says that data must be copied from the target view to the target itself.
 int length
          A length bytes to copy.
 int offset
          An offset in the source from where the bytes should be copied.
 int type
          A type of this instruction.
 
Constructor Summary
SVNDiffInstruction()
          Creates a new instruction object.
SVNDiffInstruction(int t, int l, int o)
          Creates a particular type of a diff instruction.
 
Method Summary
 java.lang.String toString()
          Gives a string representation of this object.
static void writeInt(java.nio.ByteBuffer os, int i)
          Writes an integer to a byte buffer.
static void writeLong(java.nio.ByteBuffer os, long i)
          Writes a long to a byte buffer.
 void writeTo(java.nio.ByteBuffer target)
          Wirtes this instruction to a byte buffer.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

COPY_FROM_SOURCE

public static final int COPY_FROM_SOURCE
A type of an instruction that says that data must be copied from the source view to the target one.

See Also:
Constant Field Values

COPY_FROM_TARGET

public static final int COPY_FROM_TARGET
A type of an instruction that says that data must be copied from the target view to the target itself.

See Also:
Constant Field Values

COPY_FROM_NEW_DATA

public static final int COPY_FROM_NEW_DATA
A type of an instruction that says that data must be copied from the new data to the target view.

See Also:
Constant Field Values

type

public int type
A type of this instruction.


length

public int length
A length bytes to copy.


offset

public int offset
An offset in the source from where the bytes should be copied. Instruction offsets are relative to the bounds of views, i.e. a source/target view is a window of bytes (specified in a concrete diff window) in the source/target stream (this can be a file, a buffer).

Constructor Detail

SVNDiffInstruction

public SVNDiffInstruction(int t,
                          int l,
                          int o)
Creates a particular type of a diff instruction. Instruction offsets are relative to the bounds of views, i.e. a source/target view is a window of bytes (specified in a concrete diff window) in the source/target stream (this can be a file, a buffer).

Parameters:
t - a type of an instruction
l - a number of bytes to copy
o - an offset in the source (which may be a source or a target view, or a new data stream) from where the bytes are to be copied
See Also:
SVNDiffWindow

SVNDiffInstruction

public SVNDiffInstruction()
Creates a new instruction object. It's the instruction for the empty contents file.

Method Detail

toString

public java.lang.String toString()
Gives a string representation of this object.

Overrides:
toString in class java.lang.Object
Returns:
a string representation of this object

writeTo

public void writeTo(java.nio.ByteBuffer target)
Wirtes this instruction to a byte buffer.

Parameters:
target - a byte buffer to write to

writeInt

public static void writeInt(java.nio.ByteBuffer os,
                            int i)
Writes an integer to a byte buffer.

Parameters:
os - a byte buffer to write to
i - an integer to write

writeLong

public static void writeLong(java.nio.ByteBuffer os,
                             long i)
Writes a long to a byte buffer.

Parameters:
os - a byte buffer to write to
i - a long number to write