diff --git a/app/iceflake.go b/app/iceflake.go index 50f8486..b268b1d 100644 --- a/app/iceflake.go +++ b/app/iceflake.go @@ -28,8 +28,8 @@ type Option struct { type IceFlake struct { // Listener instance of net.Listener implementation net.Listener - // iceflake.Generator Implant IDGenerator - iceflake.Generator + // iceflake.GeneratorService Implant IDGeneratorService + iceflake.GeneratorService preparing chan interface{} baseTime time.Time option *Option @@ -46,11 +46,11 @@ func New(o *Option) (*IceFlake, error) { return nil, err } return &IceFlake{ - Listener: l, - Generator: iceflake.New(o.WorkerID, o.BaseTime), - baseTime: o.BaseTime, - option: o, - preparing: make(chan interface{}), + Listener: l, + GeneratorService: iceflake.New(o.WorkerID, o.BaseTime), + baseTime: o.BaseTime, + option: o, + preparing: make(chan interface{}), }, nil } diff --git a/app/iceflake_test.go b/app/iceflake_test.go index 30957e7..8fd4cbd 100644 --- a/app/iceflake_test.go +++ b/app/iceflake_test.go @@ -45,7 +45,7 @@ func TestListen(t *testing.T) { go ice.Listen(ctx) <-ice.Preparing() - cli := ic.NewClient("unix", fp) + cli := ic.New("unix", fp) result, err := cli.Get() if err != nil { t.Error("error: ", err) @@ -75,7 +75,7 @@ func BenchmarkListen(b *testing.B) { defer cancel() go ice.Listen(ctx) <-ice.Preparing() - cli := ic.NewClient("unix", fp) + cli := ic.New("unix", fp) b.ResetTimer() b.RunParallel(func(pb *testing.PB) { for pb.Next() { diff --git a/client/iceflake/client.go b/client/iceflake/client.go index 06917df..4e3df65 100644 --- a/client/iceflake/client.go +++ b/client/iceflake/client.go @@ -14,8 +14,8 @@ type Client struct { addr string } -// NewClient returns new Client -func NewClient(listenType, addr string) *Client { +// New returns new Client +func New(listenType, addr string) *Client { return &Client{ listenType: listenType, addr: addr, diff --git a/client/iceflake/client_test.go b/client/iceflake/client_test.go index ae56bd9..3628e13 100644 --- a/client/iceflake/client_test.go +++ b/client/iceflake/client_test.go @@ -45,7 +45,7 @@ func TestListen(t *testing.T) { go ice.Listen(ctx) <-ice.Preparing() - cli := NewClient("unix", fp) + cli := New("unix", fp) result, err := cli.Get() if err != nil { t.Error("error: ", err) diff --git a/generator.go b/generator.go index d5e1e85..cdc07c2 100644 --- a/generator.go +++ b/generator.go @@ -8,8 +8,8 @@ import ( "github.com/istyle-inc/iceflake/foundation" ) -// Generator interface of generator generates each Unique ID -type Generator interface { +// GeneratorService interface of generator generates each Unique ID +type GeneratorService interface { Generate() (uint64, error) } @@ -19,8 +19,8 @@ const ( initialSequentialNumber = 1 ) -// GeneratorService local implement of Generator -type GeneratorService struct { +// Generator local implement of GeneratorService +type Generator struct { w uint64 baseTime time.Time lastTS uint64 @@ -29,8 +29,8 @@ type GeneratorService struct { } // New return new Generator instance -func New(workerID uint64, baseTime time.Time) Generator { - return &GeneratorService{ +func New(workerID uint64, baseTime time.Time) GeneratorService { + return &Generator{ w: workerID, baseTime: baseTime, lastTS: 0, @@ -39,7 +39,7 @@ func New(workerID uint64, baseTime time.Time) Generator { } // Generate generate unique id -func (g *GeneratorService) Generate() (uint64, error) { +func (g *Generator) Generate() (uint64, error) { g.gate.Lock() defer g.gate.Unlock() @@ -57,6 +57,6 @@ func (g *GeneratorService) Generate() (uint64, error) { } // GetTimeInt get uint value differ between now and epochtime -func (g *GeneratorService) GetTimeInt() uint64 { +func (g *Generator) GetTimeInt() uint64 { return uint64(foundation.InternalTimer.Now().Sub(g.baseTime).Round(time.Millisecond)) / uint64(time.Millisecond) } diff --git a/generator_test.go b/generator_test.go index 6b2a92c..1d32d09 100644 --- a/generator_test.go +++ b/generator_test.go @@ -70,7 +70,7 @@ func TestIceFlakeGenerator_Generate(t *testing.T) { } for _, tt := range tests { t.Run(tt.name, func(t *testing.T) { - g := GeneratorService{ + g := Generator{ w: tt.fields.w, baseTime: tt.fields.baseTime, lastTS: tt.fields.lastTS, @@ -96,7 +96,7 @@ func TestNewIDGenerator(t *testing.T) { tests := []struct { name string args args - want Generator + want GeneratorService }{ { name: "succeeded to make new generator", @@ -104,7 +104,7 @@ func TestNewIDGenerator(t *testing.T) { workerID: 1, baseTime: time.Date(2018, 1, 1, 0, 0, 0, 0, time.UTC), }, - want: &GeneratorService{ + want: &Generator{ w: 1, baseTime: time.Date(2018, 1, 1, 0, 0, 0, 0, time.UTC), lastTS: 0,