Package org.tmatesoft.svn.core
Class SVNPropertyValue
- java.lang.Object
-
- org.tmatesoft.svn.core.SVNPropertyValue
-
- All Implemented Interfaces:
java.io.Serializable
public class SVNPropertyValue extends java.lang.Object implements java.io.Serializable
The SVNPropertyValue represents an object wrapper for string and binary version controlled properties providing a set of specific methods to work with them. Since version 1.2 theSVNKit
library supports binary properties as well.- Since:
- 1.2
- Version:
- 1.3
- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description private byte[]
myData
private java.lang.String
myValue
private static long
serialVersionUID
-
Constructor Summary
Constructors Modifier Constructor Description private
SVNPropertyValue(byte[] data, int offset, int length)
private
SVNPropertyValue(char[] propertyValue, java.lang.String encoding)
private
SVNPropertyValue(java.lang.String propertyValue)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static boolean
areEqual(SVNPropertyValue propertyValue1, SVNPropertyValue propertyValue2)
void
clear()
static SVNPropertyValue
create(char[] propertyValue, java.lang.String encoding)
Creates a new property value object representing a text property value.static SVNPropertyValue
create(java.lang.String propertyValue)
Creates a new property value object representing a text property value.static SVNPropertyValue
create(java.lang.String propertyName, byte[] data)
Creates a new property value object from the given byte array.static SVNPropertyValue
create(java.lang.String propertyName, byte[] data, int offset, int length)
Creates a new property value object from the given byte array.boolean
equals(java.lang.Object obj)
Says whether this object andobj
are equal or not.byte[]
getBytes()
Returns property value bytes.static byte[]
getPropertyAsBytes(SVNPropertyValue value)
Returnsbyte[]
representation ofvalue
.static char[]
getPropertyAsChars(SVNPropertyValue value)
ReturnsString
representation ofvalue
.static java.lang.String
getPropertyAsString(SVNPropertyValue value)
ReturnsString
representation ofvalue
.java.lang.String
getString()
Returns property value string.int
hashCode()
Returns the hash code for this object.boolean
isBinary()
Says whether the property value wrapped by this object is binary or not.boolean
isString()
Says whether the property value wrapped by this object isString
or not.java.lang.String
toString()
Returns a string representation of this object.
-
-
-
Field Detail
-
serialVersionUID
private static final long serialVersionUID
- See Also:
- Constant Field Values
-
myValue
private java.lang.String myValue
-
myData
private byte[] myData
-
-
Method Detail
-
create
public static SVNPropertyValue create(java.lang.String propertyName, byte[] data, int offset, int length)
Creates a new property value object from the given byte array.This method is intended to instantiate binary property values. However if
propertyName
is ofsvn domain
, then it attempts to encode the passed bytes into aString
value using the "UTF-8" charset. Finally, the property value object is created via a call tocreate(String)
. In this way the text nature of the property is automatically preserved to avoid binary/text properties mess.- Parameters:
propertyName
- property namedata
- array containing property bytesoffset
- offset indata
to copy bytes fromlength
- amount of bytes to copy fromdata
- Returns:
- new property value object; null if
data
is null
-
create
public static SVNPropertyValue create(java.lang.String propertyName, byte[] data)
Creates a new property value object from the given byte array.This method is equivalent to
create(propertyName, data, 0, data.length)
.- Parameters:
propertyName
- property namedata
- array containing property bytes- Returns:
- new property value object; null if
data
is null - See Also:
create(String, byte[], int, int)
-
create
public static SVNPropertyValue create(java.lang.String propertyValue)
Creates a new property value object representing a text property value. This method is intended to create text property values only.- Parameters:
propertyValue
- text property value which is stored as is- Returns:
- new property value object; null if
propertyValue
is null
-
create
public static SVNPropertyValue create(char[] propertyValue, java.lang.String encoding)
Creates a new property value object representing a text property value. This method is intended to create text property values only.- Parameters:
propertyValue
- text property value which is stored as is- Returns:
- new property value object; null if
propertyValue
is null
-
getPropertyAsBytes
public static byte[] getPropertyAsBytes(SVNPropertyValue value)
Returnsbyte[]
representation ofvalue
. Ifvalue
is astring
property value, then bytes of the string are encoded using the "UTF-8" charset and returned by this method. If encoding fails, then bytes are encoded using the default platform's charset. Otherwise,getBytes()
is returned.- Parameters:
value
- property value object- Returns:
- bytes of the property value represented by
value
; null ifvalue
is null
-
getPropertyAsString
public static java.lang.String getPropertyAsString(SVNPropertyValue value)
ReturnsString
representation ofvalue
. Ifvalue
is abinary
property value, then its bytes are converted to aString
encoding them with the "UTF-8" charset and returned back to the caller. If that encoding fails, bytes are encoded with the default platform's charset. Otherwise,getString()
is returned.- Parameters:
value
- property value object- Returns:
- string property value; null if
value
is null
-
getPropertyAsChars
public static char[] getPropertyAsChars(SVNPropertyValue value)
ReturnsString
representation ofvalue
. Ifvalue
is abinary
property value, then its bytes are converted to aString
encoding them with the "UTF-8" charset and returned back to the caller. If that encoding fails, bytes are encoded with the default platform's charset. Otherwise,getString()
is returned.- Parameters:
value
- property value object- Returns:
- string property value; null if
value
is null
-
isBinary
public boolean isBinary()
Says whether the property value wrapped by this object is binary or not.- Returns:
- true if binary, otherwise false
-
getBytes
public byte[] getBytes()
Returns property value bytes. Note: this will be always null forString
property values.- Returns:
- byte array with property value bytes
-
isString
public boolean isString()
Says whether the property value wrapped by this object isString
or not.- Returns:
- true if textual, otherwise false
-
getString
public java.lang.String getString()
Returns property value string. Note: this will be always null for binary property values.- Returns:
- property value string
-
toString
public java.lang.String toString()
Returns a string representation of this object. Note: irrelevant for binary properties.- Overrides:
toString
in classjava.lang.Object
- Returns:
- string representation of this object
-
equals
public boolean equals(java.lang.Object obj)
Says whether this object andobj
are equal or not.- Overrides:
equals
in classjava.lang.Object
- Parameters:
obj
- object to compare with- Returns:
- true in the following cases:
obj
is the same as this one (by reference) ifobj
is anSVNPropertyValue
and either has got the sameString
value in case this object holds aString
value, or the same byte array contents if this object represents a binary property value
-
hashCode
public int hashCode()
Returns the hash code for this object. If this object represents astring
property, then returns the hash code of theString
object. Otherwise, this object represents a binary property and the hash code of thebyte[]
array is returned.- Overrides:
hashCode
in classjava.lang.Object
- Returns:
- hash code
-
areEqual
public static boolean areEqual(SVNPropertyValue propertyValue1, SVNPropertyValue propertyValue2)
-
clear
public void clear()
-
-