Skip to content
Snippets Groups Projects
Select Git revision
  • ab01224523d5296da6871b8f92a663cc63c12fb9
  • master default protected
  • array_3d
  • gradients
  • poylgonise
  • apps
  • bench
  • streaming_modif
  • bug
  • multi_thread
  • refactoring_c_code
  • futhark_refac
  • one_dim_t_floats
  • reg
  • reg_order3
  • trying_base64
  • merging_j
  • trying_regularized
  • futharkalabos3d_troels_3d
  • futharkalabos3d_troels
  • futharkalabos3d_tuple
21 results

tensor_field.c

Blame
  • client.go 1.53 KiB
    package main
    
    import (
    	"encoding/json"
    	"fmt"
    	types "local/helper"
    	"net"
    	"os"
    	"strconv"
    )
    
    const (
    	ServerPort = "8017"
    	ServerType = "tcp"
    )
    
    func main() {
    	args := os.Args
    	if len(args) < 3 {
    		fmt.Printf("Usage: %s <server> <action>", args[0])
    		os.Exit(1)
    	}
    
    	serverHost := args[1]
    	action, _ := strconv.Atoi(args[2])
    	var id int
    	var from string
    	var to string
    	var amount int
    	var m types.Message
    
    	switch action {
    	case types.MCreateTransaction:
    		if len(args) != 7 {
    			fmt.Printf("Usage: %s %s %d <id> <from> <to> <amount>\n", args[0], serverHost, action)
    			os.Exit(1)
    		}
    		id, _ = strconv.Atoi(args[3])
    		from = args[4]
    		to = args[5]
    		amount, _ = strconv.Atoi(args[6])
    
    		t := types.Transaction{
    			Id:     id,
    			From:   from,
    			To:     to,
    			Amount: amount,
    		}
    		m = types.Message{
    			Action:      types.MCreateTransaction,
    			Transaction: t,
    			Proactive:   serverHost,
    		}
    		sendMessage(serverHost, m)
    		break
    	case types.MListTransactions:
    		m = types.Message{
    			Action:    types.MListTransactions,
    			Proactive: serverHost,
    		}
    		sendMessage(serverHost, m)
    		break
    	default:
    		break
    	}
    }
    
    func sendMessage(serverHost string, message types.Message) {
    
    	data, err := json.Marshal(message)
    	if err != nil {
    		panic(err)
    	}
    	connection, err := net.Dial(ServerType, serverHost+":"+ServerPort)
    	if err != nil {
    		panic(err)
    	}
    	_, err = connection.Write(data)
    	buffer := make([]byte, 2048)
    
    	mLen, err := connection.Read(buffer)
    	if err != nil {
    		panic(err)
    	}
    	fmt.Println("Received: ", string(buffer[:mLen]))
    	defer connection.Close()
    }