func subIdParam(c *gin.Context) { subId := c.Param("id") if len(subId) != 64 || !util.IsHex(subId) { c.AbortWithError(400, fmt.Errorf("Malformed event id")) } c.Set("id", subId) c.Next() }
func keyParam(c *gin.Context) { key := c.Param("key") bts, err := hex.DecodeString(key) if err != nil { c.AbortWithError(400, err) } c.Set("keyBts", bts) c.Next() }
func addressParam(c *gin.Context) { addr := c.Param("address") if !util.IsAddress(addr) { c.AbortWithError(400, fmt.Errorf("Malformed address param: "+addr)) } bts, _ := hex.DecodeString(addr) c.Set("addrBts", bts) c.Next() }
func heightParam(c *gin.Context) { h, err := strconv.Atoi(c.Param("height")) if err != nil { c.AbortWithError(400, err) } if h < 0 { c.AbortWithError(400, fmt.Errorf("Negative number used as height.")) } c.Set("height", h) c.Next() }
func parseTxModifier(c *gin.Context) { hold := c.Query("hold") if hold == "true" { c.Set("hold", true) } else if hold != "" { if hold != "false" { c.Writer.WriteHeader(400) c.Writer.Write([]byte("tx hold must be either 'true' or 'false', found: " + hold)) c.Abort() } } }
func parseSearchQuery(c *gin.Context) { q := c.Query("q") if q != "" { data, err := _parseSearchQuery(q) if err != nil { c.Writer.WriteHeader(400) c.Writer.Write([]byte(err.Error())) c.Abort() // c.AbortWithError(400, err) return } c.Set("filters", data) } }
// TODO func peerAddressParam(c *gin.Context) { subId := c.Param("address") c.Set("address", subId) c.Next() }
func nameParam(c *gin.Context) { name := c.Param("key") c.Set("name", name) c.Next() }