Bläddra i källkod

:wrench: Limit API to show only ledger data

Ettore Di Giacinto 3 år sedan
förälder
incheckning
c717311ed1
2 ändrade filer med 15 tillägg och 10 borttagningar
  1. 4 4
      api/api.go
  2. 11 6
      pkg/blockchain/ledger.go

+ 4 - 4
api/api.go

@@ -45,7 +45,7 @@ func API(l string, ledger *blockchain.Ledger) error {
 		machines := len(ledger.CurrentData()[edgevpn.MachinesLedgerKey])
 		users := len(ledger.CurrentData()[edgevpn.UsersLedgerKey])
 		services := len(ledger.CurrentData()[edgevpn.ServicesLedgerKey])
-		blockchain := len(ledger.BlockChain())
+		blockchain := ledger.Index()
 
 		return c.JSON(http.StatusOK, struct {
 			Files, Machines, Users, Services, BlockChain int
@@ -84,9 +84,9 @@ func API(l string, ledger *blockchain.Ledger) error {
 
 	ec.GET("/*", echo.WrapHandler(http.StripPrefix("/", assetHandler)))
 
-	ec.GET("/api/blockchain", func(c echo.Context) error {
-		return c.JSON(http.StatusOK, ledger.BlockChain())
-	})
+	// ec.GET("/api/blockchain", func(c echo.Context) error {
+	// 	return c.JSON(http.StatusOK, ledger.BlockChain())
+	// })
 
 	ec.GET("/api/ledger", func(c echo.Context) error {
 		return c.JSON(http.StatusOK, ledger.CurrentData())

+ 11 - 6
pkg/blockchain/ledger.go

@@ -73,12 +73,6 @@ func (l *Ledger) Syncronizer(ctx context.Context, t time.Duration) {
 	}()
 }
 
-// String returns the blockchain as string
-func (l *Ledger) String() string {
-	bytes, _ := json.MarshalIndent(l.blockchain, "", "  ")
-	return string(bytes)
-}
-
 // Update the blockchain from a message
 func (l *Ledger) Update(h *hub.Message) (err error) {
 	//chain := make(Blockchain, 0)
@@ -267,6 +261,17 @@ func (l *Ledger) DeleteBucket(b string) {
 	l.writeData(new)
 }
 
+// String returns the blockchain as string
+func (l *Ledger) String() string {
+	bytes, _ := json.MarshalIndent(l.blockchain, "", "  ")
+	return string(bytes)
+}
+
+// Index returns last known blockchain index
+func (l *Ledger) Index() int {
+	return l.blockchain.Len()
+}
+
 func (l *Ledger) writeData(s map[string]map[string]Data) {
 	newBlock := l.blockchain.Last().NewBlock(s)