restructuring continued

This commit is contained in:
0xdcarns
2022-01-10 17:52:21 -05:00
parent c033be41bb
commit 64e7791011
13 changed files with 178 additions and 105 deletions

View File

@@ -42,8 +42,8 @@ func SetNetworkServerPeers(node *models.Node) {
}
}
// DeleteNode - deletes a node from database or moves into delete nodes table
func DeleteNode(node *models.Node, exterminate bool) error {
// DeleteNodeByMacAddress - deletes a node from database or moves into delete nodes table
func DeleteNodeByMacAddress(node *models.Node, exterminate bool) error {
var err error
var key = node.ID
if !exterminate {
@@ -104,8 +104,10 @@ func CreateNode(node *models.Node) error {
if err != nil {
return err
}
node.ID = uuid.NewString()
//Create a JWT for the node
tokenString, _ := CreateJWT(node.MacAddress, node.Network)
tokenString, _ := CreateJWT(node.ID, node.MacAddress, node.Network)
if tokenString == "" {
//returnErrorResponse(w, r, errorResponse)
return err
@@ -115,8 +117,6 @@ func CreateNode(node *models.Node) error {
return err
}
node.ID = uuid.NewString()
nodebytes, err := json.Marshal(&node)
if err != nil {
return err
@@ -180,6 +180,34 @@ func GetNode(macaddress string, network string) (models.Node, error) {
return node, err
}
// DeleteNodeByID - deletes a node from database or moves into delete nodes table
func DeleteNodeByID(node *models.Node, exterminate bool) error {
var err error
var key = node.ID
if !exterminate {
node.Action = models.NODE_DELETE
nodedata, err := json.Marshal(&node)
if err != nil {
return err
}
err = database.Insert(key, string(nodedata), database.DELETED_NODES_TABLE_NAME)
if err != nil {
return err
}
} else {
if err := database.DeleteRecord(database.DELETED_NODES_TABLE_NAME, key); err != nil {
logger.Log(2, err.Error())
}
}
if err = database.DeleteRecord(database.NODES_TABLE_NAME, key); err != nil {
return err
}
if servercfg.IsDNSMode() {
SetDNS()
}
return removeLocalServer(node)
}
// GetNodePeers - fetches peers for a given node
func GetNodePeers(networkName string, excludeRelayed bool) ([]models.Node, error) {
var peers []models.Node