diff options
-rw-r--r-- | ethwire/client_identity.go | 20 |
1 files changed, 11 insertions, 9 deletions
diff --git a/ethwire/client_identity.go b/ethwire/client_identity.go index e803406d8..4e4f854ba 100644 --- a/ethwire/client_identity.go +++ b/ethwire/client_identity.go @@ -11,7 +11,6 @@ type ClientIdentity interface { } type SimpleClientIdentity struct { - clientString string clientIdentifier string version string customIdentifier string @@ -27,26 +26,29 @@ func NewSimpleClientIdentity(clientIdentifier string, version string, customIden os: runtime.GOOS, implementation: "Go", } - clientIdentity.init() + return clientIdentity } func (c *SimpleClientIdentity) init() { - c.clientString = fmt.Sprintf("%s/v%s/%s/%s/%s", +} + +func (c *SimpleClientIdentity) String() string { + var id string + if len(c.customIdentifier) > 0 { + id = "/" + c.customIdentifier + } + + return fmt.Sprintf("%s/v%s%s/%s/%s", c.clientIdentifier, c.version, - c.customIdentifier, + id, c.os, c.implementation) } -func (c *SimpleClientIdentity) String() string { - return c.clientString -} - func (c *SimpleClientIdentity) SetCustomIdentifier(customIdentifier string) { c.customIdentifier = customIdentifier - c.init() } func (c *SimpleClientIdentity) GetCustomIdentifier() string { |