Package org.web3j.crypto
Class StructuredDataEncoder
- java.lang.Object
-
- org.web3j.crypto.StructuredDataEncoder
-
public class StructuredDataEncoder extends java.lang.Object
-
-
Field Summary
Fields Modifier and Type Field Description org.web3j.crypto.StructuredData.EIP712MessagejsonMessageObject
-
Constructor Summary
Constructors Constructor Description StructuredDataEncoder(java.lang.String jsonMessageInString)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description byte[]encodeData(java.lang.String primaryType, java.util.HashMap<java.lang.String,java.lang.Object> data)java.lang.StringencodeStruct(java.lang.String structName)java.lang.StringencodeType(java.lang.String primaryType)java.util.List<java.lang.Object>flattenMultidimensionalArray(java.lang.Object data)java.util.List<java.lang.Integer>getArrayDimensionsFromData(java.lang.Object data)java.util.List<java.lang.Integer>getArrayDimensionsFromDeclaration(java.lang.String declaration)java.util.Set<java.lang.String>getDependencies(java.lang.String primaryType)java.util.List<org.web3j.crypto.Pair>getDepthsAndDimensions(java.lang.Object data, int depth)byte[]hashDomain()byte[]hashMessage(java.lang.String primaryType, java.util.HashMap<java.lang.String,java.lang.Object> data)byte[]hashStructuredData()org.web3j.crypto.StructuredData.EIP712MessageparseJSONMessage(java.lang.String jsonMessageInString)byte[]typeHash(java.lang.String primaryType)voidvalidateStructuredData(org.web3j.crypto.StructuredData.EIP712Message jsonMessageObject)
-
-
-
Method Detail
-
getDependencies
public java.util.Set<java.lang.String> getDependencies(java.lang.String primaryType)
-
encodeStruct
public java.lang.String encodeStruct(java.lang.String structName)
-
encodeType
public java.lang.String encodeType(java.lang.String primaryType)
-
typeHash
public byte[] typeHash(java.lang.String primaryType)
-
getArrayDimensionsFromDeclaration
public java.util.List<java.lang.Integer> getArrayDimensionsFromDeclaration(java.lang.String declaration)
-
getDepthsAndDimensions
public java.util.List<org.web3j.crypto.Pair> getDepthsAndDimensions(java.lang.Object data, int depth)
-
getArrayDimensionsFromData
public java.util.List<java.lang.Integer> getArrayDimensionsFromData(java.lang.Object data) throws java.lang.RuntimeException- Throws:
java.lang.RuntimeException
-
flattenMultidimensionalArray
public java.util.List<java.lang.Object> flattenMultidimensionalArray(java.lang.Object data)
-
encodeData
public byte[] encodeData(java.lang.String primaryType, java.util.HashMap<java.lang.String,java.lang.Object> data) throws java.lang.RuntimeException- Throws:
java.lang.RuntimeException
-
hashMessage
public byte[] hashMessage(java.lang.String primaryType, java.util.HashMap<java.lang.String,java.lang.Object> data) throws java.lang.RuntimeException- Throws:
java.lang.RuntimeException
-
hashDomain
public byte[] hashDomain() throws java.lang.RuntimeException- Throws:
java.lang.RuntimeException
-
validateStructuredData
public void validateStructuredData(org.web3j.crypto.StructuredData.EIP712Message jsonMessageObject) throws java.lang.RuntimeException- Throws:
java.lang.RuntimeException
-
parseJSONMessage
public org.web3j.crypto.StructuredData.EIP712Message parseJSONMessage(java.lang.String jsonMessageInString) throws java.io.IOException, java.lang.RuntimeException- Throws:
java.io.IOExceptionjava.lang.RuntimeException
-
hashStructuredData
public byte[] hashStructuredData() throws java.lang.RuntimeException- Throws:
java.lang.RuntimeException
-
-