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

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

commit a577ab80c31de7db736a3cc9fc9aad78c500d241
Author: Dewayne Richardson <dewr...@apache.org>
AuthorDate: Thu Mar 1 10:11:42 2018 -0700

    updated for TimeNoMod on the LastUpdated fields
    
    updated for TimeNoMod on the LastUpdated fields
    
    updated for TimeNoMod on the LastUpdated fields
    
    successful test to invoke the query parameter
---
 lib/go-tc/divisions.go                         |   6 +-
 lib/go-tc/parameters.go                        |   2 +-
 lib/go-tc/regions.go                           |  10 +-
 lib/go-tc/statuses.go                          |   8 +-
 traffic_ops/client/v13/parameter.go            | 133 +++++++++++++
 traffic_ops/testing/api/todb/todb.go           | 180 ++++++++---------
 traffic_ops/testing/api/v13/parameters_test.go | 111 +++++++++++
 traffic_ops/testing/api/v13/tc-fixtures.json   | 260 ++++++++++++-------------
 8 files changed, 479 insertions(+), 231 deletions(-)

diff --git a/lib/go-tc/divisions.go b/lib/go-tc/divisions.go
index ba4fe29..fd782d8 100644
--- a/lib/go-tc/divisions.go
+++ b/lib/go-tc/divisions.go
@@ -24,7 +24,7 @@ type DivisionsResponse struct {
 }
 
 type Division struct {
-       ID          int      `json:"id" db:"id"`
-       LastUpdated Time `json:"lastUpdated" db:"last_updated"`
-       Name        string   `json:"name" db:"name"`
+       ID          int       `json:"id" db:"id"`
+       LastUpdated TimeNoMod `json:"lastUpdated" db:"last_updated"`
+       Name        string    `json:"name" db:"name"`
 }
diff --git a/lib/go-tc/parameters.go b/lib/go-tc/parameters.go
index 5751e87..cbf7afb 100644
--- a/lib/go-tc/parameters.go
+++ b/lib/go-tc/parameters.go
@@ -30,7 +30,7 @@ type ParametersResponse struct {
 type Parameter struct {
        ConfigFile  string          `json:"configFile" db:"config_file"`
        ID          int             `json:"id" db:"id"`
-       LastUpdated Time            `json:"lastUpdated" db:"last_updated"`
+       LastUpdated TimeNoMod       `json:"lastUpdated" db:"last_updated"`
        Name        string          `json:"name" db:"name"`
        Profiles    json.RawMessage `json:"profiles" db:"profiles"`
        Secure      bool            `json:"secure" db:"secure"`
diff --git a/lib/go-tc/regions.go b/lib/go-tc/regions.go
index d32556c..379d56e 100644
--- a/lib/go-tc/regions.go
+++ b/lib/go-tc/regions.go
@@ -24,9 +24,9 @@ type RegionsResponse struct {
 }
 
 type Region struct {
-       DivisionName string `json:"divisionName"`
-       Division     int    `json:"division" db:"division"`
-       ID           int    `json:"id" db:"id"`
-       LastUpdated  Time   `json:"lastUpdated" db:"last_updated"`
-       Name         string `json:"name" db:"name"`
+       DivisionName string    `json:"divisionName"`
+       Division     int       `json:"division" db:"division"`
+       ID           int       `json:"id" db:"id"`
+       LastUpdated  TimeNoMod `json:"lastUpdated" db:"last_updated"`
+       Name         string    `json:"name" db:"name"`
 }
diff --git a/lib/go-tc/statuses.go b/lib/go-tc/statuses.go
index 4491f68..253b729 100644
--- a/lib/go-tc/statuses.go
+++ b/lib/go-tc/statuses.go
@@ -24,8 +24,8 @@ type StatusesResponse struct {
 }
 
 type Status struct {
-       Description string `json:"description" db:"description"`
-       ID          int    `json:"id" db:"id"`
-       LastUpdated Time   `json:"lastUpdated" db:"last_updated"`
-       Name        string `json:"name" db:"name"`
+       Description string    `json:"description" db:"description"`
+       ID          int       `json:"id" db:"id"`
+       LastUpdated TimeNoMod `json:"lastUpdated" db:"last_updated"`
+       Name        string    `json:"name" db:"name"`
 }
diff --git a/traffic_ops/client/v13/parameter.go 
b/traffic_ops/client/v13/parameter.go
new file mode 100644
index 0000000..0de8d0d
--- /dev/null
+++ b/traffic_ops/client/v13/parameter.go
@@ -0,0 +1,133 @@
+/*
+
+   Licensed under the Apache License, Version 2.0 (the "License");
+   you may not use this file except in compliance with the License.
+   You may obtain a copy of the License at
+
+   http://www.apache.org/licenses/LICENSE-2.0
+
+   Unless required by applicable law or agreed to in writing, software
+   distributed under the License is distributed on an "AS IS" BASIS,
+   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+   See the License for the specific language governing permissions and
+   limitations under the License.
+*/
+
+package v13
+
+import (
+       "encoding/json"
+       "fmt"
+       "net"
+       "net/http"
+
+       "github.com/apache/incubator-trafficcontrol/lib/go-tc"
+)
+
+const (
+       API_v13_Parameters = "/api/1.3/parameters"
+)
+
+// Create a Parameter
+func (to *Session) CreateParameter(pl tc.Parameter) (tc.Alerts, ReqInf, error) 
{
+
+       var remoteAddr net.Addr
+       reqBody, err := json.Marshal(pl)
+       reqInf := ReqInf{CacheHitStatus: CacheHitStatusMiss, RemoteAddr: 
remoteAddr}
+       if err != nil {
+               return tc.Alerts{}, reqInf, err
+       }
+       resp, remoteAddr, err := to.request(http.MethodPost, 
API_v13_Parameters, reqBody)
+       if err != nil {
+               return tc.Alerts{}, reqInf, err
+       }
+       defer resp.Body.Close()
+       var alerts tc.Alerts
+       err = json.NewDecoder(resp.Body).Decode(&alerts)
+       return alerts, reqInf, nil
+}
+
+// Update a Parameter by ID
+func (to *Session) UpdateParameterByID(id int, pl tc.Parameter) (tc.Alerts, 
ReqInf, error) {
+
+       var remoteAddr net.Addr
+       reqBody, err := json.Marshal(pl)
+       reqInf := ReqInf{CacheHitStatus: CacheHitStatusMiss, RemoteAddr: 
remoteAddr}
+       if err != nil {
+               return tc.Alerts{}, reqInf, err
+       }
+       route := fmt.Sprintf("%s/%d", API_v13_Parameters, id)
+       resp, remoteAddr, err := to.request(http.MethodPut, route, reqBody)
+       if err != nil {
+               return tc.Alerts{}, reqInf, err
+       }
+       defer resp.Body.Close()
+       var alerts tc.Alerts
+       err = json.NewDecoder(resp.Body).Decode(&alerts)
+       return alerts, reqInf, nil
+}
+
+// Returns a list of Parameters
+func (to *Session) GetParameters() ([]tc.Parameter, ReqInf, error) {
+       resp, remoteAddr, err := to.request(http.MethodGet, API_v13_Parameters, 
nil)
+       reqInf := ReqInf{CacheHitStatus: CacheHitStatusMiss, RemoteAddr: 
remoteAddr}
+       if err != nil {
+               return nil, reqInf, err
+       }
+       defer resp.Body.Close()
+
+       var data tc.ParametersResponse
+       err = json.NewDecoder(resp.Body).Decode(&data)
+       return data.Response, reqInf, nil
+}
+
+// GET a Parameter by the Parameter ID
+func (to *Session) GetParameterByID(id int) ([]tc.Parameter, ReqInf, error) {
+       route := fmt.Sprintf("%s/%d", API_v13_Parameters, id)
+       resp, remoteAddr, err := to.request(http.MethodGet, route, nil)
+       reqInf := ReqInf{CacheHitStatus: CacheHitStatusMiss, RemoteAddr: 
remoteAddr}
+       if err != nil {
+               return nil, reqInf, err
+       }
+       defer resp.Body.Close()
+
+       var data tc.ParametersResponse
+       if err := json.NewDecoder(resp.Body).Decode(&data); err != nil {
+               return nil, reqInf, err
+       }
+
+       return data.Response, reqInf, nil
+}
+
+// GET a Parameter by the Parameter name
+func (to *Session) GetParameterByName(name string) ([]tc.Parameter, ReqInf, 
error) {
+       url := API_v13_Parameters + "?name=" + name
+       fmt.Printf("url ---> %v\n", url)
+       resp, remoteAddr, err := to.request(http.MethodGet, url, nil)
+       reqInf := ReqInf{CacheHitStatus: CacheHitStatusMiss, RemoteAddr: 
remoteAddr}
+       if err != nil {
+               return nil, reqInf, err
+       }
+       defer resp.Body.Close()
+
+       var data tc.ParametersResponse
+       if err := json.NewDecoder(resp.Body).Decode(&data); err != nil {
+               return nil, reqInf, err
+       }
+
+       return data.Response, reqInf, nil
+}
+
+// DELETE a Parameter by ID
+func (to *Session) DeleteParameterByID(id int) (tc.Alerts, ReqInf, error) {
+       route := fmt.Sprintf("%s/%d", API_v13_Parameters, id)
+       resp, remoteAddr, err := to.request(http.MethodDelete, route, nil)
+       reqInf := ReqInf{CacheHitStatus: CacheHitStatusMiss, RemoteAddr: 
remoteAddr}
+       if err != nil {
+               return tc.Alerts{}, reqInf, err
+       }
+       defer resp.Body.Close()
+       var alerts tc.Alerts
+       err = json.NewDecoder(resp.Body).Decode(&alerts)
+       return alerts, reqInf, nil
+}
diff --git a/traffic_ops/testing/api/todb/todb.go 
b/traffic_ops/testing/api/todb/todb.go
index 1623b5f..d442cd0 100644
--- a/traffic_ops/testing/api/todb/todb.go
+++ b/traffic_ops/testing/api/todb/todb.go
@@ -80,35 +80,12 @@ func SetupTestData(cfg *config.Config, db *sql.DB) error {
                os.Exit(1)
        }
 
-       err = SetupParameters(cfg, db)
-       if err != nil {
-               fmt.Printf("\nError setting up parameter %s - %s, %v\n", 
cfg.TrafficOps.URL, cfg.TrafficOps.User, err)
-               os.Exit(1)
-       }
-
-       err = SetupProfiles(cfg, db)
-       if err != nil {
-               fmt.Printf("\nError setting up profile %s - %s, %v\n", 
cfg.TrafficOps.URL, cfg.TrafficOps.User, err)
-               os.Exit(1)
-       }
-
-       err = SetupProfileParameters(cfg, db)
-       if err != nil {
-               fmt.Printf("\nError setting up parameter %s - %s, %v\n", 
cfg.TrafficOps.URL, cfg.TrafficOps.User, err)
-               os.Exit(1)
-       }
        err = SetupTypes(cfg, db)
        if err != nil {
                fmt.Printf("\nError setting up type %s - %s, %v\n", 
cfg.TrafficOps.URL, cfg.TrafficOps.User, err)
                os.Exit(1)
        }
 
-       err = SetupCacheGroups(cfg, db)
-       if err != nil {
-               fmt.Printf("\nError setting up cachegroup %s - %s, %v\n", 
cfg.TrafficOps.URL, cfg.TrafficOps.User, err)
-               os.Exit(1)
-       }
-
        err = SetupDivisions(cfg, db)
        if err != nil {
                fmt.Printf("\nError setting up division %s - %s, %v\n", 
cfg.TrafficOps.URL, cfg.TrafficOps.User, err)
@@ -121,71 +98,98 @@ func SetupTestData(cfg *config.Config, db *sql.DB) error {
                os.Exit(1)
        }
 
-       err = SetupPhysLocations(cfg, db)
-       if err != nil {
-               fmt.Printf("\nError setting up phys_location %s - %s, %v\n", 
cfg.TrafficOps.URL, cfg.TrafficOps.User, err)
-               os.Exit(1)
-       }
-
-       err = SetupServers(cfg, db)
-       if err != nil {
-               fmt.Printf("\nError setting up server %s - %s, %v\n", 
cfg.TrafficOps.URL, cfg.TrafficOps.User, err)
-               os.Exit(1)
-       }
-
-       err = SetupAsns(cfg, db)
-       if err != nil {
-               fmt.Printf("\nError setting up asn %s - %s, %v\n", 
cfg.TrafficOps.URL, cfg.TrafficOps.User, err)
-               os.Exit(1)
-       }
-
-       err = SetupDeliveryServices(cfg, db)
-       if err != nil {
-               fmt.Printf("\nError setting up deliveryservice %s - %s, %v\n", 
cfg.TrafficOps.URL, cfg.TrafficOps.User, err)
-               os.Exit(1)
-       }
-
-       err = SetupRegexes(cfg, db)
-       if err != nil {
-               fmt.Printf("\nError setting up regex %s - %s, %v\n", 
cfg.TrafficOps.URL, cfg.TrafficOps.User, err)
-               os.Exit(1)
-       }
-
-       err = SetupDeliveryServiceRegexes(cfg, db)
-       if err != nil {
-               fmt.Printf("\nError setting up deliveryservice_regex %s - %s, 
%v\n", cfg.TrafficOps.URL, cfg.TrafficOps.User, err)
-               os.Exit(1)
-       }
-
-       err = SetupDeliveryServiceTmUsers(cfg, db)
-       if err != nil {
-               fmt.Printf("\nError setting up deliveryservice_tmuser %s - %s, 
%v\n", cfg.TrafficOps.URL, cfg.TrafficOps.User, err)
-               os.Exit(1)
-       }
-
-       err = SetupDeliveryServiceServers(cfg, db)
-       if err != nil {
-               fmt.Printf("\nError setting up deliveryservice_server %s - %s, 
%v\n", cfg.TrafficOps.URL, cfg.TrafficOps.User, err)
-               os.Exit(1)
-       }
-
-       err = SetupJobStatuses(cfg, db)
-       if err != nil {
-               fmt.Printf("\nError setting up job_status %s - %s, %v\n", 
cfg.TrafficOps.URL, cfg.TrafficOps.User, err)
-               os.Exit(1)
-       }
-
-       err = SetupJobAgents(cfg, db)
-       if err != nil {
-               fmt.Printf("\nError setting up job_agent %s - %s, %v\n", 
cfg.TrafficOps.URL, cfg.TrafficOps.User, err)
-               os.Exit(1)
-       }
-
-       err = SetupJobs(cfg, db)
-       if err != nil {
-               fmt.Printf("\nError setting up job %s - %s, %v\n", 
cfg.TrafficOps.URL, cfg.TrafficOps.User, err)
-               os.Exit(1)
-       }
+       /*
+               err = SetupParameters(cfg, db)
+               if err != nil {
+                       fmt.Printf("\nError setting up parameter %s - %s, 
%v\n", cfg.TrafficOps.URL, cfg.TrafficOps.User, err)
+                       os.Exit(1)
+               }
+
+               err = SetupProfiles(cfg, db)
+               if err != nil {
+                       fmt.Printf("\nError setting up profile %s - %s, %v\n", 
cfg.TrafficOps.URL, cfg.TrafficOps.User, err)
+                       os.Exit(1)
+               }
+
+               err = SetupProfileParameters(cfg, db)
+               if err != nil {
+                       fmt.Printf("\nError setting up parameter %s - %s, 
%v\n", cfg.TrafficOps.URL, cfg.TrafficOps.User, err)
+                       os.Exit(1)
+               }
+
+               err = SetupCacheGroups(cfg, db)
+               if err != nil {
+                       fmt.Printf("\nError setting up cachegroup %s - %s, 
%v\n", cfg.TrafficOps.URL, cfg.TrafficOps.User, err)
+                       os.Exit(1)
+               }
+
+
+               err = SetupPhysLocations(cfg, db)
+               if err != nil {
+                       fmt.Printf("\nError setting up phys_location %s - %s, 
%v\n", cfg.TrafficOps.URL, cfg.TrafficOps.User, err)
+                       os.Exit(1)
+               }
+
+               err = SetupServers(cfg, db)
+               if err != nil {
+                       fmt.Printf("\nError setting up server %s - %s, %v\n", 
cfg.TrafficOps.URL, cfg.TrafficOps.User, err)
+                       os.Exit(1)
+               }
+
+               err = SetupAsns(cfg, db)
+               if err != nil {
+                       fmt.Printf("\nError setting up asn %s - %s, %v\n", 
cfg.TrafficOps.URL, cfg.TrafficOps.User, err)
+                       os.Exit(1)
+               }
+
+               err = SetupDeliveryServices(cfg, db)
+               if err != nil {
+                       fmt.Printf("\nError setting up deliveryservice %s - %s, 
%v\n", cfg.TrafficOps.URL, cfg.TrafficOps.User, err)
+                       os.Exit(1)
+               }
+
+               err = SetupRegexes(cfg, db)
+               if err != nil {
+                       fmt.Printf("\nError setting up regex %s - %s, %v\n", 
cfg.TrafficOps.URL, cfg.TrafficOps.User, err)
+                       os.Exit(1)
+               }
+
+               err = SetupDeliveryServiceRegexes(cfg, db)
+               if err != nil {
+                       fmt.Printf("\nError setting up deliveryservice_regex %s 
- %s, %v\n", cfg.TrafficOps.URL, cfg.TrafficOps.User, err)
+                       os.Exit(1)
+               }
+
+               err = SetupDeliveryServiceTmUsers(cfg, db)
+               if err != nil {
+                       fmt.Printf("\nError setting up deliveryservice_tmuser 
%s - %s, %v\n", cfg.TrafficOps.URL, cfg.TrafficOps.User, err)
+                       os.Exit(1)
+               }
+
+               err = SetupDeliveryServiceServers(cfg, db)
+               if err != nil {
+                       fmt.Printf("\nError setting up deliveryservice_server 
%s - %s, %v\n", cfg.TrafficOps.URL, cfg.TrafficOps.User, err)
+                       os.Exit(1)
+               }
+
+               err = SetupJobStatuses(cfg, db)
+               if err != nil {
+                       fmt.Printf("\nError setting up job_status %s - %s, 
%v\n", cfg.TrafficOps.URL, cfg.TrafficOps.User, err)
+                       os.Exit(1)
+               }
+
+               err = SetupJobAgents(cfg, db)
+               if err != nil {
+                       fmt.Printf("\nError setting up job_agent %s - %s, 
%v\n", cfg.TrafficOps.URL, cfg.TrafficOps.User, err)
+                       os.Exit(1)
+               }
+
+               err = SetupJobs(cfg, db)
+               if err != nil {
+                       fmt.Printf("\nError setting up job %s - %s, %v\n", 
cfg.TrafficOps.URL, cfg.TrafficOps.User, err)
+                       os.Exit(1)
+               }
+       */
 
        return err
 }
diff --git a/traffic_ops/testing/api/v13/parameters_test.go 
b/traffic_ops/testing/api/v13/parameters_test.go
new file mode 100644
index 0000000..50004c2
--- /dev/null
+++ b/traffic_ops/testing/api/v13/parameters_test.go
@@ -0,0 +1,111 @@
+/*
+
+   Licensed under the Apache License, Version 2.0 (the "License");
+   you may not use this file except in compliance with the License.
+   You may obtain a copy of the License at
+
+   http://www.apache.org/licenses/LICENSE-2.0
+
+   Unless required by applicable law or agreed to in writing, software
+   distributed under the License is distributed on an "AS IS" BASIS,
+   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+   See the License for the specific language governing permissions and
+   limitations under the License.
+*/
+
+package v13
+
+import (
+       "fmt"
+       "testing"
+
+       "github.com/apache/incubator-trafficcontrol/lib/go-log"
+       tc "github.com/apache/incubator-trafficcontrol/lib/go-tc"
+)
+
+func TestParameters(t *testing.T) {
+
+       CreateTestParameters(t)
+       UpdateTestParameters(t)
+       GetTestParameters(t)
+       DeleteTestParameters(t)
+
+}
+
+func CreateTestParameters(t *testing.T) {
+
+       for _, pl := range testData.Parameters {
+               resp, _, err := TOSession.CreateParameter(pl)
+               log.Debugln("Response: ", resp)
+               if err != nil {
+                       t.Errorf("could not CREATE phys_locations: %v\n", err)
+               }
+       }
+
+}
+
+func UpdateTestParameters(t *testing.T) {
+
+       firstParameter := testData.Parameters[0]
+       fmt.Printf("firstParameter ---> %v\n", firstParameter)
+       // Retrieve the Parameter by name so we can get the id for the Update
+       resp, _, err := TOSession.GetParameterByName(firstParameter.Name)
+       fmt.Printf("resp ---> %v\n", resp)
+       if err != nil {
+               t.Errorf("cannot GET Parameter by name: %v - %v\n", 
firstParameter.Name, err)
+       }
+       remoteParameter := resp[0]
+       expectedParameterName := "UPDATED"
+       remoteParameter.Name = expectedParameterName
+       var alert tc.Alerts
+       alert, _, err = TOSession.UpdateParameterByID(remoteParameter.ID, 
remoteParameter)
+       if err != nil {
+               t.Errorf("cannot UPDATE Parameter by id: %v - %v\n", err, alert)
+       }
+
+       // Retrieve the Parameter to check Parameter name got updated
+       resp, _, err = TOSession.GetParameterByID(remoteParameter.ID)
+       if err != nil {
+               t.Errorf("cannot GET Parameter by name: %v - %v\n", 
firstParameter.Name, err)
+       }
+       respParameter := resp[0]
+       if respParameter.Name != expectedParameterName {
+               t.Errorf("results do not match actual: %s, expected: %s\n", 
respParameter.Name, expectedParameterName)
+       }
+
+}
+
+func GetTestParameters(t *testing.T) {
+
+       for _, pl := range testData.Parameters {
+               resp, _, err := TOSession.GetParameterByName(pl.Name)
+               if err != nil {
+                       t.Errorf("cannot GET Parameter by name: %v - %v\n", 
err, resp)
+               }
+       }
+}
+
+func DeleteTestParameters(t *testing.T) {
+
+       pl := testData.Parameters[1]
+       // Retrieve the Parameter by name so we can get the id for the Update
+       resp, _, err := TOSession.GetParameterByName(pl.Name)
+       if err != nil {
+               t.Errorf("cannot GET Parameter by name: %v - %v\n", pl.Name, 
err)
+       }
+       respParameter := resp[0]
+
+       delResp, _, err := TOSession.DeleteParameterByID(respParameter.ID)
+       if err != nil {
+               t.Errorf("cannot DELETE Parameter by name: %v - %v\n", err, 
delResp)
+       }
+
+       // Retrieve the Parameter to see if it got deleted
+       pls, _, err := TOSession.GetParameterByName(pl.Name)
+       if err != nil {
+               t.Errorf("error deleting Parameter name: %s\n", err.Error())
+       }
+       if len(pls) > 0 {
+               t.Errorf("expected Parameter name: %s to be deleted\n", pl.Name)
+       }
+}
diff --git a/traffic_ops/testing/api/v13/tc-fixtures.json 
b/traffic_ops/testing/api/v13/tc-fixtures.json
index f0723a6..de02966 100644
--- a/traffic_ops/testing/api/v13/tc-fixtures.json
+++ b/traffic_ops/testing/api/v13/tc-fixtures.json
@@ -172,497 +172,497 @@
     ],
     "parameters": [
         {
-            "config_file": "rascal.properties",
+            "configFile": "rascal.properties",
             "id": 4,
-            "last_updated": "2018-01-19T19:01:21.455131+00:00",
+            "lastUpdated": "2018-01-19T19:01:21.455131+00:00",
             "name": "health.threshold.loadavg",
             "secure": false,
             "value": "25.0"
         },
         {
-            "config_file": "rascal.properties",
+            "configFile": "rascal.properties",
             "id": 5,
-            "last_updated": "2018-01-19T19:01:21.472279+00:00",
+            "lastUpdated": "2018-01-19T19:01:21.472279+00:00",
             "name": "health.threshold.availableBandwidthInKbps",
             "secure": false,
             "value": ">1750000"
         },
         {
-            "config_file": "rascal.properties",
+            "configFile": "rascal.properties",
             "id": 6,
-            "last_updated": "2018-01-19T19:01:21.489534+00:00",
+            "lastUpdated": "2018-01-19T19:01:21.489534+00:00",
             "name": "history.count",
             "secure": false,
             "value": "30"
         },
         {
-            "config_file": "url_sig_cdl-c2.config",
+            "configFile": "url_sig_cdl-c2.config",
             "id": 7,
-            "last_updated": "2018-01-19T19:01:21.503311+00:00",
+            "lastUpdated": "2018-01-19T19:01:21.503311+00:00",
             "name": "key0",
             "secure": false,
             "value": "HOOJ3Ghq1x4gChp3iQkqVTcPlOj8UCi3"
         },
         {
-            "config_file": "url_sig_cdl-c2.config",
+            "configFile": "url_sig_cdl-c2.config",
             "id": 8,
-            "last_updated": "2018-01-19T19:01:21.505157+00:00",
+            "lastUpdated": "2018-01-19T19:01:21.505157+00:00",
             "name": "key1",
             "secure": false,
             "value": "_9LZYkRnfCS0rCBF7fTQzM9Scwlp2FhO"
         },
         {
-            "config_file": "url_sig_cdl-c2.config",
+            "configFile": "url_sig_cdl-c2.config",
             "id": 9,
-            "last_updated": "2018-01-19T19:01:21.508548+00:00",
+            "lastUpdated": "2018-01-19T19:01:21.508548+00:00",
             "name": "key2",
             "secure": false,
             "value": "AFpkxfc4oTiyFSqtY6_ohjt3V80aAIxS"
         },
         {
-            "config_file": "url_sig_cdl-c2.config",
+            "configFile": "url_sig_cdl-c2.config",
             "id": 10,
-            "last_updated": "2018-01-19T19:01:21.401781+00:00",
+            "lastUpdated": "2018-01-19T19:01:21.401781+00:00",
             "name": "key3",
             "secure": false,
             "value": "AL9kzs_SXaRZjPWH8G5e2m4ByTTzkzlc"
         },
         {
-            "config_file": "url_sig_cdl-c2.config",
+            "configFile": "url_sig_cdl-c2.config",
             "id": 11,
-            "last_updated": "2018-01-19T19:01:21.406601+00:00",
+            "lastUpdated": "2018-01-19T19:01:21.406601+00:00",
             "name": "key4",
             "secure": false,
             "value": "poP3n3szbD1U4vx1xQXV65BvkVgWzfN8"
         },
         {
-            "config_file": "url_sig_cdl-c2.config",
+            "configFile": "url_sig_cdl-c2.config",
             "id": 12,
-            "last_updated": "2018-01-19T19:01:21.408784+00:00",
+            "lastUpdated": "2018-01-19T19:01:21.408784+00:00",
             "name": "key5",
             "secure": false,
             "value": "1ir32ng4C4w137p5oq72kd2wqmIZUrya"
         },
         {
-            "config_file": "url_sig_cdl-c2.config",
+            "configFile": "url_sig_cdl-c2.config",
             "id": 13,
-            "last_updated": "2018-01-19T19:01:21.410854+00:00",
+            "lastUpdated": "2018-01-19T19:01:21.410854+00:00",
             "name": "key6",
             "secure": false,
             "value": "B1qLptn2T1b_iXeTCWDcVuYvANtH139f"
         },
         {
-            "config_file": "url_sig_cdl-c2.config",
+            "configFile": "url_sig_cdl-c2.config",
             "id": 14,
-            "last_updated": "2018-01-19T19:01:21.412716+00:00",
+            "lastUpdated": "2018-01-19T19:01:21.412716+00:00",
             "name": "key7",
             "secure": false,
             "value": "PiCV_5OODMzBbsNFMWsBxcQ8v1sK0TYE"
         },
         {
-            "config_file": "url_sig_cdl-c2.config",
+            "configFile": "url_sig_cdl-c2.config",
             "id": 15,
-            "last_updated": "2018-01-19T19:01:21.414638+00:00",
+            "lastUpdated": "2018-01-19T19:01:21.414638+00:00",
             "name": "key8",
             "secure": false,
             "value": "Ggpv6DqXDvt2s1CETPBpNKwaLk4fTM9l"
         },
         {
-            "config_file": "url_sig_cdl-c2.config",
+            "configFile": "url_sig_cdl-c2.config",
             "id": 16,
-            "last_updated": "2018-01-19T19:01:21.416551+00:00",
+            "lastUpdated": "2018-01-19T19:01:21.416551+00:00",
             "name": "key9",
             "secure": false,
             "value": "qPlVT_s6kL37aqb6hipDm4Bt55S72mI7"
         },
         {
-            "config_file": "url_sig_cdl-c2.config",
+            "configFile": "url_sig_cdl-c2.config",
             "id": 17,
-            "last_updated": "2018-01-19T19:01:21.418689+00:00",
+            "lastUpdated": "2018-01-19T19:01:21.418689+00:00",
             "name": "key10",
             "secure": false,
             "value": "BsI5A9EmWrobIS1FeuOs1z9fm2t2WSBe"
         },
         {
-            "config_file": "url_sig_cdl-c2.config",
+            "configFile": "url_sig_cdl-c2.config",
             "id": 18,
-            "last_updated": "2018-01-19T19:01:21.420467+00:00",
+            "lastUpdated": "2018-01-19T19:01:21.420467+00:00",
             "name": "key11",
             "secure": false,
             "value": "A54y66NCIj897GjS4yA9RrsSPtCUnQXP"
         },
         {
-            "config_file": "url_sig_cdl-c2.config",
+            "configFile": "url_sig_cdl-c2.config",
             "id": 19,
-            "last_updated": "2018-01-19T19:01:21.422414+00:00",
+            "lastUpdated": "2018-01-19T19:01:21.422414+00:00",
             "name": "key12",
             "secure": false,
             "value": "2jZH0NDPSJttIr4c2KP510f47EKqTQAu"
         },
         {
-            "config_file": "url_sig_cdl-c2.config",
+            "configFile": "url_sig_cdl-c2.config",
             "id": 20,
-            "last_updated": "2018-01-19T19:01:21.424435+00:00",
+            "lastUpdated": "2018-01-19T19:01:21.424435+00:00",
             "name": "key13",
             "secure": false,
             "value": "XduT2FBjBmmVID5JRB5LEf9oR5QDtBgC"
         },
         {
-            "config_file": "url_sig_cdl-c2.config",
+            "configFile": "url_sig_cdl-c2.config",
             "id": 21,
-            "last_updated": "2018-01-19T19:01:21.426125+00:00",
+            "lastUpdated": "2018-01-19T19:01:21.426125+00:00",
             "name": "key14",
             "secure": false,
             "value": "D9nH0SvK_0kP5w8QNd1UFJ28ulFkFKPn"
         },
         {
-            "config_file": "url_sig_cdl-c2.config",
+            "configFile": "url_sig_cdl-c2.config",
             "id": 22,
-            "last_updated": "2018-01-19T19:01:21.427797+00:00",
+            "lastUpdated": "2018-01-19T19:01:21.427797+00:00",
             "name": "key15",
             "secure": false,
             "value": "udKXWYNwbXXweaaLzaKDGl57OixnIIcm"
         },
         {
-            "config_file": "url_sig_cdl-c2.config",
+            "configFile": "url_sig_cdl-c2.config",
             "id": 23,
-            "last_updated": "2018-01-19T19:01:21.429365+00:00",
+            "lastUpdated": "2018-01-19T19:01:21.429365+00:00",
             "name": "location",
             "secure": false,
             "value": "/opt/trafficserver/etc/trafficserver"
         },
         {
-            "config_file": "url_sig_cdl-c2.config",
+            "configFile": "url_sig_cdl-c2.config",
             "id": 24,
-            "last_updated": "2018-01-19T19:01:21.431062+00:00",
+            "lastUpdated": "2018-01-19T19:01:21.431062+00:00",
             "name": "error_url",
             "secure": false,
             "value": "403"
         },
         {
-            "config_file": "records.config",
+            "configFile": "records.config",
             "id": 25,
-            "last_updated": "2018-01-19T19:01:21.432692+00:00",
+            "lastUpdated": "2018-01-19T19:01:21.432692+00:00",
             "name": "CONFIG proxy.config.allocator.debug_filter",
             "secure": false,
             "value": "INT 0"
         },
         {
-            "config_file": "records.config",
+            "configFile": "records.config",
             "id": 26,
-            "last_updated": "2018-01-19T19:01:21.434425+00:00",
+            "lastUpdated": "2018-01-19T19:01:21.434425+00:00",
             "name": "CONFIG proxy.config.allocator.enable_reclaim",
             "secure": false,
             "value": "INT 0"
         },
         {
-            "config_file": "records.config",
+            "configFile": "records.config",
             "id": 27,
-            "last_updated": "2018-01-19T19:01:21.435957+00:00",
+            "lastUpdated": "2018-01-19T19:01:21.435957+00:00",
             "name": "CONFIG proxy.config.allocator.max_overage",
             "secure": false,
             "value": "INT 3"
         },
         {
-            "config_file": "records.config",
+            "configFile": "records.config",
             "id": 28,
-            "last_updated": "2018-01-19T19:01:21.437496+00:00",
+            "lastUpdated": "2018-01-19T19:01:21.437496+00:00",
             "name": "CONFIG proxy.config.diags.show_location",
             "secure": false,
             "value": "INT 0"
         },
         {
-            "config_file": "records.config",
+            "configFile": "records.config",
             "id": 29,
-            "last_updated": "2018-01-19T19:01:21.439033+00:00",
+            "lastUpdated": "2018-01-19T19:01:21.439033+00:00",
             "name": "CONFIG proxy.config.http.cache.allow_empty_doc",
             "secure": false,
             "value": "INT 0"
         },
         {
-            "config_file": "records.config",
+            "configFile": "records.config",
             "id": 30,
-            "last_updated": "2018-01-19T19:01:21.440502+00:00",
+            "lastUpdated": "2018-01-19T19:01:21.440502+00:00",
             "name": "LOCAL proxy.config.cache.interim.storage",
             "secure": false,
             "value": "STRING NULL"
         },
         {
-            "config_file": "records.config",
+            "configFile": "records.config",
             "id": 31,
-            "last_updated": "2018-01-19T19:01:21.441933+00:00",
+            "lastUpdated": "2018-01-19T19:01:21.441933+00:00",
             "name": "CONFIG proxy.config.http.parent_proxy.file",
             "secure": false,
             "value": "STRING parent.config"
         },
         {
-            "config_file": "12M_facts",
+            "configFile": "12M_facts",
             "id": 32,
-            "last_updated": "2018-01-19T19:01:21.443436+00:00",
+            "lastUpdated": "2018-01-19T19:01:21.443436+00:00",
             "name": "location",
             "secure": false,
             "value": "/opt/ort"
         },
         {
-            "config_file": "cacheurl.config",
+            "configFile": "cacheurl.config",
             "id": 33,
-            "last_updated": "2018-01-19T19:01:21.444898+00:00",
+            "lastUpdated": "2018-01-19T19:01:21.444898+00:00",
             "name": "location",
             "secure": false,
             "value": "/opt/trafficserver/etc/trafficserver/"
         },
         {
-            "config_file": "ip_allow.config",
+            "configFile": "ip_allow.config",
             "id": 34,
-            "last_updated": "2018-01-19T19:01:21.446396+00:00",
+            "lastUpdated": "2018-01-19T19:01:21.446396+00:00",
             "name": "location",
             "secure": false,
             "value": "/opt/trafficserver/etc/trafficserver"
         },
         {
-            "config_file": "plugin.config",
+            "configFile": "plugin.config",
             "id": 35,
-            "last_updated": "2018-01-19T19:01:21.447837+00:00",
+            "lastUpdated": "2018-01-19T19:01:21.447837+00:00",
             "name": "astats_over_http.so",
             "secure": false,
             "value": "_astats 
33.101.99.100,172.39.19.39,172.39.19.49,172.39.19.49,172.39.29.49"
         },
         {
-            "config_file": "crontab_root",
+            "configFile": "crontab_root",
             "id": 36,
-            "last_updated": "2018-01-19T19:01:21.449259+00:00",
+            "lastUpdated": "2018-01-19T19:01:21.449259+00:00",
             "name": "location",
             "secure": false,
             "value": "/var/spool/cron"
         },
         {
-            "config_file": "hdr_rw_cdl-c2.config",
+            "configFile": "hdr_rw_cdl-c2.config",
             "id": 37,
-            "last_updated": "2018-01-19T19:01:21.450778+00:00",
+            "lastUpdated": "2018-01-19T19:01:21.450778+00:00",
             "name": "location",
             "secure": false,
             "value": "/opt/trafficserver/etc/trafficserver"
         },
         {
-            "config_file": "50-ats.rules",
+            "configFile": "50-ats.rules",
             "id": 38,
-            "last_updated": "2018-01-19T19:01:21.452196+00:00",
+            "lastUpdated": "2018-01-19T19:01:21.452196+00:00",
             "name": "location",
             "secure": false,
             "value": "/etc/udev/rules.d/"
         },
         {
-            "config_file": "parent.config",
+            "configFile": "parent.config",
             "id": 39,
-            "last_updated": "2018-01-19T19:01:21.453716+00:00",
+            "lastUpdated": "2018-01-19T19:01:21.453716+00:00",
             "name": "location",
             "secure": false,
             "value": "/opt/trafficserver/etc/trafficserver/"
         },
         {
-            "config_file": "remap.config",
+            "configFile": "remap.config",
             "id": 40,
-            "last_updated": "2018-01-19T19:01:21.456753+00:00",
+            "lastUpdated": "2018-01-19T19:01:21.456753+00:00",
             "name": "location",
             "secure": false,
             "value": "/opt/trafficserver/etc/trafficserver/"
         },
         {
-            "config_file": "drop_qstring.config",
+            "configFile": "drop_qstring.config",
             "id": 41,
-            "last_updated": "2018-01-19T19:01:21.45835+00:00",
+            "lastUpdated": "2018-01-19T19:01:21.45835+00:00",
             "name": "location",
             "secure": false,
             "value": "/opt/trafficserver/etc/trafficserver"
         },
         {
-            "config_file": "logs_xml.config",
+            "configFile": "logs_xml.config",
             "id": 43,
-            "last_updated": "2018-01-19T19:01:21.461206+00:00",
+            "lastUpdated": "2018-01-19T19:01:21.461206+00:00",
             "name": "LogFormat.Name",
             "secure": false,
             "value": "custom_ats_2"
         },
         {
-            "config_file": "logs_xml.config",
+            "configFile": "logs_xml.config",
             "id": 44,
-            "last_updated": "2018-01-19T19:01:21.462772+00:00",
+            "lastUpdated": "2018-01-19T19:01:21.462772+00:00",
             "name": "LogObject.Format",
             "secure": false,
             "value": "custom_ats_2"
         },
         {
-            "config_file": "logs_xml.config",
+            "configFile": "logs_xml.config",
             "id": 45,
-            "last_updated": "2018-01-19T19:01:21.464259+00:00",
+            "lastUpdated": "2018-01-19T19:01:21.464259+00:00",
             "name": "LogObject.Filename",
             "secure": false,
             "value": "custom_ats_2"
         },
         {
-            "config_file": "cache.config",
+            "configFile": "cache.config",
             "id": 46,
-            "last_updated": "2018-01-19T19:01:21.465717+00:00",
+            "lastUpdated": "2018-01-19T19:01:21.465717+00:00",
             "name": "location",
             "secure": false,
             "value": "/opt/trafficserver/etc/trafficserver/"
         },
         {
-            "config_file": "records.config",
+            "configFile": "records.config",
             "id": 47,
-            "last_updated": "2018-01-19T19:01:21.467349+00:00",
+            "lastUpdated": "2018-01-19T19:01:21.467349+00:00",
             "name": "CONFIG proxy.config.cache.control.filename",
             "secure": false,
             "value": "STRING cache.config"
         },
         {
-            "config_file": "plugin.config",
+            "configFile": "plugin.config",
             "id": 48,
-            "last_updated": "2018-01-19T19:01:21.469075+00:00",
+            "lastUpdated": "2018-01-19T19:01:21.469075+00:00",
             "name": "regex_revalidate.so",
             "secure": false,
             "value": "--config regex_revalidate.config"
         },
         {
-            "config_file": "regex_revalidate.config",
+            "configFile": "regex_revalidate.config",
             "id": 49,
-            "last_updated": "2018-01-19T19:01:21.470677+00:00",
+            "lastUpdated": "2018-01-19T19:01:21.470677+00:00",
             "name": "location",
             "secure": false,
             "value": "/opt/trafficserver/etc/trafficserver"
         },
         {
-            "config_file": "hosting.config",
+            "configFile": "hosting.config",
             "id": 50,
-            "last_updated": "2018-01-19T19:01:21.474023+00:00",
+            "lastUpdated": "2018-01-19T19:01:21.474023+00:00",
             "name": "location",
             "secure": false,
             "value": "/opt/trafficserver/etc/trafficserver/"
         },
         {
-            "config_file": "volume.config",
+            "configFile": "volume.config",
             "id": 51,
-            "last_updated": "2018-01-19T19:01:21.475515+00:00",
+            "lastUpdated": "2018-01-19T19:01:21.475515+00:00",
             "name": "location",
             "secure": false,
             "value": "/opt/trafficserver/etc/trafficserver/"
         },
         {
-            "config_file": "astats.config",
+            "configFile": "astats.config",
             "id": 52,
-            "last_updated": "2018-01-19T19:01:21.477074+00:00",
+            "lastUpdated": "2018-01-19T19:01:21.477074+00:00",
             "name": "allow_ip",
             "secure": false,
             "value": "127.0.0.1,172.39.0.0/16,33.101.99.0/24"
         },
         {
-            "config_file": "astats.config",
+            "configFile": "astats.config",
             "id": 53,
-            "last_updated": "2018-01-19T19:01:21.478516+00:00",
+            "lastUpdated": "2018-01-19T19:01:21.478516+00:00",
             "name": "allow_ip6",
             "secure": false,
             "value": 
"::1,2033:D011:3300::336/64,2033:D011:3300::335/64,2033:D021:3300::333/64,2033:D021:3300::334/64"
         },
         {
-            "config_file": "astats.config",
+            "configFile": "astats.config",
             "id": 54,
-            "last_updated": "2018-01-19T19:01:21.480143+00:00",
+            "lastUpdated": "2018-01-19T19:01:21.480143+00:00",
             "name": "record_types",
             "secure": false,
             "value": "144"
         },
         {
-            "config_file": "astats.config",
+            "configFile": "astats.config",
             "id": 55,
-            "last_updated": "2018-01-19T19:01:21.481582+00:00",
+            "lastUpdated": "2018-01-19T19:01:21.481582+00:00",
             "name": "location",
             "secure": false,
             "value": "/opt/trafficserver/etc/trafficserver"
         },
         {
-            "config_file": "astats.config",
+            "configFile": "astats.config",
             "id": 56,
-            "last_updated": "2018-01-19T19:01:21.482959+00:00",
+            "lastUpdated": "2018-01-19T19:01:21.482959+00:00",
             "name": "path",
             "secure": false,
             "value": "_astats"
         },
         {
-            "config_file": "storage.config",
+            "configFile": "storage.config",
             "id": 57,
-            "last_updated": "2018-01-19T19:01:21.484501+00:00",
+            "lastUpdated": "2018-01-19T19:01:21.484501+00:00",
             "name": "location",
             "secure": false,
             "value": "/opt/trafficserver/etc/trafficserver/"
         },
         {
-            "config_file": "storage.config",
+            "configFile": "storage.config",
             "id": 58,
-            "last_updated": "2018-01-19T19:01:21.48625+00:00",
+            "lastUpdated": "2018-01-19T19:01:21.48625+00:00",
             "name": "Drive_Prefix",
             "secure": false,
             "value": "/dev/sd"
         },
         {
-            "config_file": "storage.config",
+            "configFile": "storage.config",
             "id": 59,
-            "last_updated": "2018-01-19T19:01:21.487958+00:00",
+            "lastUpdated": "2018-01-19T19:01:21.487958+00:00",
             "name": "Drive_Letters",
             "secure": false,
             "value": "b,c,d,e,f,g,h,i,j,k,l,m,n,o"
         },
         {
-            "config_file": "storage.config",
+            "configFile": "storage.config",
             "id": 60,
-            "last_updated": "2018-01-19T19:01:21.491181+00:00",
+            "lastUpdated": "2018-01-19T19:01:21.491181+00:00",
             "name": "Disk_Volume",
             "secure": false,
             "value": "1"
         },
         {
-            "config_file": "records.config",
+            "configFile": "records.config",
             "id": 61,
-            "last_updated": "2018-01-19T19:01:21.49285+00:00",
+            "lastUpdated": "2018-01-19T19:01:21.49285+00:00",
             "name": "CONFIG proxy.config.hostdb.storage_size",
             "secure": false,
             "value": "INT 33554432"
         },
         {
-            "config_file": "regex_revalidate.config",
+            "configFile": "regex_revalidate.config",
             "id": 63,
-            "last_updated": "2018-01-19T19:01:21.494468+00:00",
+            "lastUpdated": "2018-01-19T19:01:21.494468+00:00",
             "name": "maxRevalDurationDays",
             "secure": false,
             "value": "3"
         },
         {
-            "config_file": "regex_revalidate.config",
+            "configFile": "regex_revalidate.config",
             "id": 64,
-            "last_updated": "2018-01-19T19:01:21.496195+00:00",
+            "lastUpdated": "2018-01-19T19:01:21.496195+00:00",
             "name": "maxRevalDurationDays",
             "secure": false,
             "value": "90"
         },
         {
-            "config_file": "whaterver.config",
+            "configFile": "whaterver.config",
             "id": 65,
-            "last_updated": "2018-01-19T19:01:21.497838+00:00",
+            "lastUpdated": "2018-01-19T19:01:21.497838+00:00",
             "name": "unassigned_parameter_1",
             "secure": false,
             "value": "852"
         },
         {
-            "config_file": "package",
+            "configFile": "package",
             "id": 66,
-            "last_updated": "2018-01-19T19:01:21.499423+00:00",
+            "lastUpdated": "2018-01-19T19:01:21.499423+00:00",
             "name": "trafficserver",
             "secure": false,
             "value": "5.3.2-765.f4354b9.el7.centos.x86_64"
         },
         {
-            "config_file": "global",
+            "configFile": "global",
             "id": 67,
-            "last_updated": "2018-01-19T19:01:21.501151+00:00",
+            "lastUpdated": "2018-01-19T19:01:21.501151+00:00",
             "name": "use_tenancy",
             "secure": false,
             "value": "1"
@@ -674,12 +674,12 @@
             "city": "Denver",
             "comments": null,
             "email": null,
-            "last_updated": "2018-01-19T21:19:32.081465+00:00",
+            "lastUpdated": "2018-01-19T21:19:32.081465+00:00",
             "name": "Denver",
             "phone": "303-111-1111",
             "poc": null,
             "regionId": 100,
-            "short_name": "denver",
+            "shortName": "denver",
             "state": "CO",
             "zip": "80202"
         },
@@ -688,12 +688,12 @@
             "city": "Boulder",
             "comments": null,
             "email": null,
-            "last_updated": "2018-01-19T21:19:32.086195+00:00",
+            "lastUpdated": "2018-01-19T21:19:32.086195+00:00",
             "name": "Boulder",
             "phone": "303-222-2222",
             "poc": null,
             "regionId": 100,
-            "short_name": "boulder",
+            "shortName": "boulder",
             "state": "CO",
             "zip": "80301"
         },
@@ -702,12 +702,12 @@
             "city": "Atlanta",
             "comments": null,
             "email": null,
-            "last_updated": "2018-01-19T21:19:32.089538+00:00",
+            "lastUpdated": "2018-01-19T21:19:32.089538+00:00",
             "name": "HotAtlanta",
             "phone": "404-222-2222",
             "poc": null,
             "regionId": 100,
-            "short_name": "atlanta",
+            "shortName": "atlanta",
             "state": "GA",
             "zip": "30301"
         }

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

Reply via email to