Package net.i2p.data.i2np
Class GarlicClove
- java.lang.Object
-
- net.i2p.data.DataStructureImpl
-
- net.i2p.data.i2np.GarlicClove
-
- All Implemented Interfaces:
Serializable
,DataStructure
public class GarlicClove extends DataStructureImpl
Contains one deliverable message encrypted to a router along with instructions and a certificate 'paying for' the delivery. Note that certificates are always the null certificate at this time, others are unimplemented.- Author:
- jrandom
- See Also:
- Serialized Form
-
-
Constructor Summary
Constructors Constructor Description GarlicClove(I2PAppContext context)
-
Method Summary
All Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description boolean
equals(Object obj)
int
estimateSize()
Certificate
getCertificate()
long
getCloveId()
I2NPMessage
getData()
long
getExpiration()
DeliveryInstructions
getInstructions()
int
getSizeRatchet()
int
hashCode()
int
readBytes(byte[] source, int offset)
void
readBytes(InputStream in)
Deprecated.unused, use byte array method to avoid copyingvoid
readBytesRatchet(byte[] source, int offset, int len)
Short format for ECIES-Ratchet, saves 22 bytes.void
setCertificate(Certificate cert)
void
setCloveId(long id)
void
setData(I2NPMessage msg)
void
setExpiration(long exp)
void
setInstructions(DeliveryInstructions instr)
byte[]
toByteArray()
String
toString()
void
writeBytes(OutputStream out)
Deprecated.unused, use byte array method to avoid copyingint
writeBytesRatchet(byte[] tgt, int offset)
Short format for ECIES-Ratchet, saves 22 bytes.-
Methods inherited from class net.i2p.data.DataStructureImpl
calculateHash, fromBase64, fromByteArray, read, toBase64
-
-
-
-
Constructor Detail
-
GarlicClove
public GarlicClove(I2PAppContext context)
-
-
Method Detail
-
getInstructions
public DeliveryInstructions getInstructions()
-
setInstructions
public void setInstructions(DeliveryInstructions instr)
-
getData
public I2NPMessage getData()
-
setData
public void setData(I2NPMessage msg)
-
getCloveId
public long getCloveId()
-
setCloveId
public void setCloveId(long id)
-
getExpiration
public long getExpiration()
-
setExpiration
public void setExpiration(long exp)
-
getCertificate
public Certificate getCertificate()
-
setCertificate
public void setCertificate(Certificate cert)
-
readBytes
@Deprecated public void readBytes(InputStream in)
Deprecated.unused, use byte array method to avoid copyingDescription copied from interface:DataStructure
Load up the current object with data from the given stream. Data loaded this way must match the I2P data structure specification. Warning - many classes will throw IllegalStateException if data is already set.- Parameters:
in
- stream to read from- Throws:
UnsupportedOperationException
- always
-
readBytes
public int readBytes(byte[] source, int offset) throws DataFormatException
- Returns:
- length read
- Throws:
DataFormatException
-
readBytesRatchet
public void readBytesRatchet(byte[] source, int offset, int len) throws DataFormatException
Short format for ECIES-Ratchet, saves 22 bytes. NTCP2-style header, no ID, no separate expiration, no cert.- Throws:
DataFormatException
- Since:
- 0.9.44
-
writeBytes
@Deprecated public void writeBytes(OutputStream out)
Deprecated.unused, use byte array method to avoid copyingDescription copied from interface:DataStructure
Write out the data structure to the stream, using the format defined in the I2P data structure specification.- Parameters:
out
- stream to write to- Throws:
UnsupportedOperationException
- always
-
toByteArray
public byte[] toByteArray()
- Specified by:
toByteArray
in interfaceDataStructure
- Overrides:
toByteArray
in classDataStructureImpl
- Returns:
- may be null if data is not set
-
writeBytesRatchet
public int writeBytesRatchet(byte[] tgt, int offset)
Short format for ECIES-Ratchet, saves 22 bytes. NTCP2-style header, no ID, no separate expiration, no cert.- Returns:
- new offset
- Since:
- 0.9.44
-
getSizeRatchet
public int getSizeRatchet()
- Since:
- 0.9.44
-
estimateSize
public int estimateSize()
-
-