Making the HtlcHash class implement the JsonSerializable interface
This commit is contained in:
parent
ca30338af6
commit
9312280897
1 changed files with 22 additions and 1 deletions
|
@ -1,13 +1,16 @@
|
||||||
package cy.agorise.graphenej;
|
package cy.agorise.graphenej;
|
||||||
|
|
||||||
import com.google.common.primitives.Bytes;
|
import com.google.common.primitives.Bytes;
|
||||||
|
import com.google.gson.JsonArray;
|
||||||
|
import com.google.gson.JsonElement;
|
||||||
|
|
||||||
import cy.agorise.graphenej.interfaces.ByteSerializable;
|
import cy.agorise.graphenej.interfaces.ByteSerializable;
|
||||||
|
import cy.agorise.graphenej.interfaces.JsonSerializable;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Class used to represent a HTLC hash.
|
* Class used to represent a HTLC hash.
|
||||||
*/
|
*/
|
||||||
public class HtlcHash implements ByteSerializable {
|
public class HtlcHash implements ByteSerializable, JsonSerializable {
|
||||||
private HtlcHashType hashType;
|
private HtlcHashType hashType;
|
||||||
private byte[] hash;
|
private byte[] hash;
|
||||||
|
|
||||||
|
@ -16,9 +19,27 @@ public class HtlcHash implements ByteSerializable {
|
||||||
this.hash = hash;
|
this.hash = hash;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public HtlcHashType getType(){
|
||||||
|
return this.hashType;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public byte[] toBytes() {
|
public byte[] toBytes() {
|
||||||
byte[] hashTypeBytes = new byte[] { Util.revertInteger(hashType.ordinal())[3] };
|
byte[] hashTypeBytes = new byte[] { Util.revertInteger(hashType.ordinal())[3] };
|
||||||
return Bytes.concat(hashTypeBytes, hash);
|
return Bytes.concat(hashTypeBytes, hash);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String toJsonString() {
|
||||||
|
JsonElement element = toJsonObject();
|
||||||
|
return element.toString();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public JsonElement toJsonObject() {
|
||||||
|
JsonArray array = new JsonArray();
|
||||||
|
array.add(hashType.ordinal());
|
||||||
|
array.add(Util.byteToString(hash));
|
||||||
|
return array;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue