package app import ( "fmt" "time" ) // InjectResponseMeta takes a ResopnseMeta instance and injects additional metadata func InjectResponseMeta(r *ResponseMeta) *ResponseMeta { theResponseMeta := ResponseMeta{ Contact: "Contact Taxnexus at https://taxnexus.net/, info@taxnexus.net or +1-510-679-1900", Copyright: "Taxnexus API and all Taxnexus content is Copyright (c) 2018-2020 by Taxnexus, Inc. All Rights Reserved.", //nolint:lll // response text License: "Proprietary - Do Not Copy", Pagination: r.Pagination, TaxnexusAccount: r.TaxnexusAccount, ServerInfo: r.ServerInfo, ServerResponseTime: r.ServerResponseTime, ServerTimestamp: r.ServerTimestamp, RequestType: r.RequestType, RequestIP: r.RequestIP, RequestURL: r.RequestURL, } return &theResponseMeta } // NewResponseMeta creates a template meta response func NewResponseMeta() *ResponseMeta { return &ResponseMeta{ Contact: "Contact Taxnexus at https://taxnexus.net/, info@taxnexus.net or +1-510-679-1900", Copyright: "Taxnexus API and all Taxnexus content is Copyright (c) 2018-2020 by Taxnexus, Inc. All Rights Reserved.", //nolint:lll // response text License: "Proprietary - Do Not Copy", Pagination: &Pagination{ Limit: 1, Pagesize: 1, Poffset: 0, Setsize: 1, }, ServerInfo: "Taxnexus v1.2.7 - Go", ServerTimestamp: fmt.Sprint(time.Now().Local()), } } // NewResponseMetaWithPagination creates a template meta response with pagination func NewResponseMetaWithPagination(p *Pagination) *ResponseMeta { return &ResponseMeta{ Contact: "Contact Taxnexus at https://taxnexus.net/, info@taxnexus.net or +1-510-679-1900", Copyright: "Taxnexus API and all Taxnexus content is Copyright (c) 2018-2020 by Taxnexus, Inc. All Rights Reserved.", //nolint:lll // response text License: "Proprietary - Do Not Copy", ServerInfo: "Taxnexus v1.2.7 - Go", ServerTimestamp: fmt.Sprint(time.Now()), Pagination: p, } } // ResponseMeta is a struct type ResponseMeta struct { Contact string Copyright string License string OperationID string Pagination *Pagination RequestIP string RequestType string RequestURL string ServerInfo string ServerResponseTime string ServerTimestamp string TaxnexusAccount string } // Pagination is a struct type Pagination struct { Limit int64 Pagesize int64 Poffset int64 Setsize int64 }