This is an automated email from the ASF dual-hosted git repository.

mitchell852 pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-trafficcontrol.git

commit 13eb42b49d038515d7f3c3fbc9a92732c728cfb4
Author: Dewayne Richardson <dewr...@apache.org>
AuthorDate: Wed Mar 28 11:14:38 2018 -0600

    updated to use the v13 packages
---
 lib/go-tc/v13/servers.go                         | 10 ++++++---
 traffic_ops/traffic_ops_golang/server/servers.go | 27 ++++++++++++++----------
 2 files changed, 23 insertions(+), 14 deletions(-)

diff --git a/lib/go-tc/v13/servers.go b/lib/go-tc/v13/servers.go
index c2983c6..b71adb1 100644
--- a/lib/go-tc/v13/servers.go
+++ b/lib/go-tc/v13/servers.go
@@ -1,6 +1,10 @@
 package v13
 
-import "time"
+import (
+       "time"
+
+       tc "github.com/apache/incubator-trafficcontrol/lib/go-tc"
+)
 
 /*
  * Licensed to the Apache Software Foundation (ASF) under one
@@ -55,7 +59,7 @@ type Server struct {
        IPAddress        string              `json:"ipAddress" db:"ip_address"`
        IPGateway        string              `json:"ipGateway" db:"ip_gateway"`
        IPNetmask        string              `json:"ipNetmask" db:"ip_netmask"`
-       LastUpdated      TimeNoMod           `json:"lastUpdated" 
db:"last_updated"`
+       LastUpdated      tc.TimeNoMod        `json:"lastUpdated" 
db:"last_updated"`
        MgmtIPAddress    string              `json:"mgmtIpAddress" 
db:"mgmt_ip_address"`
        MgmtIPGateway    string              `json:"mgmtIpGateway" 
db:"mgmt_ip_gateway"`
        MgmtIPNetmask    string              `json:"mgmtIpNetmask" 
db:"mgmt_ip_netmask"`
@@ -104,7 +108,7 @@ type ServerNullable struct {
        IPAddress        *string              `json:"ipAddress" db:"ip_address"`
        IPGateway        *string              `json:"ipGateway" db:"ip_gateway"`
        IPNetmask        *string              `json:"ipNetmask" db:"ip_netmask"`
-       LastUpdated      TimeNoMod            `json:"lastUpdated" 
db:"last_updated"`
+       LastUpdated      *tc.TimeNoMod        `json:"lastUpdated" 
db:"last_updated"`
        MgmtIPAddress    *string              `json:"mgmtIpAddress" 
db:"mgmt_ip_address"`
        MgmtIPGateway    *string              `json:"mgmtIpGateway" 
db:"mgmt_ip_gateway"`
        MgmtIPNetmask    *string              `json:"mgmtIpNetmask" 
db:"mgmt_ip_netmask"`
diff --git a/traffic_ops/traffic_ops_golang/server/servers.go 
b/traffic_ops/traffic_ops_golang/server/servers.go
index c73d6e1..35bb845 100644
--- a/traffic_ops/traffic_ops_golang/server/servers.go
+++ b/traffic_ops/traffic_ops_golang/server/servers.go
@@ -26,6 +26,7 @@ import (
 
        "github.com/apache/incubator-trafficcontrol/lib/go-log"
        "github.com/apache/incubator-trafficcontrol/lib/go-tc"
+       "github.com/apache/incubator-trafficcontrol/lib/go-tc/v13"
        
"github.com/apache/incubator-trafficcontrol/traffic_ops/traffic_ops_golang/api"
        
"github.com/apache/incubator-trafficcontrol/traffic_ops/traffic_ops_golang/auth"
        
"github.com/apache/incubator-trafficcontrol/traffic_ops/traffic_ops_golang/dbhelpers"
@@ -38,10 +39,10 @@ import (
 )
 
 //we need a type alias to define functions on
-type TOServer tc.ServerNullable
+type TOServer v13.ServerNullable
 
 //the refType is passed into the handlers where a copy of its type is used to 
decode the json.
-var refType = TOServer(tc.ServerNullable{})
+var refType = TOServer{}
 
 func GetRefType() *TOServer {
        return &refType
@@ -311,6 +312,7 @@ func (server *TOServer) Update(db *sqlx.DB, user 
auth.CurrentUser) (error, tc.Ap
        defer resultRows.Close()
 
        var lastUpdated tc.TimeNoMod
+       var id int
        rowsAffected := 0
        for resultRows.Next() {
                rowsAffected++
@@ -319,15 +321,18 @@ func (server *TOServer) Update(db *sqlx.DB, user 
auth.CurrentUser) (error, tc.Ap
                        return tc.DBError, tc.SystemError
                }
        }
-       log.Debugf("lastUpdated: %++v", lastUpdated)
-       server.LastUpdated = lastUpdated
-       if rowsAffected != 1 {
-               if rowsAffected < 1 {
-                       return errors.New("no cdn found with this id"), 
tc.DataMissingError
-               } else {
-                       return fmt.Errorf("this update affected too many rows: 
%d", rowsAffected), tc.SystemError
-               }
+
+       if rowsAffected == 0 {
+               err = errors.New("no server was inserted, no id was returned")
+               log.Errorln(err)
+               return tc.DBError, tc.SystemError
+       } else if rowsAffected > 1 {
+               err = errors.New("too many ids returned from server insert")
+               log.Errorln(err)
+               return tc.DBError, tc.SystemError
        }
+       server.SetID(id)
+       server.LastUpdated = &lastUpdated
        err = tx.Commit()
        if err != nil {
                log.Errorln("Could not commit transaction: ", err)
@@ -437,7 +442,7 @@ func (server *TOServer) Create(db *sqlx.DB, user 
auth.CurrentUser) (error, tc.Ap
                return tc.DBError, tc.SystemError
        }
        server.SetID(id)
-       server.LastUpdated = lastUpdated
+       server.LastUpdated = &lastUpdated
        err = tx.Commit()
        if err != nil {
                log.Errorln("Could not commit transaction: ", err)

-- 
To stop receiving notification emails like this one, please contact
mitchell...@apache.org.

Reply via email to