Package xbr.network

Class StructuredDataEncoder


  • public class StructuredDataEncoder
    extends java.lang.Object
    • Field Summary

      Fields 
      Modifier and Type Field Description
      xbr.network.StructuredData.EIP712Message jsonMessageObject  
    • Constructor Summary

      Constructors 
      Constructor Description
      StructuredDataEncoder​(java.lang.String jsonMessageInString)  
    • Field Detail

      • jsonMessageObject

        public final xbr.network.StructuredData.EIP712Message jsonMessageObject
    • Constructor Detail

      • StructuredDataEncoder

        public StructuredDataEncoder​(java.lang.String jsonMessageInString)
                              throws java.io.IOException,
                                     java.lang.RuntimeException
        Throws:
        java.io.IOException
        java.lang.RuntimeException
    • 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<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​(xbr.network.StructuredData.EIP712Message jsonMessageObject)
                                    throws java.lang.RuntimeException
        Throws:
        java.lang.RuntimeException
      • parseJSONMessage

        public xbr.network.StructuredData.EIP712Message parseJSONMessage​(java.lang.String jsonMessageInString)
                                                                  throws java.io.IOException,
                                                                         java.lang.RuntimeException
        Throws:
        java.io.IOException
        java.lang.RuntimeException
      • hashStructuredData

        public byte[] hashStructuredData()
                                  throws java.lang.RuntimeException
        Throws:
        java.lang.RuntimeException