diff --git a/cmd/locket/main_test.go b/cmd/locket/main_test.go index cb908b9..40d25fa 100644 --- a/cmd/locket/main_test.go +++ b/cmd/locket/main_test.go @@ -173,10 +173,11 @@ var _ = Describe("Locket", func() { Context("when a lock is acquired", func() { JustBeforeEach(func() { requestedResource := &models.Resource{Key: "test", Value: "test-data", Owner: "jim", TypeCode: models.LOCK} - _, err := locketClient.Lock(context.Background(), &models.LockRequest{ + lockRequest := &models.LockRequest{ Resource: requestedResource, TtlInSeconds: 10, - }) + } + _, err := locketClient.Lock(context.Background(), lockRequest) Expect(err).NotTo(HaveOccurred()) }) @@ -224,10 +225,11 @@ var _ = Describe("Locket", func() { defer wg.Done() var err error for j := 0; j < 3; j++ { - _, err := locketClient.Lock(context.Background(), &models.LockRequest{ + lockRequest := &models.LockRequest{ Resource: requestedResource, TtlInSeconds: 10, - }) + } + _, err := locketClient.Lock(context.Background(), lockRequest) if err == nil { break } @@ -333,10 +335,11 @@ var _ = Describe("Locket", func() { _, err := sqlRunner.DB().Exec("DROP TABLE locks") Expect(err).NotTo(HaveOccurred()) requestedResource := &models.Resource{Key: "test", Value: "test-data", Owner: "jim", TypeCode: models.LOCK} - _, err = locketClient.Lock(context.Background(), &models.LockRequest{ + lockRequest := &models.LockRequest{ Resource: requestedResource, TtlInSeconds: 10, - }) + } + _, err = locketClient.Lock(context.Background(), lockRequest) Expect(err).To(HaveOccurred()) }) @@ -349,31 +352,35 @@ var _ = Describe("Locket", func() { It("locks the key with the corresponding value", func() { requestedResource := &models.Resource{Key: "test", Value: "test-data", Owner: "jim", TypeCode: models.LOCK} expectedResource := &models.Resource{Key: "test", Value: "test-data", Owner: "jim", Type: "lock", TypeCode: models.LOCK} - _, err := locketClient.Lock(context.Background(), &models.LockRequest{ + lockRequest := &models.LockRequest{ Resource: requestedResource, TtlInSeconds: 10, - }) + } + _, err := locketClient.Lock(context.Background(), lockRequest) Expect(err).NotTo(HaveOccurred()) - resp, err := locketClient.Fetch(context.Background(), &models.FetchRequest{Key: "test"}) + fetchRequest := &models.FetchRequest{Key: "test"} + resp, err := locketClient.Fetch(context.Background(), fetchRequest) Expect(err).NotTo(HaveOccurred()) Expect(resp.Resource).To(BeEquivalentTo(expectedResource)) requestedResource = &models.Resource{Key: "test", Value: "test-data", Owner: "nima", TypeCode: models.LOCK} - _, err = locketClient.Lock(context.Background(), &models.LockRequest{ + lockRequest = &models.LockRequest{ Resource: requestedResource, TtlInSeconds: 10, - }) + } + _, err = locketClient.Lock(context.Background(), lockRequest) Expect(err).To(HaveOccurred()) }) It("logs the uuid of the request", func() { requestedResource := &models.Resource{Key: "test", Value: "test-data", Owner: "jim", TypeCode: models.LOCK} ctx := metadata.NewOutgoingContext(context.Background(), metadata.Pairs("uuid", "some-uuid")) - _, err := locketClient.Lock(ctx, &models.LockRequest{ + lockRequest := &models.LockRequest{ Resource: requestedResource, TtlInSeconds: 10, - }) + } + _, err := locketClient.Lock(ctx, lockRequest) Expect(err).NotTo(HaveOccurred()) Eventually(locketRunner).Should(gbytes.Say("some-uuid")) @@ -381,14 +388,16 @@ var _ = Describe("Locket", func() { It("expires after a ttl", func() { requestedResource := &models.Resource{Key: "test", Value: "test-data", Owner: "jim", TypeCode: models.LOCK} - _, err := locketClient.Lock(context.Background(), &models.LockRequest{ + lockRequest := &models.LockRequest{ Resource: requestedResource, TtlInSeconds: 6, - }) + } + _, err := locketClient.Lock(context.Background(), lockRequest) Expect(err).NotTo(HaveOccurred()) Eventually(func() error { - _, err := locketClient.Fetch(context.Background(), &models.FetchRequest{Key: "test"}) + fetchRequest := &models.FetchRequest{Key: "test"} + _, err := locketClient.Fetch(context.Background(), fetchRequest) return err }, 10*time.Second).Should(HaveOccurred()) }) @@ -396,10 +405,11 @@ var _ = Describe("Locket", func() { Context("when the lock server disappears unexpectedly", func() { It("still disappears after ~ the ttl", func() { requestedResource := &models.Resource{Key: "test", Value: "test-data", Owner: "jim", TypeCode: models.LOCK} - _, err := locketClient.Lock(context.Background(), &models.LockRequest{ + lockRequest := &models.LockRequest{ Resource: requestedResource, TtlInSeconds: 3, - }) + } + _, err := locketClient.Lock(context.Background(), lockRequest) Expect(err).NotTo(HaveOccurred()) ginkgomon.Kill(locketProcess) @@ -409,7 +419,8 @@ var _ = Describe("Locket", func() { locketProcess = ginkgomon.Invoke(locketRunner) Eventually(func() error { - _, err := locketClient.Fetch(context.Background(), &models.FetchRequest{Key: "test"}) + fetchRequest := &models.FetchRequest{Key: "test"} + _, err := locketClient.Fetch(context.Background(), fetchRequest) return err }, 6*time.Second).Should(HaveOccurred()) }) @@ -422,7 +433,8 @@ var _ = Describe("Locket", func() { Context("when the lock does not exist", func() { It("does not throw an error releasing the lock", func() { requestedResource = &models.Resource{Key: "test", Value: "test-data", Owner: "jim", TypeCode: models.LOCK} - _, err := locketClient.Release(context.Background(), &models.ReleaseRequest{Resource: requestedResource}) + releaseRequest := &models.ReleaseRequest{Resource: requestedResource} + _, err := locketClient.Release(context.Background(), releaseRequest) Expect(err).NotTo(HaveOccurred()) }) }) @@ -431,26 +443,31 @@ var _ = Describe("Locket", func() { JustBeforeEach(func() { requestedResource = &models.Resource{Key: "test", Value: "test-data", Owner: "jim", TypeCode: models.LOCK} expectedResource := &models.Resource{Key: "test", Value: "test-data", Owner: "jim", Type: "lock", TypeCode: models.LOCK} - _, err := locketClient.Lock(context.Background(), &models.LockRequest{Resource: requestedResource, TtlInSeconds: 10}) + lockRequest := &models.LockRequest{Resource: requestedResource, TtlInSeconds: 10} + _, err := locketClient.Lock(context.Background(), lockRequest) Expect(err).NotTo(HaveOccurred()) - resp, err := locketClient.Fetch(context.Background(), &models.FetchRequest{Key: "test"}) + fetchRequest := &models.FetchRequest{Key: "test"} + resp, err := locketClient.Fetch(context.Background(), fetchRequest) Expect(err).NotTo(HaveOccurred()) Expect(resp.Resource).To(BeEquivalentTo(expectedResource)) }) It("releases the lock", func() { - _, err := locketClient.Release(context.Background(), &models.ReleaseRequest{Resource: requestedResource}) + releaseRequest := &models.ReleaseRequest{Resource: requestedResource} + _, err := locketClient.Release(context.Background(), releaseRequest) Expect(err).NotTo(HaveOccurred()) - _, err = locketClient.Fetch(context.Background(), &models.FetchRequest{Key: "test"}) + fetchRequest := &models.FetchRequest{Key: "test"} + _, err = locketClient.Fetch(context.Background(), fetchRequest) Expect(err).To(HaveOccurred()) }) Context("when another process is the lock owner", func() { It("throws an error", func() { requestedResource = &models.Resource{Key: "test", Value: "test-data", Owner: "nima", TypeCode: models.LOCK} - _, err := locketClient.Release(context.Background(), &models.ReleaseRequest{Resource: requestedResource}) + releaseRequest := &models.ReleaseRequest{Resource: requestedResource} + _, err := locketClient.Release(context.Background(), releaseRequest) Expect(err).To(HaveOccurred()) }) }) @@ -463,28 +480,33 @@ var _ = Describe("Locket", func() { ) JustBeforeEach(func() { - _, err := locketClient.Lock(context.Background(), &models.LockRequest{ + + lock1Request := &models.LockRequest{ Resource: resource1, TtlInSeconds: 10, - }) + } + _, err := locketClient.Lock(context.Background(), lock1Request) Expect(err).NotTo(HaveOccurred()) - _, err = locketClient.Lock(context.Background(), &models.LockRequest{ + lock2Request := &models.LockRequest{ Resource: resource2, TtlInSeconds: 10, - }) + } + _, err = locketClient.Lock(context.Background(), lock2Request) Expect(err).NotTo(HaveOccurred()) - _, err = locketClient.Lock(context.Background(), &models.LockRequest{ + lock3Request := &models.LockRequest{ Resource: resource3, TtlInSeconds: 10, - }) + } + _, err = locketClient.Lock(context.Background(), lock3Request) Expect(err).NotTo(HaveOccurred()) - _, err = locketClient.Lock(context.Background(), &models.LockRequest{ + lock4Request := &models.LockRequest{ Resource: resource4, TtlInSeconds: 10, - }) + } + _, err = locketClient.Lock(context.Background(), lock4Request) Expect(err).NotTo(HaveOccurred()) }) @@ -504,13 +526,15 @@ var _ = Describe("Locket", func() { }) It("fetches all the locks corresponding to type code", func() { - response, err := locketClient.FetchAll(context.Background(), &models.FetchAllRequest{TypeCode: models.LOCK}) + fetchAllRequest := &models.FetchAllRequest{TypeCode: models.LOCK} + response, err := locketClient.FetchAll(context.Background(), fetchAllRequest) Expect(err).NotTo(HaveOccurred()) Expect(response.Resources).To(ConsistOf(expectedResource1, expectedResource2)) }) It("fetches all the presences corresponding to type", func() { - response, err := locketClient.FetchAll(context.Background(), &models.FetchAllRequest{TypeCode: models.PRESENCE}) + fetchAllRequest := &models.FetchAllRequest{TypeCode: models.PRESENCE} + response, err := locketClient.FetchAll(context.Background(), fetchAllRequest) Expect(err).NotTo(HaveOccurred()) Expect(response.Resources).To(ConsistOf(expectedResource3, expectedResource4)) }) @@ -527,7 +551,8 @@ var _ = Describe("Locket", func() { JustBeforeEach(func() { _, err := sqlRunner.DB().Exec("DROP TABLE locks") Expect(err).NotTo(HaveOccurred()) - _, err = locketClient.FetchAll(context.Background(), &models.FetchAllRequest{TypeCode: models.LOCK}) + fetchAllRequest := &models.FetchAllRequest{TypeCode: models.LOCK} + _, err = locketClient.FetchAll(context.Background(), fetchAllRequest) Expect(err).To(HaveOccurred()) }) diff --git a/db/dbfakes/fake_lock_db.go b/db/dbfakes/fake_lock_db.go index 58c5207..a34a6ad 100644 --- a/db/dbfakes/fake_lock_db.go +++ b/db/dbfakes/fake_lock_db.go @@ -5,7 +5,7 @@ import ( "context" "sync" - "code.cloudfoundry.org/lager/v3" + lager "code.cloudfoundry.org/lager/v3" "code.cloudfoundry.org/locket/db" "code.cloudfoundry.org/locket/models" ) diff --git a/db/lock_db.go b/db/lock_db.go index 1bac088..8beed5f 100644 --- a/db/lock_db.go +++ b/db/lock_db.go @@ -58,9 +58,10 @@ func (db *SQLDB) Lock(ctx context.Context, logger lager.Logger, resource *models if newLock { _, err = db.helper.Insert(ctx, logger, tx, "locks", helpers.SQLAttributes{ - "path": lock.Key, - "owner": lock.Owner, - "value": lock.Value, + "path": lock.Key, + "owner": lock.Owner, + "value": lock.Value, + //lint:ignore SA1019 - backwards compatibility "type": lock.Type, "modified_index": lock.ModifiedIndex, "modified_id": lock.ModifiedId, @@ -70,8 +71,9 @@ func (db *SQLDB) Lock(ctx context.Context, logger lager.Logger, resource *models } else { _, err = db.helper.Update(ctx, logger, tx, "locks", helpers.SQLAttributes{ - "owner": lock.Owner, - "value": lock.Value, + "owner": lock.Owner, + "value": lock.Value, + //lint:ignore SA1019 - backwards compatibility "type": lock.Type, "modified_index": lock.ModifiedIndex, "modified_id": lock.ModifiedId, diff --git a/db/lock_db_test.go b/db/lock_db_test.go index 8e806da..27393ba 100644 --- a/db/lock_db_test.go +++ b/db/lock_db_test.go @@ -33,7 +33,9 @@ func validateLockInDB(rawDB *sql.DB, res *models.Resource, expectedIndex, expect if res.Value != value { errMsg += fmt.Sprintf("mismatch value (%s, %s),", res.Value, value) } + //lint:ignore SA1019 - testing deprecated functionality if res.Type != lockType { + //lint:ignore SA1019 - testing deprecated functionality errMsg += fmt.Sprintf("mismatch value (%s, %s),", res.Type, lockType) } if expectedIndex != index { @@ -83,9 +85,10 @@ var _ = Describe("Lock", func() { Type: "lock", } expectedResource = &models.Resource{ - Key: resource.Key, - Owner: resource.Owner, - Value: resource.Value, + Key: resource.Key, + Owner: resource.Owner, + Value: resource.Value, + //lint:ignore SA1019 - testing deprecated functionality Type: resource.Type, TypeCode: models.LOCK, } @@ -290,6 +293,7 @@ var _ = Describe("Lock", func() { `INSERT INTO locks (path, owner, value, type, modified_index, modified_id, ttl) VALUES (?, ?, ?, ?, ?, ?, ?);`, dbFlavor, ) + //lint:ignore SA1019 - testing deprecated functionality result, err := rawDB.Exec(query, lock.Key, lock.Owner, lock.Value, lock.Type, 434, "modified-id", 5) Expect(err).NotTo(HaveOccurred()) Expect(result.RowsAffected()).To(BeEquivalentTo(1)) @@ -377,6 +381,7 @@ var _ = Describe("Lock", func() { TypeCode: models.LOCK, } expectedLock = lock + //lint:ignore SA1019 - testing deprecated functionality expectedLock.Type = models.LockType }) @@ -401,6 +406,7 @@ var _ = Describe("Lock", func() { TypeCode: models.PRESENCE, } expectedLock = lock + //lint:ignore SA1019 - testing deprecated functionality expectedLock.Type = models.PresenceType }) @@ -554,6 +560,7 @@ var _ = Describe("Lock", func() { dbFlavor, ) + //lint:ignore SA1019 - testing deprecated functionality result, err := rawDB.Exec(query, resource.Key, resource.Owner, resource.Value, currentIndex, currentTTL, modifiedId, resource.Type) Expect(err).NotTo(HaveOccurred()) Expect(result.RowsAffected()).To(BeEquivalentTo(1)) @@ -643,7 +650,8 @@ var _ = Describe("Lock", func() { Key: resource.Key, Owner: "danny", Value: resource.Value, - Type: resource.Type, + //lint:ignore SA1019 - testing deprecated functionality + Type: resource.Type, } released, err := sqlDB.FetchAndRelease(ctx, logger, oldLock) diff --git a/expiration/expirationfakes/fake_lock_pick.go b/expiration/expirationfakes/fake_lock_pick.go index 08bfe17..1faa379 100644 --- a/expiration/expirationfakes/fake_lock_pick.go +++ b/expiration/expirationfakes/fake_lock_pick.go @@ -4,7 +4,7 @@ package expirationfakes import ( "sync" - "code.cloudfoundry.org/lager/v3" + lager "code.cloudfoundry.org/lager/v3" "code.cloudfoundry.org/locket/db" "code.cloudfoundry.org/locket/expiration" ) diff --git a/expiration/lock_pick.go b/expiration/lock_pick.go index 62c5844..f117937 100644 --- a/expiration/lock_pick.go +++ b/expiration/lock_pick.go @@ -56,6 +56,7 @@ func (l lockPick) ExpirationCounts() (uint32, uint32) { } func (l lockPick) RegisterTTL(logger lager.Logger, lock *db.Lock) { + //lint:ignore SA1019 - backwards compatibility logger = logger.Session("register-ttl", lager.Data{"key": lock.Key, "modified-index": lock.ModifiedIndex, "type": lock.Type}) logger.Debug("starting") logger.Debug("completed") @@ -107,6 +108,7 @@ func (l lockPick) checkExpiration(logger lager.Logger, lock *db.Lock, closeChan if expired { logger.Info("lock-expired") counter := l.locksExpiredCount + //lint:ignore SA1019 - backwards compatibility if lock.Type == models.PresenceType { counter = l.presencesExpiredCount } diff --git a/grpcserver/server_test.go b/grpcserver/server_test.go index 9c34ace..d1e3a6b 100644 --- a/grpcserver/server_test.go +++ b/grpcserver/server_test.go @@ -98,7 +98,9 @@ var _ = Describe("GRPCServer", func() { }) }) -type testHandler struct{} +type testHandler struct { + models.UnimplementedLocketServer +} func (h *testHandler) Lock(ctx context.Context, req *models.LockRequest) (*models.LockResponse, error) { return &models.LockResponse{}, nil diff --git a/handlers/context_test.go b/handlers/context_test.go index c14949c..bf4380a 100644 --- a/handlers/context_test.go +++ b/handlers/context_test.go @@ -122,10 +122,11 @@ var _ = Describe("LocketHandler", func() { finishedRequest := make(chan struct{}, 1) go func() { defer GinkgoRecover() - _, err := locketHandler.Lock(ctxWithCancel, &models.LockRequest{ + lockRequest := &models.LockRequest{ Resource: resource, TtlInSeconds: 10, - }) + } + _, err := locketHandler.Lock(ctxWithCancel, lockRequest) Expect(err).To(HaveOccurred()) Expect(err).To(MatchError(context.Canceled)) close(finishedRequest) diff --git a/handlers/handler.go b/handlers/handler.go index 05af6ae..01f8b1a 100644 --- a/handlers/handler.go +++ b/handlers/handler.go @@ -20,6 +20,7 @@ type locketHandler struct { exitCh chan<- struct{} lockPick expiration.LockPick metrics metrics_helpers.RequestMetrics + models.UnimplementedLocketServer } func NewLocketHandler(logger lager.Logger, db db.LockDB, lockPick expiration.LockPick, requestMetrics metrics_helpers.RequestMetrics, exitCh chan<- struct{}) *locketHandler { @@ -228,7 +229,8 @@ func (h *locketHandler) fetchAll(ctx context.Context, req *models.FetchAllReques return nil, err } - locks, err := h.db.FetchAll(ctx, logger, models.GetType(&models.Resource{TypeCode: req.TypeCode})) + resource := &models.Resource{TypeCode: req.TypeCode} + locks, err := h.db.FetchAll(ctx, logger, models.GetType(resource)) if err != nil { return nil, err } @@ -238,9 +240,10 @@ func (h *locketHandler) fetchAll(ctx context.Context, req *models.FetchAllReques responses = append(responses, lock.Resource) } - return &models.FetchAllResponse{ + response := &models.FetchAllResponse{ Resources: responses, - }, nil + } + return response, nil } func validate(req interface{}) error { diff --git a/handlers/handler_test.go b/handlers/handler_test.go index 43d87ad..aa0cea3 100644 --- a/handlers/handler_test.go +++ b/handlers/handler_test.go @@ -115,6 +115,7 @@ var _ = Describe("LocketHandler", func() { Context("validate lock type", func() { Context("when type_code is set", func() { It("should be valid on a valid type code and empty type", func() { + //lint:ignore SA1019 - testing deprecated functionality request.Resource.Type = "" request.Resource.TypeCode = models.LOCK _, err := locketHandler.Lock(context.Background(), request) @@ -125,6 +126,7 @@ var _ = Describe("LocketHandler", func() { }) It("should be invalid on an UNKNOWN type code and empty type", func() { + //lint:ignore SA1019 - testing deprecated functionality request.Resource.Type = "" request.Resource.TypeCode = models.UNKNOWN _, err := locketHandler.Lock(context.Background(), request) @@ -135,6 +137,7 @@ var _ = Describe("LocketHandler", func() { }) It("should be invalid on an non-existent type code", func() { + //lint:ignore SA1019 - testing deprecated functionality request.Resource.Type = "" request.Resource.TypeCode = 4 _, err := locketHandler.Lock(context.Background(), request) @@ -321,7 +324,8 @@ var _ = Describe("LocketHandler", func() { JustBeforeEach(func() { go func() { - _, err := locketHandler.Release(context.Background(), &models.ReleaseRequest{Resource: resource}) + releaseRequest := &models.ReleaseRequest{Resource: resource} + _, err := locketHandler.Release(context.Background(), releaseRequest) Expect(err).NotTo(HaveOccurred()) }() }) @@ -353,7 +357,8 @@ var _ = Describe("LocketHandler", func() { }) It("releases the lock in the database", func() { - _, err := locketHandler.Release(context.Background(), &models.ReleaseRequest{Resource: resource}) + releaseRequest := &models.ReleaseRequest{Resource: resource} + _, err := locketHandler.Release(context.Background(), releaseRequest) Expect(err).NotTo(HaveOccurred()) Expect(fakeLockDB.ReleaseCallCount()).Should(Equal(1)) @@ -370,7 +375,8 @@ var _ = Describe("LocketHandler", func() { }) It("returns the error", func() { - _, err := locketHandler.Release(context.Background(), &models.ReleaseRequest{Resource: resource}) + releaseRequest := &models.ReleaseRequest{Resource: resource} + _, err := locketHandler.Release(context.Background(), releaseRequest) Expect(err).To(HaveOccurred()) metricsRecordFailure(fakeRequestMetrics) @@ -384,7 +390,8 @@ var _ = Describe("LocketHandler", func() { }) It("logs and writes to the exit channel", func() { - locketHandler.Release(context.Background(), &models.ReleaseRequest{Resource: resource}) + releaseRequest := &models.ReleaseRequest{Resource: resource} + locketHandler.Release(context.Background(), releaseRequest) Expect(logger).To(gbytes.Say("unrecoverable-error")) metricsRecordFailure(fakeRequestMetrics) @@ -402,7 +409,8 @@ var _ = Describe("LocketHandler", func() { JustBeforeEach(func() { fakeLockDB.ReleaseReturns(errors.New("Boom.")) - locketHandler.Release(ctx, &models.ReleaseRequest{Resource: resource}) + releaseRequest := &models.ReleaseRequest{Resource: resource} + locketHandler.Release(ctx, releaseRequest) }) Context("when the context was closed due to a client cancellation", func() { @@ -455,7 +463,8 @@ var _ = Describe("LocketHandler", func() { }) It("fetches the lock in the database", func() { - fetchResp, err := locketHandler.Fetch(context.Background(), &models.FetchRequest{Key: "test-fetch"}) + fetchRequest := &models.FetchRequest{Key: "test-fetch"} + fetchResp, err := locketHandler.Fetch(context.Background(), fetchRequest) Expect(err).NotTo(HaveOccurred()) Expect(fetchResp.Resource).To(Equal(resource)) @@ -473,7 +482,8 @@ var _ = Describe("LocketHandler", func() { }) It("returns the error", func() { - _, err := locketHandler.Fetch(context.Background(), &models.FetchRequest{Key: "test-fetch"}) + fetchRequest := &models.FetchRequest{Key: "test-fetch"} + _, err := locketHandler.Fetch(context.Background(), fetchRequest) Expect(err).To(HaveOccurred()) metricsRecordFailure(fakeRequestMetrics) @@ -487,7 +497,8 @@ var _ = Describe("LocketHandler", func() { }) It("logs and writes to the exit channel", func() { - locketHandler.Fetch(context.Background(), &models.FetchRequest{Key: "test-fetch"}) + fetchRequest := &models.FetchRequest{Key: "test-fetch"} + locketHandler.Fetch(context.Background(), fetchRequest) Expect(logger).To(gbytes.Say("unrecoverable-error")) metricsRecordFailure(fakeRequestMetrics) @@ -505,7 +516,8 @@ var _ = Describe("LocketHandler", func() { JustBeforeEach(func() { fakeLockDB.FetchReturns(nil, errors.New("boom")) - locketHandler.Fetch(ctx, &models.FetchRequest{Key: "test-fetch"}) + fetchRequest := &models.FetchRequest{Key: "test-fetch"} + locketHandler.Fetch(ctx, fetchRequest) }) Context("when the context was closed due to a client cancellation", func() { @@ -568,18 +580,21 @@ var _ = Describe("LocketHandler", func() { Context("validate lock type", func() { Context("when type_code is set", func() { It("should be valid on a valid type code and empty type", func() { - _, err := locketHandler.FetchAll(context.Background(), &models.FetchAllRequest{TypeCode: models.LOCK}) + fetchAllLockRequest := &models.FetchAllRequest{TypeCode: models.LOCK} + _, err := locketHandler.FetchAll(context.Background(), fetchAllLockRequest) Expect(err).NotTo(HaveOccurred()) metricsRecordSuccess(fakeRequestMetrics) metricsUseCorrectCallTags(fakeRequestMetrics, "FetchAll") - _, err = locketHandler.FetchAll(context.Background(), &models.FetchAllRequest{TypeCode: models.PRESENCE}) + fetchAllPresenceRequest := &models.FetchAllRequest{TypeCode: models.PRESENCE} + _, err = locketHandler.FetchAll(context.Background(), fetchAllPresenceRequest) Expect(err).NotTo(HaveOccurred()) }) It("should be invalid on an UNKNOWN type code and empty type", func() { - _, err := locketHandler.FetchAll(context.Background(), &models.FetchAllRequest{}) + fetchAllRequest := &models.FetchAllRequest{} + _, err := locketHandler.FetchAll(context.Background(), fetchAllRequest) Expect(err).To(HaveOccurred()) metricsRecordFailure(fakeRequestMetrics) @@ -590,7 +605,8 @@ var _ = Describe("LocketHandler", func() { Context("when the type is valid", func() { It("fetches all the presence locks in the database by type", func() { - fetchResp, err := locketHandler.FetchAll(context.Background(), &models.FetchAllRequest{TypeCode: models.PRESENCE}) + fetchAllRequest := &models.FetchAllRequest{TypeCode: models.PRESENCE} + fetchResp, err := locketHandler.FetchAll(context.Background(), fetchAllRequest) Expect(err).NotTo(HaveOccurred()) metricsRecordSuccess(fakeRequestMetrics) @@ -603,7 +619,8 @@ var _ = Describe("LocketHandler", func() { }) It("fetches all the lock locks in the database by type", func() { - fetchResp, err := locketHandler.FetchAll(context.Background(), &models.FetchAllRequest{TypeCode: models.LOCK}) + fetchAllRequest := &models.FetchAllRequest{TypeCode: models.LOCK} + fetchResp, err := locketHandler.FetchAll(context.Background(), fetchAllRequest) Expect(err).NotTo(HaveOccurred()) metricsRecordSuccess(fakeRequestMetrics) @@ -616,7 +633,8 @@ var _ = Describe("LocketHandler", func() { }) It("fetches all the presence locks in the database by type code", func() { - fetchResp, err := locketHandler.FetchAll(context.Background(), &models.FetchAllRequest{TypeCode: models.PRESENCE}) + fetchAllRequest := &models.FetchAllRequest{TypeCode: models.PRESENCE} + fetchResp, err := locketHandler.FetchAll(context.Background(), fetchAllRequest) Expect(err).NotTo(HaveOccurred()) metricsRecordSuccess(fakeRequestMetrics) @@ -629,7 +647,8 @@ var _ = Describe("LocketHandler", func() { }) It("fetches all the lock locks in the database by type code", func() { - fetchResp, err := locketHandler.FetchAll(context.Background(), &models.FetchAllRequest{TypeCode: models.LOCK}) + fetchAllRequest := &models.FetchAllRequest{TypeCode: models.LOCK} + fetchResp, err := locketHandler.FetchAll(context.Background(), fetchAllRequest) Expect(err).NotTo(HaveOccurred()) metricsRecordSuccess(fakeRequestMetrics) @@ -644,7 +663,8 @@ var _ = Describe("LocketHandler", func() { Context("when the type is invalid", func() { It("returns an invalid type error", func() { - _, err := locketHandler.FetchAll(context.Background(), &models.FetchAllRequest{Type: "dawg"}) + fetchAllRequest := &models.FetchAllRequest{Type: "dawg"} + _, err := locketHandler.FetchAll(context.Background(), fetchAllRequest) Expect(err).To(HaveOccurred()) metricsRecordFailure(fakeRequestMetrics) @@ -654,7 +674,8 @@ var _ = Describe("LocketHandler", func() { Context("when the type code is UNKNOWN", func() { It("returns an invalid type error", func() { - _, err := locketHandler.FetchAll(context.Background(), &models.FetchAllRequest{TypeCode: models.UNKNOWN}) + fetchAllRequest := &models.FetchAllRequest{TypeCode: models.UNKNOWN} + _, err := locketHandler.FetchAll(context.Background(), fetchAllRequest) Expect(err).To(HaveOccurred()) metricsRecordFailure(fakeRequestMetrics) @@ -668,7 +689,8 @@ var _ = Describe("LocketHandler", func() { }) It("returns the error", func() { - _, err := locketHandler.FetchAll(context.Background(), &models.FetchAllRequest{}) + fetchAllRequest := &models.FetchAllRequest{} + _, err := locketHandler.FetchAll(context.Background(), fetchAllRequest) Expect(err).To(HaveOccurred()) metricsRecordFailure(fakeRequestMetrics) @@ -682,7 +704,8 @@ var _ = Describe("LocketHandler", func() { }) It("logs and writes to the exit channel", func() { - locketHandler.FetchAll(context.Background(), &models.FetchAllRequest{TypeCode: models.PRESENCE}) + fetchAllRequest := &models.FetchAllRequest{TypeCode: models.PRESENCE} + locketHandler.FetchAll(context.Background(), fetchAllRequest) Expect(logger).To(gbytes.Say("unrecoverable-error")) metricsRecordFailure(fakeRequestMetrics) @@ -700,7 +723,8 @@ var _ = Describe("LocketHandler", func() { JustBeforeEach(func() { fakeLockDB.FetchAllReturns(nil, errors.New("boom")) - locketHandler.FetchAll(ctx, &models.FetchAllRequest{}) + fetchAllRequest := &models.FetchAllRequest{} + locketHandler.FetchAll(ctx, fetchAllRequest) }) Context("when the context was closed due to a client cancellation", func() { diff --git a/lock/lock.go b/lock/lock.go index 7f32e83..cbac22c 100644 --- a/lock/lock.go +++ b/lock/lock.go @@ -88,10 +88,12 @@ func (l *lockRunner) Run(signals <-chan os.Signal, ready chan<- struct{}) error logger.Error("failed-to-create-context", err) return err } - _, err = l.locker.Lock(ctx, &models.LockRequest{Resource: l.lock, TtlInSeconds: l.ttlInSeconds}) + lockRequest := &models.LockRequest{Resource: l.lock, TtlInSeconds: l.ttlInSeconds} + _, err = l.locker.Lock(ctx, lockRequest) if err != nil { lagerData := lager.Data{"request-uuid": uuid} - resp, fErr := l.locker.Fetch(ctx, &models.FetchRequest{Key: l.lock.Key}) + fetchRequest := &models.FetchRequest{Key: l.lock.Key} + resp, fErr := l.locker.Fetch(ctx, fetchRequest) if fErr != nil { logger.Error("failed-fetching-lock-owner", fErr) } else { @@ -112,7 +114,8 @@ func (l *lockRunner) Run(signals <-chan os.Signal, ready chan<- struct{}) error case sig := <-signals: logger.Info("signalled", lager.Data{"signal": sig}) - _, err := l.locker.Release(context.Background(), &models.ReleaseRequest{Resource: l.lock}) + releaseRequest := &models.ReleaseRequest{Resource: l.lock} + _, err := l.locker.Release(context.Background(), releaseRequest) if err != nil { logger.Error("failed-to-release-lock", err) } else { @@ -129,7 +132,8 @@ func (l *lockRunner) Run(signals <-chan os.Signal, ready chan<- struct{}) error } ctx, cancel := context.WithTimeout(ctx, time.Duration(l.ttlInSeconds)*time.Second) start := time.Now() - _, err = l.locker.Lock(ctx, &models.LockRequest{Resource: l.lock, TtlInSeconds: l.ttlInSeconds}, grpc.WaitForReady(true)) + lockRequest := &models.LockRequest{Resource: l.lock, TtlInSeconds: l.ttlInSeconds} + _, err = l.locker.Lock(ctx, lockRequest, grpc.WaitForReady(true)) cancel() if err != nil { if acquired { diff --git a/lock/lock_test.go b/lock/lock_test.go index 3b1218f..ef605c9 100644 --- a/lock/lock_test.go +++ b/lock/lock_test.go @@ -87,7 +87,8 @@ var _ = Describe("Lock", func() { Context("when the lock cannot be acquired", func() { BeforeEach(func() { fakeLocker.LockReturns(nil, errors.New("no-lock-for-you")) - fakeLocker.FetchReturns(&models.FetchResponse{Resource: &models.Resource{Owner: "joe"}}, nil) + fetchResponse := &models.FetchResponse{Resource: &models.Resource{Owner: "joe"}} + fakeLocker.FetchReturns(fetchResponse, nil) }) JustBeforeEach(func() { @@ -146,8 +147,8 @@ var _ = Describe("Lock", func() { // do not use models.ErrLockCollision because in practice from the wire that // variable instance cannot be returned fakeLocker.LockReturns(nil, status.Errorf(codes.AlreadyExists, "lock-collision")) - - fakeLocker.FetchReturns(&models.FetchResponse{Resource: &models.Resource{Owner: "joe"}}, nil) + fetchResponse := &models.FetchResponse{Resource: &models.Resource{Owner: "joe"}} + fakeLocker.FetchReturns(fetchResponse, nil) }) It("logs the initial error", func() { diff --git a/models/locket.pb.go b/models/locket.pb.go index 557d078..e8771c6 100644 --- a/models/locket.pb.go +++ b/models/locket.pb.go @@ -1,2560 +1,616 @@ -// Code generated by protoc-gen-gogo. DO NOT EDIT. +// Code generated by protoc-gen-go. DO NOT EDIT. +// versions: +// protoc-gen-go v1.36.6 +// protoc v6.31.1 // source: locket.proto package models import ( - context "context" - fmt "fmt" - proto "github.com/gogo/protobuf/proto" - grpc "google.golang.org/grpc" - codes "google.golang.org/grpc/codes" - status "google.golang.org/grpc/status" - io "io" - math "math" - math_bits "math/bits" + _ "code.cloudfoundry.org/bbs/models" + protoreflect "google.golang.org/protobuf/reflect/protoreflect" + protoimpl "google.golang.org/protobuf/runtime/protoimpl" reflect "reflect" - strconv "strconv" - strings "strings" + sync "sync" + unsafe "unsafe" ) -// Reference imports to suppress errors if they are not otherwise used. -var _ = proto.Marshal -var _ = fmt.Errorf -var _ = math.Inf - -// This is a compile-time assertion to ensure that this generated file -// is compatible with the proto package it is being compiled against. -// A compilation error at this line likely means your copy of the -// proto package needs to be updated. -const _ = proto.GoGoProtoPackageIsVersion3 // please upgrade the proto package - -type TypeCode int32 - const ( - UNKNOWN TypeCode = 0 - LOCK TypeCode = 1 - PRESENCE TypeCode = 2 + // Verify that this generated code is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) + // Verify that runtime/protoimpl is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) ) -var TypeCode_name = map[int32]string{ - 0: "UNKNOWN", - 1: "LOCK", - 2: "PRESENCE", -} - -var TypeCode_value = map[string]int32{ - "UNKNOWN": 0, - "LOCK": 1, - "PRESENCE": 2, -} - -func (TypeCode) EnumDescriptor() ([]byte, []int) { - return fileDescriptor_5f2d92f834ce8fa9, []int{0} -} +type ProtoTypeCode int32 -type Resource struct { - Key string `protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"` - Owner string `protobuf:"bytes,2,opt,name=owner,proto3" json:"owner,omitempty"` - Value string `protobuf:"bytes,3,opt,name=value,proto3" json:"value,omitempty"` - Type string `protobuf:"bytes,4,opt,name=type,proto3" json:"type,omitempty"` // Deprecated: Do not use. - TypeCode TypeCode `protobuf:"varint,5,opt,name=type_code,json=typeCode,proto3,enum=models.TypeCode" json:"type_code,omitempty"` -} +const ( + ProtoTypeCode_UNKNOWN ProtoTypeCode = 0 + ProtoTypeCode_LOCK ProtoTypeCode = 1 + ProtoTypeCode_PRESENCE ProtoTypeCode = 2 +) -func (m *Resource) Reset() { *m = Resource{} } -func (*Resource) ProtoMessage() {} -func (*Resource) Descriptor() ([]byte, []int) { - return fileDescriptor_5f2d92f834ce8fa9, []int{0} -} -func (m *Resource) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *Resource) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - if deterministic { - return xxx_messageInfo_Resource.Marshal(b, m, deterministic) - } else { - b = b[:cap(b)] - n, err := m.MarshalToSizedBuffer(b) - if err != nil { - return nil, err - } - return b[:n], nil +// Enum value maps for ProtoTypeCode. +var ( + ProtoTypeCode_name = map[int32]string{ + 0: "UNKNOWN", + 1: "LOCK", + 2: "PRESENCE", } -} -func (m *Resource) XXX_Merge(src proto.Message) { - xxx_messageInfo_Resource.Merge(m, src) -} -func (m *Resource) XXX_Size() int { - return m.Size() -} -func (m *Resource) XXX_DiscardUnknown() { - xxx_messageInfo_Resource.DiscardUnknown(m) -} - -var xxx_messageInfo_Resource proto.InternalMessageInfo - -func (m *Resource) GetKey() string { - if m != nil { - return m.Key + ProtoTypeCode_value = map[string]int32{ + "UNKNOWN": 0, + "LOCK": 1, + "PRESENCE": 2, } - return "" -} +) -func (m *Resource) GetOwner() string { - if m != nil { - return m.Owner - } - return "" +func (x ProtoTypeCode) Enum() *ProtoTypeCode { + p := new(ProtoTypeCode) + *p = x + return p } -func (m *Resource) GetValue() string { - if m != nil { - return m.Value - } - return "" +func (x ProtoTypeCode) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) } -// Deprecated: Do not use. -func (m *Resource) GetType() string { - if m != nil { - return m.Type - } - return "" +func (ProtoTypeCode) Descriptor() protoreflect.EnumDescriptor { + return file_locket_proto_enumTypes[0].Descriptor() } -func (m *Resource) GetTypeCode() TypeCode { - if m != nil { - return m.TypeCode - } - return UNKNOWN +func (ProtoTypeCode) Type() protoreflect.EnumType { + return &file_locket_proto_enumTypes[0] } -type LockRequest struct { - Resource *Resource `protobuf:"bytes,1,opt,name=resource,proto3" json:"resource,omitempty"` - TtlInSeconds int64 `protobuf:"varint,2,opt,name=ttl_in_seconds,json=ttlInSeconds,proto3" json:"ttl_in_seconds,omitempty"` +func (x ProtoTypeCode) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) } -func (m *LockRequest) Reset() { *m = LockRequest{} } -func (*LockRequest) ProtoMessage() {} -func (*LockRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_5f2d92f834ce8fa9, []int{1} -} -func (m *LockRequest) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *LockRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - if deterministic { - return xxx_messageInfo_LockRequest.Marshal(b, m, deterministic) - } else { - b = b[:cap(b)] - n, err := m.MarshalToSizedBuffer(b) - if err != nil { - return nil, err - } - return b[:n], nil - } -} -func (m *LockRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_LockRequest.Merge(m, src) +// Deprecated: Use ProtoTypeCode.Descriptor instead. +func (ProtoTypeCode) EnumDescriptor() ([]byte, []int) { + return file_locket_proto_rawDescGZIP(), []int{0} } -func (m *LockRequest) XXX_Size() int { - return m.Size() -} -func (m *LockRequest) XXX_DiscardUnknown() { - xxx_messageInfo_LockRequest.DiscardUnknown(m) -} - -var xxx_messageInfo_LockRequest proto.InternalMessageInfo -func (m *LockRequest) GetResource() *Resource { - if m != nil { - return m.Resource - } - return nil +type ProtoResource struct { + state protoimpl.MessageState `protogen:"open.v1"` + Key string `protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"` + Owner string `protobuf:"bytes,2,opt,name=owner,proto3" json:"owner,omitempty"` + Value string `protobuf:"bytes,3,opt,name=value,proto3" json:"value,omitempty"` + // Deprecated: Marked as deprecated in locket.proto. + Type string `protobuf:"bytes,4,opt,name=type,proto3" json:"type,omitempty"` + TypeCode ProtoTypeCode `protobuf:"varint,5,opt,name=type_code,json=typeCode,proto3,enum=models.ProtoTypeCode" json:"type_code,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } -func (m *LockRequest) GetTtlInSeconds() int64 { - if m != nil { - return m.TtlInSeconds - } - return 0 +func (x *ProtoResource) Reset() { + *x = ProtoResource{} + mi := &file_locket_proto_msgTypes[0] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } -type LockResponse struct { +func (x *ProtoResource) String() string { + return protoimpl.X.MessageStringOf(x) } -func (m *LockResponse) Reset() { *m = LockResponse{} } -func (*LockResponse) ProtoMessage() {} -func (*LockResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_5f2d92f834ce8fa9, []int{2} -} -func (m *LockResponse) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *LockResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - if deterministic { - return xxx_messageInfo_LockResponse.Marshal(b, m, deterministic) - } else { - b = b[:cap(b)] - n, err := m.MarshalToSizedBuffer(b) - if err != nil { - return nil, err - } - return b[:n], nil - } -} -func (m *LockResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_LockResponse.Merge(m, src) -} -func (m *LockResponse) XXX_Size() int { - return m.Size() -} -func (m *LockResponse) XXX_DiscardUnknown() { - xxx_messageInfo_LockResponse.DiscardUnknown(m) -} - -var xxx_messageInfo_LockResponse proto.InternalMessageInfo - -type ReleaseRequest struct { - Resource *Resource `protobuf:"bytes,1,opt,name=resource,proto3" json:"resource,omitempty"` -} +func (*ProtoResource) ProtoMessage() {} -func (m *ReleaseRequest) Reset() { *m = ReleaseRequest{} } -func (*ReleaseRequest) ProtoMessage() {} -func (*ReleaseRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_5f2d92f834ce8fa9, []int{3} -} -func (m *ReleaseRequest) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *ReleaseRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - if deterministic { - return xxx_messageInfo_ReleaseRequest.Marshal(b, m, deterministic) - } else { - b = b[:cap(b)] - n, err := m.MarshalToSizedBuffer(b) - if err != nil { - return nil, err +func (x *ProtoResource) ProtoReflect() protoreflect.Message { + mi := &file_locket_proto_msgTypes[0] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) } - return b[:n], nil - } -} -func (m *ReleaseRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_ReleaseRequest.Merge(m, src) -} -func (m *ReleaseRequest) XXX_Size() int { - return m.Size() -} -func (m *ReleaseRequest) XXX_DiscardUnknown() { - xxx_messageInfo_ReleaseRequest.DiscardUnknown(m) -} - -var xxx_messageInfo_ReleaseRequest proto.InternalMessageInfo - -func (m *ReleaseRequest) GetResource() *Resource { - if m != nil { - return m.Resource + return ms } - return nil + return mi.MessageOf(x) } -type ReleaseResponse struct { +// Deprecated: Use ProtoResource.ProtoReflect.Descriptor instead. +func (*ProtoResource) Descriptor() ([]byte, []int) { + return file_locket_proto_rawDescGZIP(), []int{0} } -func (m *ReleaseResponse) Reset() { *m = ReleaseResponse{} } -func (*ReleaseResponse) ProtoMessage() {} -func (*ReleaseResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_5f2d92f834ce8fa9, []int{4} -} -func (m *ReleaseResponse) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *ReleaseResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - if deterministic { - return xxx_messageInfo_ReleaseResponse.Marshal(b, m, deterministic) - } else { - b = b[:cap(b)] - n, err := m.MarshalToSizedBuffer(b) - if err != nil { - return nil, err - } - return b[:n], nil - } -} -func (m *ReleaseResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_ReleaseResponse.Merge(m, src) -} -func (m *ReleaseResponse) XXX_Size() int { - return m.Size() -} -func (m *ReleaseResponse) XXX_DiscardUnknown() { - xxx_messageInfo_ReleaseResponse.DiscardUnknown(m) -} - -var xxx_messageInfo_ReleaseResponse proto.InternalMessageInfo - -type FetchRequest struct { - Key string `protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"` -} - -func (m *FetchRequest) Reset() { *m = FetchRequest{} } -func (*FetchRequest) ProtoMessage() {} -func (*FetchRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_5f2d92f834ce8fa9, []int{5} -} -func (m *FetchRequest) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *FetchRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - if deterministic { - return xxx_messageInfo_FetchRequest.Marshal(b, m, deterministic) - } else { - b = b[:cap(b)] - n, err := m.MarshalToSizedBuffer(b) - if err != nil { - return nil, err - } - return b[:n], nil - } -} -func (m *FetchRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_FetchRequest.Merge(m, src) -} -func (m *FetchRequest) XXX_Size() int { - return m.Size() -} -func (m *FetchRequest) XXX_DiscardUnknown() { - xxx_messageInfo_FetchRequest.DiscardUnknown(m) -} - -var xxx_messageInfo_FetchRequest proto.InternalMessageInfo - -func (m *FetchRequest) GetKey() string { - if m != nil { - return m.Key +func (x *ProtoResource) GetKey() string { + if x != nil { + return x.Key } return "" } -type FetchResponse struct { - Resource *Resource `protobuf:"bytes,1,opt,name=resource,proto3" json:"resource,omitempty"` -} - -func (m *FetchResponse) Reset() { *m = FetchResponse{} } -func (*FetchResponse) ProtoMessage() {} -func (*FetchResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_5f2d92f834ce8fa9, []int{6} -} -func (m *FetchResponse) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *FetchResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - if deterministic { - return xxx_messageInfo_FetchResponse.Marshal(b, m, deterministic) - } else { - b = b[:cap(b)] - n, err := m.MarshalToSizedBuffer(b) - if err != nil { - return nil, err - } - return b[:n], nil +func (x *ProtoResource) GetOwner() string { + if x != nil { + return x.Owner } -} -func (m *FetchResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_FetchResponse.Merge(m, src) -} -func (m *FetchResponse) XXX_Size() int { - return m.Size() -} -func (m *FetchResponse) XXX_DiscardUnknown() { - xxx_messageInfo_FetchResponse.DiscardUnknown(m) -} - -var xxx_messageInfo_FetchResponse proto.InternalMessageInfo - -func (m *FetchResponse) GetResource() *Resource { - if m != nil { - return m.Resource - } - return nil -} - -type FetchAllRequest struct { - Type string `protobuf:"bytes,1,opt,name=type,proto3" json:"type,omitempty"` // Deprecated: Do not use. - TypeCode TypeCode `protobuf:"varint,2,opt,name=type_code,json=typeCode,proto3,enum=models.TypeCode" json:"type_code,omitempty"` + return "" } -func (m *FetchAllRequest) Reset() { *m = FetchAllRequest{} } -func (*FetchAllRequest) ProtoMessage() {} -func (*FetchAllRequest) Descriptor() ([]byte, []int) { - return fileDescriptor_5f2d92f834ce8fa9, []int{7} -} -func (m *FetchAllRequest) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *FetchAllRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - if deterministic { - return xxx_messageInfo_FetchAllRequest.Marshal(b, m, deterministic) - } else { - b = b[:cap(b)] - n, err := m.MarshalToSizedBuffer(b) - if err != nil { - return nil, err - } - return b[:n], nil +func (x *ProtoResource) GetValue() string { + if x != nil { + return x.Value } + return "" } -func (m *FetchAllRequest) XXX_Merge(src proto.Message) { - xxx_messageInfo_FetchAllRequest.Merge(m, src) -} -func (m *FetchAllRequest) XXX_Size() int { - return m.Size() -} -func (m *FetchAllRequest) XXX_DiscardUnknown() { - xxx_messageInfo_FetchAllRequest.DiscardUnknown(m) -} - -var xxx_messageInfo_FetchAllRequest proto.InternalMessageInfo -// Deprecated: Do not use. -func (m *FetchAllRequest) GetType() string { - if m != nil { - return m.Type +// Deprecated: Marked as deprecated in locket.proto. +func (x *ProtoResource) GetType() string { + if x != nil { + return x.Type } return "" } -func (m *FetchAllRequest) GetTypeCode() TypeCode { - if m != nil { - return m.TypeCode +func (x *ProtoResource) GetTypeCode() ProtoTypeCode { + if x != nil { + return x.TypeCode } - return UNKNOWN + return ProtoTypeCode_UNKNOWN } -type FetchAllResponse struct { - Resources []*Resource `protobuf:"bytes,1,rep,name=resources,proto3" json:"resources,omitempty"` +type ProtoLockRequest struct { + state protoimpl.MessageState `protogen:"open.v1"` + Resource *ProtoResource `protobuf:"bytes,1,opt,name=resource,proto3" json:"resource,omitempty"` + TtlInSeconds int64 `protobuf:"varint,2,opt,name=ttl_in_seconds,json=ttlInSeconds,proto3" json:"ttl_in_seconds,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } -func (m *FetchAllResponse) Reset() { *m = FetchAllResponse{} } -func (*FetchAllResponse) ProtoMessage() {} -func (*FetchAllResponse) Descriptor() ([]byte, []int) { - return fileDescriptor_5f2d92f834ce8fa9, []int{8} -} -func (m *FetchAllResponse) XXX_Unmarshal(b []byte) error { - return m.Unmarshal(b) -} -func (m *FetchAllResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - if deterministic { - return xxx_messageInfo_FetchAllResponse.Marshal(b, m, deterministic) - } else { - b = b[:cap(b)] - n, err := m.MarshalToSizedBuffer(b) - if err != nil { - return nil, err - } - return b[:n], nil - } -} -func (m *FetchAllResponse) XXX_Merge(src proto.Message) { - xxx_messageInfo_FetchAllResponse.Merge(m, src) -} -func (m *FetchAllResponse) XXX_Size() int { - return m.Size() +func (x *ProtoLockRequest) Reset() { + *x = ProtoLockRequest{} + mi := &file_locket_proto_msgTypes[1] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } -func (m *FetchAllResponse) XXX_DiscardUnknown() { - xxx_messageInfo_FetchAllResponse.DiscardUnknown(m) -} - -var xxx_messageInfo_FetchAllResponse proto.InternalMessageInfo -func (m *FetchAllResponse) GetResources() []*Resource { - if m != nil { - return m.Resources - } - return nil +func (x *ProtoLockRequest) String() string { + return protoimpl.X.MessageStringOf(x) } -func init() { - proto.RegisterEnum("models.TypeCode", TypeCode_name, TypeCode_value) - proto.RegisterType((*Resource)(nil), "models.Resource") - proto.RegisterType((*LockRequest)(nil), "models.LockRequest") - proto.RegisterType((*LockResponse)(nil), "models.LockResponse") - proto.RegisterType((*ReleaseRequest)(nil), "models.ReleaseRequest") - proto.RegisterType((*ReleaseResponse)(nil), "models.ReleaseResponse") - proto.RegisterType((*FetchRequest)(nil), "models.FetchRequest") - proto.RegisterType((*FetchResponse)(nil), "models.FetchResponse") - proto.RegisterType((*FetchAllRequest)(nil), "models.FetchAllRequest") - proto.RegisterType((*FetchAllResponse)(nil), "models.FetchAllResponse") -} - -func init() { proto.RegisterFile("locket.proto", fileDescriptor_5f2d92f834ce8fa9) } - -var fileDescriptor_5f2d92f834ce8fa9 = []byte{ - // 490 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x9c, 0x53, 0xcd, 0x6e, 0xd3, 0x40, - 0x10, 0xf6, 0xe6, 0xaf, 0xce, 0xc4, 0xa4, 0x66, 0x29, 0xad, 0x95, 0xc3, 0x2a, 0xb2, 0x38, 0x54, - 0x08, 0x82, 0xd4, 0x22, 0x4e, 0xfc, 0x88, 0x44, 0x41, 0x42, 0x8d, 0x52, 0xe4, 0x82, 0xe0, 0x16, - 0x05, 0x67, 0x24, 0x50, 0x8c, 0x37, 0x64, 0x37, 0xa0, 0xdc, 0x78, 0x03, 0x78, 0x0c, 0x1e, 0x85, - 0x63, 0x8e, 0x3d, 0x12, 0xe7, 0xc2, 0xb1, 0x07, 0x1e, 0x00, 0x79, 0xed, 0xb5, 0x13, 0x82, 0x40, - 0xf4, 0xe4, 0x99, 0xcf, 0xf3, 0xcd, 0xf7, 0x79, 0x66, 0x0c, 0x56, 0xc0, 0xfd, 0x31, 0xca, 0xd6, - 0x64, 0xca, 0x25, 0xa7, 0x95, 0x77, 0x7c, 0x84, 0x81, 0x70, 0x3f, 0x13, 0x30, 0x3d, 0x14, 0x7c, - 0x36, 0xf5, 0x91, 0xda, 0x50, 0x1c, 0xe3, 0xdc, 0x21, 0x4d, 0x72, 0x58, 0xf5, 0xe2, 0x90, 0xee, - 0x41, 0x99, 0x7f, 0x0c, 0x71, 0xea, 0x14, 0x14, 0x96, 0x24, 0x31, 0xfa, 0x61, 0x18, 0xcc, 0xd0, - 0x29, 0x26, 0xa8, 0x4a, 0xe8, 0x3e, 0x94, 0xe4, 0x7c, 0x82, 0x4e, 0x29, 0x06, 0xdb, 0x05, 0x87, - 0x78, 0x2a, 0xa7, 0xb7, 0xa1, 0x1a, 0x3f, 0x07, 0x3e, 0x1f, 0xa1, 0x53, 0x6e, 0x92, 0xc3, 0xfa, - 0x91, 0xdd, 0x4a, 0xe4, 0x5b, 0xcf, 0xe7, 0x13, 0xec, 0xf0, 0x11, 0x7a, 0xa6, 0x4c, 0x23, 0x77, - 0x08, 0xb5, 0x1e, 0xf7, 0xc7, 0x1e, 0xbe, 0x9f, 0xa1, 0x90, 0xf4, 0x16, 0x98, 0xd3, 0xd4, 0x9f, - 0x32, 0x56, 0xcb, 0xc9, 0xda, 0xb7, 0x97, 0x55, 0xd0, 0x1b, 0x50, 0x97, 0x32, 0x18, 0xbc, 0x0d, - 0x07, 0x02, 0x7d, 0x1e, 0x8e, 0x84, 0x32, 0x5e, 0xf4, 0x2c, 0x29, 0x83, 0xa7, 0xe1, 0x59, 0x82, - 0xb9, 0x75, 0xb0, 0x12, 0x09, 0x31, 0xe1, 0xa1, 0x40, 0xf7, 0x21, 0xd4, 0x3d, 0x0c, 0x70, 0x28, - 0xf0, 0x52, 0xaa, 0xee, 0x55, 0xd8, 0xcd, 0xf8, 0x69, 0xcb, 0x26, 0x58, 0x4f, 0x50, 0xfa, 0x6f, - 0x74, 0xc3, 0xad, 0xd1, 0xba, 0x0f, 0xe0, 0x4a, 0x5a, 0x91, 0x50, 0xfe, 0x53, 0xf3, 0x15, 0xec, - 0x2a, 0xfa, 0xe3, 0x20, 0xd0, 0x1a, 0x7a, 0x01, 0xe4, 0x6f, 0x0b, 0x28, 0xfc, 0x73, 0x01, 0x6d, - 0xb0, 0xf3, 0xce, 0xa9, 0xb7, 0x16, 0x54, 0xb5, 0xb2, 0x70, 0x48, 0xb3, 0xf8, 0x47, 0x73, 0x79, - 0xc9, 0xcd, 0x3b, 0x60, 0xea, 0xce, 0xb4, 0x06, 0x3b, 0x2f, 0xfa, 0x27, 0xfd, 0xd3, 0x97, 0x7d, - 0xdb, 0xa0, 0x26, 0x94, 0x7a, 0xa7, 0x9d, 0x13, 0x9b, 0x50, 0x0b, 0xcc, 0x67, 0x5e, 0xf7, 0xac, - 0xdb, 0xef, 0x74, 0xed, 0xc2, 0xd1, 0x4f, 0x02, 0x95, 0x9e, 0x3a, 0x50, 0x7a, 0x0c, 0xa5, 0x38, - 0xa2, 0xd7, 0xb4, 0xc0, 0xda, 0x39, 0x34, 0xf6, 0x36, 0xc1, 0x74, 0xda, 0x06, 0xbd, 0x07, 0x65, - 0x65, 0x9a, 0x66, 0x05, 0xeb, 0xe3, 0x6f, 0x5c, 0xff, 0x0d, 0xcd, 0x78, 0xf7, 0x61, 0x27, 0x5d, - 0x1d, 0xdd, 0xcf, 0x3f, 0x68, 0xfd, 0x16, 0x1a, 0x07, 0x5b, 0x78, 0xc6, 0x7e, 0x04, 0xa6, 0x1e, - 0x15, 0x3d, 0xd8, 0x90, 0xc8, 0xd7, 0xd2, 0x70, 0xb6, 0x5f, 0xe8, 0x06, 0xed, 0xbb, 0x8b, 0x25, - 0x33, 0xce, 0x97, 0xcc, 0xb8, 0x58, 0x32, 0xf2, 0x29, 0x62, 0xe4, 0x6b, 0xc4, 0xc8, 0xb7, 0x88, - 0x91, 0x45, 0xc4, 0xc8, 0xf7, 0x88, 0x91, 0x1f, 0x11, 0x33, 0x2e, 0x22, 0x46, 0xbe, 0xac, 0x98, - 0xb1, 0x58, 0x31, 0xe3, 0x7c, 0xc5, 0x8c, 0xd7, 0x15, 0xf5, 0x0f, 0x1f, 0xff, 0x0a, 0x00, 0x00, - 0xff, 0xff, 0x40, 0xe5, 0x0d, 0xd7, 0xd3, 0x03, 0x00, 0x00, -} - -func (x TypeCode) String() string { - s, ok := TypeCode_name[int32(x)] - if ok { - return s - } - return strconv.Itoa(int(x)) -} -func (this *Resource) Equal(that interface{}) bool { - if that == nil { - return this == nil - } +func (*ProtoLockRequest) ProtoMessage() {} - that1, ok := that.(*Resource) - if !ok { - that2, ok := that.(Resource) - if ok { - that1 = &that2 - } else { - return false +func (x *ProtoLockRequest) ProtoReflect() protoreflect.Message { + mi := &file_locket_proto_msgTypes[1] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) } + return ms } - if that1 == nil { - return this == nil - } else if this == nil { - return false - } - if this.Key != that1.Key { - return false - } - if this.Owner != that1.Owner { - return false - } - if this.Value != that1.Value { - return false - } - if this.Type != that1.Type { - return false - } - if this.TypeCode != that1.TypeCode { - return false - } - return true + return mi.MessageOf(x) } -func (this *LockRequest) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - that1, ok := that.(*LockRequest) - if !ok { - that2, ok := that.(LockRequest) - if ok { - that1 = &that2 - } else { - return false - } - } - if that1 == nil { - return this == nil - } else if this == nil { - return false - } - if !this.Resource.Equal(that1.Resource) { - return false - } - if this.TtlInSeconds != that1.TtlInSeconds { - return false - } - return true +// Deprecated: Use ProtoLockRequest.ProtoReflect.Descriptor instead. +func (*ProtoLockRequest) Descriptor() ([]byte, []int) { + return file_locket_proto_rawDescGZIP(), []int{1} } -func (this *LockResponse) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - that1, ok := that.(*LockResponse) - if !ok { - that2, ok := that.(LockResponse) - if ok { - that1 = &that2 - } else { - return false - } +func (x *ProtoLockRequest) GetResource() *ProtoResource { + if x != nil { + return x.Resource } - if that1 == nil { - return this == nil - } else if this == nil { - return false - } - return true + return nil } -func (this *ReleaseRequest) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - that1, ok := that.(*ReleaseRequest) - if !ok { - that2, ok := that.(ReleaseRequest) - if ok { - that1 = &that2 - } else { - return false - } - } - if that1 == nil { - return this == nil - } else if this == nil { - return false +func (x *ProtoLockRequest) GetTtlInSeconds() int64 { + if x != nil { + return x.TtlInSeconds } - if !this.Resource.Equal(that1.Resource) { - return false - } - return true + return 0 } -func (this *ReleaseResponse) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - that1, ok := that.(*ReleaseResponse) - if !ok { - that2, ok := that.(ReleaseResponse) - if ok { - that1 = &that2 - } else { - return false - } - } - if that1 == nil { - return this == nil - } else if this == nil { - return false - } - return true +type ProtoLockResponse struct { + state protoimpl.MessageState `protogen:"open.v1"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } -func (this *FetchRequest) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - that1, ok := that.(*FetchRequest) - if !ok { - that2, ok := that.(FetchRequest) - if ok { - that1 = &that2 - } else { - return false - } - } - if that1 == nil { - return this == nil - } else if this == nil { - return false - } - if this.Key != that1.Key { - return false - } - return true +func (x *ProtoLockResponse) Reset() { + *x = ProtoLockResponse{} + mi := &file_locket_proto_msgTypes[2] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } -func (this *FetchResponse) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - that1, ok := that.(*FetchResponse) - if !ok { - that2, ok := that.(FetchResponse) - if ok { - that1 = &that2 - } else { - return false - } - } - if that1 == nil { - return this == nil - } else if this == nil { - return false - } - if !this.Resource.Equal(that1.Resource) { - return false - } - return true +func (x *ProtoLockResponse) String() string { + return protoimpl.X.MessageStringOf(x) } -func (this *FetchAllRequest) Equal(that interface{}) bool { - if that == nil { - return this == nil - } - that1, ok := that.(*FetchAllRequest) - if !ok { - that2, ok := that.(FetchAllRequest) - if ok { - that1 = &that2 - } else { - return false - } - } - if that1 == nil { - return this == nil - } else if this == nil { - return false - } - if this.Type != that1.Type { - return false - } - if this.TypeCode != that1.TypeCode { - return false - } - return true -} -func (this *FetchAllResponse) Equal(that interface{}) bool { - if that == nil { - return this == nil - } +func (*ProtoLockResponse) ProtoMessage() {} - that1, ok := that.(*FetchAllResponse) - if !ok { - that2, ok := that.(FetchAllResponse) - if ok { - that1 = &that2 - } else { - return false +func (x *ProtoLockResponse) ProtoReflect() protoreflect.Message { + mi := &file_locket_proto_msgTypes[2] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) } + return ms } - if that1 == nil { - return this == nil - } else if this == nil { - return false - } - if len(this.Resources) != len(that1.Resources) { - return false - } - for i := range this.Resources { - if !this.Resources[i].Equal(that1.Resources[i]) { - return false - } - } - return true -} -func (this *Resource) GoString() string { - if this == nil { - return "nil" - } - s := make([]string, 0, 9) - s = append(s, "&models.Resource{") - s = append(s, "Key: "+fmt.Sprintf("%#v", this.Key)+",\n") - s = append(s, "Owner: "+fmt.Sprintf("%#v", this.Owner)+",\n") - s = append(s, "Value: "+fmt.Sprintf("%#v", this.Value)+",\n") - s = append(s, "Type: "+fmt.Sprintf("%#v", this.Type)+",\n") - s = append(s, "TypeCode: "+fmt.Sprintf("%#v", this.TypeCode)+",\n") - s = append(s, "}") - return strings.Join(s, "") -} -func (this *LockRequest) GoString() string { - if this == nil { - return "nil" - } - s := make([]string, 0, 6) - s = append(s, "&models.LockRequest{") - if this.Resource != nil { - s = append(s, "Resource: "+fmt.Sprintf("%#v", this.Resource)+",\n") - } - s = append(s, "TtlInSeconds: "+fmt.Sprintf("%#v", this.TtlInSeconds)+",\n") - s = append(s, "}") - return strings.Join(s, "") -} -func (this *LockResponse) GoString() string { - if this == nil { - return "nil" - } - s := make([]string, 0, 4) - s = append(s, "&models.LockResponse{") - s = append(s, "}") - return strings.Join(s, "") -} -func (this *ReleaseRequest) GoString() string { - if this == nil { - return "nil" - } - s := make([]string, 0, 5) - s = append(s, "&models.ReleaseRequest{") - if this.Resource != nil { - s = append(s, "Resource: "+fmt.Sprintf("%#v", this.Resource)+",\n") - } - s = append(s, "}") - return strings.Join(s, "") -} -func (this *ReleaseResponse) GoString() string { - if this == nil { - return "nil" - } - s := make([]string, 0, 4) - s = append(s, "&models.ReleaseResponse{") - s = append(s, "}") - return strings.Join(s, "") -} -func (this *FetchRequest) GoString() string { - if this == nil { - return "nil" - } - s := make([]string, 0, 5) - s = append(s, "&models.FetchRequest{") - s = append(s, "Key: "+fmt.Sprintf("%#v", this.Key)+",\n") - s = append(s, "}") - return strings.Join(s, "") -} -func (this *FetchResponse) GoString() string { - if this == nil { - return "nil" - } - s := make([]string, 0, 5) - s = append(s, "&models.FetchResponse{") - if this.Resource != nil { - s = append(s, "Resource: "+fmt.Sprintf("%#v", this.Resource)+",\n") - } - s = append(s, "}") - return strings.Join(s, "") -} -func (this *FetchAllRequest) GoString() string { - if this == nil { - return "nil" - } - s := make([]string, 0, 6) - s = append(s, "&models.FetchAllRequest{") - s = append(s, "Type: "+fmt.Sprintf("%#v", this.Type)+",\n") - s = append(s, "TypeCode: "+fmt.Sprintf("%#v", this.TypeCode)+",\n") - s = append(s, "}") - return strings.Join(s, "") -} -func (this *FetchAllResponse) GoString() string { - if this == nil { - return "nil" - } - s := make([]string, 0, 5) - s = append(s, "&models.FetchAllResponse{") - if this.Resources != nil { - s = append(s, "Resources: "+fmt.Sprintf("%#v", this.Resources)+",\n") - } - s = append(s, "}") - return strings.Join(s, "") -} -func valueToGoStringLocket(v interface{}, typ string) string { - rv := reflect.ValueOf(v) - if rv.IsNil() { - return "nil" - } - pv := reflect.Indirect(rv).Interface() - return fmt.Sprintf("func(v %v) *%v { return &v } ( %#v )", typ, typ, pv) + return mi.MessageOf(x) } -// Reference imports to suppress errors if they are not otherwise used. -var _ context.Context -var _ grpc.ClientConn - -// This is a compile-time assertion to ensure that this generated file -// is compatible with the grpc package it is being compiled against. -const _ = grpc.SupportPackageIsVersion4 - -// LocketClient is the client API for Locket service. -// -// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream. -type LocketClient interface { - Lock(ctx context.Context, in *LockRequest, opts ...grpc.CallOption) (*LockResponse, error) - Fetch(ctx context.Context, in *FetchRequest, opts ...grpc.CallOption) (*FetchResponse, error) - Release(ctx context.Context, in *ReleaseRequest, opts ...grpc.CallOption) (*ReleaseResponse, error) - FetchAll(ctx context.Context, in *FetchAllRequest, opts ...grpc.CallOption) (*FetchAllResponse, error) -} - -type locketClient struct { - cc *grpc.ClientConn -} - -func NewLocketClient(cc *grpc.ClientConn) LocketClient { - return &locketClient{cc} -} - -func (c *locketClient) Lock(ctx context.Context, in *LockRequest, opts ...grpc.CallOption) (*LockResponse, error) { - out := new(LockResponse) - err := c.cc.Invoke(ctx, "/models.Locket/Lock", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *locketClient) Fetch(ctx context.Context, in *FetchRequest, opts ...grpc.CallOption) (*FetchResponse, error) { - out := new(FetchResponse) - err := c.cc.Invoke(ctx, "/models.Locket/Fetch", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil +// Deprecated: Use ProtoLockResponse.ProtoReflect.Descriptor instead. +func (*ProtoLockResponse) Descriptor() ([]byte, []int) { + return file_locket_proto_rawDescGZIP(), []int{2} } -func (c *locketClient) Release(ctx context.Context, in *ReleaseRequest, opts ...grpc.CallOption) (*ReleaseResponse, error) { - out := new(ReleaseResponse) - err := c.cc.Invoke(ctx, "/models.Locket/Release", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *locketClient) FetchAll(ctx context.Context, in *FetchAllRequest, opts ...grpc.CallOption) (*FetchAllResponse, error) { - out := new(FetchAllResponse) - err := c.cc.Invoke(ctx, "/models.Locket/FetchAll", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -// LocketServer is the server API for Locket service. -type LocketServer interface { - Lock(context.Context, *LockRequest) (*LockResponse, error) - Fetch(context.Context, *FetchRequest) (*FetchResponse, error) - Release(context.Context, *ReleaseRequest) (*ReleaseResponse, error) - FetchAll(context.Context, *FetchAllRequest) (*FetchAllResponse, error) +type ProtoReleaseRequest struct { + state protoimpl.MessageState `protogen:"open.v1"` + Resource *ProtoResource `protobuf:"bytes,1,opt,name=resource,proto3" json:"resource,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } -// UnimplementedLocketServer can be embedded to have forward compatible implementations. -type UnimplementedLocketServer struct { +func (x *ProtoReleaseRequest) Reset() { + *x = ProtoReleaseRequest{} + mi := &file_locket_proto_msgTypes[3] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } -func (*UnimplementedLocketServer) Lock(ctx context.Context, req *LockRequest) (*LockResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method Lock not implemented") -} -func (*UnimplementedLocketServer) Fetch(ctx context.Context, req *FetchRequest) (*FetchResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method Fetch not implemented") -} -func (*UnimplementedLocketServer) Release(ctx context.Context, req *ReleaseRequest) (*ReleaseResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method Release not implemented") -} -func (*UnimplementedLocketServer) FetchAll(ctx context.Context, req *FetchAllRequest) (*FetchAllResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method FetchAll not implemented") +func (x *ProtoReleaseRequest) String() string { + return protoimpl.X.MessageStringOf(x) } -func RegisterLocketServer(s *grpc.Server, srv LocketServer) { - s.RegisterService(&_Locket_serviceDesc, srv) -} +func (*ProtoReleaseRequest) ProtoMessage() {} -func _Locket_Lock_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(LockRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(LocketServer).Lock(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/models.Locket/Lock", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(LocketServer).Lock(ctx, req.(*LockRequest)) - } - return interceptor(ctx, in, info, handler) -} - -func _Locket_Fetch_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(FetchRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(LocketServer).Fetch(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/models.Locket/Fetch", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(LocketServer).Fetch(ctx, req.(*FetchRequest)) - } - return interceptor(ctx, in, info, handler) -} - -func _Locket_Release_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(ReleaseRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(LocketServer).Release(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/models.Locket/Release", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(LocketServer).Release(ctx, req.(*ReleaseRequest)) - } - return interceptor(ctx, in, info, handler) -} - -func _Locket_FetchAll_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(FetchAllRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(LocketServer).FetchAll(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/models.Locket/FetchAll", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(LocketServer).FetchAll(ctx, req.(*FetchAllRequest)) +func (x *ProtoReleaseRequest) ProtoReflect() protoreflect.Message { + mi := &file_locket_proto_msgTypes[3] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms } - return interceptor(ctx, in, info, handler) + return mi.MessageOf(x) } -var _Locket_serviceDesc = grpc.ServiceDesc{ - ServiceName: "models.Locket", - HandlerType: (*LocketServer)(nil), - Methods: []grpc.MethodDesc{ - { - MethodName: "Lock", - Handler: _Locket_Lock_Handler, - }, - { - MethodName: "Fetch", - Handler: _Locket_Fetch_Handler, - }, - { - MethodName: "Release", - Handler: _Locket_Release_Handler, - }, - { - MethodName: "FetchAll", - Handler: _Locket_FetchAll_Handler, - }, - }, - Streams: []grpc.StreamDesc{}, - Metadata: "locket.proto", +// Deprecated: Use ProtoReleaseRequest.ProtoReflect.Descriptor instead. +func (*ProtoReleaseRequest) Descriptor() ([]byte, []int) { + return file_locket_proto_rawDescGZIP(), []int{3} } -func (m *Resource) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err +func (x *ProtoReleaseRequest) GetResource() *ProtoResource { + if x != nil { + return x.Resource } - return dAtA[:n], nil + return nil } -func (m *Resource) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +type ProtoReleaseResponse struct { + state protoimpl.MessageState `protogen:"open.v1"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } -func (m *Resource) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if m.TypeCode != 0 { - i = encodeVarintLocket(dAtA, i, uint64(m.TypeCode)) - i-- - dAtA[i] = 0x28 - } - if len(m.Type) > 0 { - i -= len(m.Type) - copy(dAtA[i:], m.Type) - i = encodeVarintLocket(dAtA, i, uint64(len(m.Type))) - i-- - dAtA[i] = 0x22 - } - if len(m.Value) > 0 { - i -= len(m.Value) - copy(dAtA[i:], m.Value) - i = encodeVarintLocket(dAtA, i, uint64(len(m.Value))) - i-- - dAtA[i] = 0x1a - } - if len(m.Owner) > 0 { - i -= len(m.Owner) - copy(dAtA[i:], m.Owner) - i = encodeVarintLocket(dAtA, i, uint64(len(m.Owner))) - i-- - dAtA[i] = 0x12 - } - if len(m.Key) > 0 { - i -= len(m.Key) - copy(dAtA[i:], m.Key) - i = encodeVarintLocket(dAtA, i, uint64(len(m.Key))) - i-- - dAtA[i] = 0xa - } - return len(dAtA) - i, nil +func (x *ProtoReleaseResponse) Reset() { + *x = ProtoReleaseResponse{} + mi := &file_locket_proto_msgTypes[4] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } -func (m *LockRequest) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err - } - return dAtA[:n], nil +func (x *ProtoReleaseResponse) String() string { + return protoimpl.X.MessageStringOf(x) } -func (m *LockRequest) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} +func (*ProtoReleaseResponse) ProtoMessage() {} -func (m *LockRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if m.TtlInSeconds != 0 { - i = encodeVarintLocket(dAtA, i, uint64(m.TtlInSeconds)) - i-- - dAtA[i] = 0x10 - } - if m.Resource != nil { - { - size, err := m.Resource.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintLocket(dAtA, i, uint64(size)) +func (x *ProtoReleaseResponse) ProtoReflect() protoreflect.Message { + mi := &file_locket_proto_msgTypes[4] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) } - i-- - dAtA[i] = 0xa - } - return len(dAtA) - i, nil -} - -func (m *LockResponse) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err + return ms } - return dAtA[:n], nil -} - -func (m *LockResponse) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) + return mi.MessageOf(x) } -func (m *LockResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - return len(dAtA) - i, nil +// Deprecated: Use ProtoReleaseResponse.ProtoReflect.Descriptor instead. +func (*ProtoReleaseResponse) Descriptor() ([]byte, []int) { + return file_locket_proto_rawDescGZIP(), []int{4} } -func (m *ReleaseRequest) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err - } - return dAtA[:n], nil -} - -func (m *ReleaseRequest) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *ReleaseRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if m.Resource != nil { - { - size, err := m.Resource.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintLocket(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0xa - } - return len(dAtA) - i, nil +type ProtoFetchRequest struct { + state protoimpl.MessageState `protogen:"open.v1"` + Key string `protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } -func (m *ReleaseResponse) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err - } - return dAtA[:n], nil +func (x *ProtoFetchRequest) Reset() { + *x = ProtoFetchRequest{} + mi := &file_locket_proto_msgTypes[5] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } -func (m *ReleaseResponse) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (x *ProtoFetchRequest) String() string { + return protoimpl.X.MessageStringOf(x) } -func (m *ReleaseResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - return len(dAtA) - i, nil -} +func (*ProtoFetchRequest) ProtoMessage() {} -func (m *FetchRequest) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err +func (x *ProtoFetchRequest) ProtoReflect() protoreflect.Message { + mi := &file_locket_proto_msgTypes[5] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms } - return dAtA[:n], nil + return mi.MessageOf(x) } -func (m *FetchRequest) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +// Deprecated: Use ProtoFetchRequest.ProtoReflect.Descriptor instead. +func (*ProtoFetchRequest) Descriptor() ([]byte, []int) { + return file_locket_proto_rawDescGZIP(), []int{5} } -func (m *FetchRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if len(m.Key) > 0 { - i -= len(m.Key) - copy(dAtA[i:], m.Key) - i = encodeVarintLocket(dAtA, i, uint64(len(m.Key))) - i-- - dAtA[i] = 0xa +func (x *ProtoFetchRequest) GetKey() string { + if x != nil { + return x.Key } - return len(dAtA) - i, nil + return "" } -func (m *FetchResponse) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err - } - return dAtA[:n], nil -} - -func (m *FetchResponse) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *FetchResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if m.Resource != nil { - { - size, err := m.Resource.MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintLocket(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0xa - } - return len(dAtA) - i, nil +type ProtoFetchResponse struct { + state protoimpl.MessageState `protogen:"open.v1"` + Resource *ProtoResource `protobuf:"bytes,1,opt,name=resource,proto3" json:"resource,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } -func (m *FetchAllRequest) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err - } - return dAtA[:n], nil +func (x *ProtoFetchResponse) Reset() { + *x = ProtoFetchResponse{} + mi := &file_locket_proto_msgTypes[6] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } -func (m *FetchAllRequest) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) +func (x *ProtoFetchResponse) String() string { + return protoimpl.X.MessageStringOf(x) } -func (m *FetchAllRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if m.TypeCode != 0 { - i = encodeVarintLocket(dAtA, i, uint64(m.TypeCode)) - i-- - dAtA[i] = 0x10 - } - if len(m.Type) > 0 { - i -= len(m.Type) - copy(dAtA[i:], m.Type) - i = encodeVarintLocket(dAtA, i, uint64(len(m.Type))) - i-- - dAtA[i] = 0xa - } - return len(dAtA) - i, nil -} +func (*ProtoFetchResponse) ProtoMessage() {} -func (m *FetchAllResponse) Marshal() (dAtA []byte, err error) { - size := m.Size() - dAtA = make([]byte, size) - n, err := m.MarshalToSizedBuffer(dAtA[:size]) - if err != nil { - return nil, err - } - return dAtA[:n], nil -} - -func (m *FetchAllResponse) MarshalTo(dAtA []byte) (int, error) { - size := m.Size() - return m.MarshalToSizedBuffer(dAtA[:size]) -} - -func (m *FetchAllResponse) MarshalToSizedBuffer(dAtA []byte) (int, error) { - i := len(dAtA) - _ = i - var l int - _ = l - if len(m.Resources) > 0 { - for iNdEx := len(m.Resources) - 1; iNdEx >= 0; iNdEx-- { - { - size, err := m.Resources[iNdEx].MarshalToSizedBuffer(dAtA[:i]) - if err != nil { - return 0, err - } - i -= size - i = encodeVarintLocket(dAtA, i, uint64(size)) - } - i-- - dAtA[i] = 0xa +func (x *ProtoFetchResponse) ProtoReflect() protoreflect.Message { + mi := &file_locket_proto_msgTypes[6] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) } + return ms } - return len(dAtA) - i, nil + return mi.MessageOf(x) } -func encodeVarintLocket(dAtA []byte, offset int, v uint64) int { - offset -= sovLocket(v) - base := offset - for v >= 1<<7 { - dAtA[offset] = uint8(v&0x7f | 0x80) - v >>= 7 - offset++ - } - dAtA[offset] = uint8(v) - return base -} -func (m *Resource) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - l = len(m.Key) - if l > 0 { - n += 1 + l + sovLocket(uint64(l)) - } - l = len(m.Owner) - if l > 0 { - n += 1 + l + sovLocket(uint64(l)) - } - l = len(m.Value) - if l > 0 { - n += 1 + l + sovLocket(uint64(l)) - } - l = len(m.Type) - if l > 0 { - n += 1 + l + sovLocket(uint64(l)) - } - if m.TypeCode != 0 { - n += 1 + sovLocket(uint64(m.TypeCode)) - } - return n +// Deprecated: Use ProtoFetchResponse.ProtoReflect.Descriptor instead. +func (*ProtoFetchResponse) Descriptor() ([]byte, []int) { + return file_locket_proto_rawDescGZIP(), []int{6} } -func (m *LockRequest) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.Resource != nil { - l = m.Resource.Size() - n += 1 + l + sovLocket(uint64(l)) - } - if m.TtlInSeconds != 0 { - n += 1 + sovLocket(uint64(m.TtlInSeconds)) - } - return n -} - -func (m *LockResponse) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - return n -} - -func (m *ReleaseRequest) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.Resource != nil { - l = m.Resource.Size() - n += 1 + l + sovLocket(uint64(l)) +func (x *ProtoFetchResponse) GetResource() *ProtoResource { + if x != nil { + return x.Resource } - return n + return nil } -func (m *ReleaseResponse) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - return n +type ProtoFetchAllRequest struct { + state protoimpl.MessageState `protogen:"open.v1"` + // Deprecated: Marked as deprecated in locket.proto. + Type string `protobuf:"bytes,1,opt,name=type,proto3" json:"type,omitempty"` + TypeCode ProtoTypeCode `protobuf:"varint,2,opt,name=type_code,json=typeCode,proto3,enum=models.ProtoTypeCode" json:"type_code,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } -func (m *FetchRequest) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - l = len(m.Key) - if l > 0 { - n += 1 + l + sovLocket(uint64(l)) - } - return n +func (x *ProtoFetchAllRequest) Reset() { + *x = ProtoFetchAllRequest{} + mi := &file_locket_proto_msgTypes[7] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } -func (m *FetchResponse) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if m.Resource != nil { - l = m.Resource.Size() - n += 1 + l + sovLocket(uint64(l)) - } - return n +func (x *ProtoFetchAllRequest) String() string { + return protoimpl.X.MessageStringOf(x) } -func (m *FetchAllRequest) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - l = len(m.Type) - if l > 0 { - n += 1 + l + sovLocket(uint64(l)) - } - if m.TypeCode != 0 { - n += 1 + sovLocket(uint64(m.TypeCode)) - } - return n -} +func (*ProtoFetchAllRequest) ProtoMessage() {} -func (m *FetchAllResponse) Size() (n int) { - if m == nil { - return 0 - } - var l int - _ = l - if len(m.Resources) > 0 { - for _, e := range m.Resources { - l = e.Size() - n += 1 + l + sovLocket(uint64(l)) +func (x *ProtoFetchAllRequest) ProtoReflect() protoreflect.Message { + mi := &file_locket_proto_msgTypes[7] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) } + return ms } - return n + return mi.MessageOf(x) } -func sovLocket(x uint64) (n int) { - return (math_bits.Len64(x|1) + 6) / 7 -} -func sozLocket(x uint64) (n int) { - return sovLocket(uint64((x << 1) ^ uint64((int64(x) >> 63)))) +// Deprecated: Use ProtoFetchAllRequest.ProtoReflect.Descriptor instead. +func (*ProtoFetchAllRequest) Descriptor() ([]byte, []int) { + return file_locket_proto_rawDescGZIP(), []int{7} } -func (this *Resource) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&Resource{`, - `Key:` + fmt.Sprintf("%v", this.Key) + `,`, - `Owner:` + fmt.Sprintf("%v", this.Owner) + `,`, - `Value:` + fmt.Sprintf("%v", this.Value) + `,`, - `Type:` + fmt.Sprintf("%v", this.Type) + `,`, - `TypeCode:` + fmt.Sprintf("%v", this.TypeCode) + `,`, - `}`, - }, "") - return s -} -func (this *LockRequest) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&LockRequest{`, - `Resource:` + strings.Replace(this.Resource.String(), "Resource", "Resource", 1) + `,`, - `TtlInSeconds:` + fmt.Sprintf("%v", this.TtlInSeconds) + `,`, - `}`, - }, "") - return s -} -func (this *LockResponse) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&LockResponse{`, - `}`, - }, "") - return s -} -func (this *ReleaseRequest) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ReleaseRequest{`, - `Resource:` + strings.Replace(this.Resource.String(), "Resource", "Resource", 1) + `,`, - `}`, - }, "") - return s -} -func (this *ReleaseResponse) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&ReleaseResponse{`, - `}`, - }, "") - return s -} -func (this *FetchRequest) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&FetchRequest{`, - `Key:` + fmt.Sprintf("%v", this.Key) + `,`, - `}`, - }, "") - return s -} -func (this *FetchResponse) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&FetchResponse{`, - `Resource:` + strings.Replace(this.Resource.String(), "Resource", "Resource", 1) + `,`, - `}`, - }, "") - return s -} -func (this *FetchAllRequest) String() string { - if this == nil { - return "nil" - } - s := strings.Join([]string{`&FetchAllRequest{`, - `Type:` + fmt.Sprintf("%v", this.Type) + `,`, - `TypeCode:` + fmt.Sprintf("%v", this.TypeCode) + `,`, - `}`, - }, "") - return s -} -func (this *FetchAllResponse) String() string { - if this == nil { - return "nil" - } - repeatedStringForResources := "[]*Resource{" - for _, f := range this.Resources { - repeatedStringForResources += strings.Replace(f.String(), "Resource", "Resource", 1) + "," - } - repeatedStringForResources += "}" - s := strings.Join([]string{`&FetchAllResponse{`, - `Resources:` + repeatedStringForResources + `,`, - `}`, - }, "") - return s -} -func valueToStringLocket(v interface{}) string { - rv := reflect.ValueOf(v) - if rv.IsNil() { - return "nil" - } - pv := reflect.Indirect(rv).Interface() - return fmt.Sprintf("*%v", pv) -} -func (m *Resource) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowLocket - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: Resource: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: Resource: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Key", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowLocket - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthLocket - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthLocket - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.Key = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 2: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Owner", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowLocket - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthLocket - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthLocket - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.Owner = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 3: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Value", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowLocket - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthLocket - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthLocket - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.Value = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 4: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Type", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowLocket - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthLocket - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthLocket - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.Type = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 5: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field TypeCode", wireType) - } - m.TypeCode = 0 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowLocket - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - m.TypeCode |= TypeCode(b&0x7F) << shift - if b < 0x80 { - break - } - } - default: - iNdEx = preIndex - skippy, err := skipLocket(dAtA[iNdEx:]) - if err != nil { - return err - } - if (skippy < 0) || (iNdEx+skippy) < 0 { - return ErrInvalidLengthLocket - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - if iNdEx > l { - return io.ErrUnexpectedEOF +// Deprecated: Marked as deprecated in locket.proto. +func (x *ProtoFetchAllRequest) GetType() string { + if x != nil { + return x.Type } - return nil + return "" } -func (m *LockRequest) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowLocket - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: LockRequest: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: LockRequest: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Resource", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowLocket - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthLocket - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthLocket - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.Resource == nil { - m.Resource = &Resource{} - } - if err := m.Resource.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - case 2: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field TtlInSeconds", wireType) - } - m.TtlInSeconds = 0 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowLocket - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - m.TtlInSeconds |= int64(b&0x7F) << shift - if b < 0x80 { - break - } - } - default: - iNdEx = preIndex - skippy, err := skipLocket(dAtA[iNdEx:]) - if err != nil { - return err - } - if (skippy < 0) || (iNdEx+skippy) < 0 { - return ErrInvalidLengthLocket - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - if iNdEx > l { - return io.ErrUnexpectedEOF +func (x *ProtoFetchAllRequest) GetTypeCode() ProtoTypeCode { + if x != nil { + return x.TypeCode } - return nil + return ProtoTypeCode_UNKNOWN } -func (m *LockResponse) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowLocket - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: LockResponse: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: LockResponse: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - default: - iNdEx = preIndex - skippy, err := skipLocket(dAtA[iNdEx:]) - if err != nil { - return err - } - if (skippy < 0) || (iNdEx+skippy) < 0 { - return ErrInvalidLengthLocket - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil +type ProtoFetchAllResponse struct { + state protoimpl.MessageState `protogen:"open.v1"` + Resources []*ProtoResource `protobuf:"bytes,1,rep,name=resources,proto3" json:"resources,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } -func (m *ReleaseRequest) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowLocket - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: ReleaseRequest: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: ReleaseRequest: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Resource", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowLocket - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthLocket - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthLocket - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.Resource == nil { - m.Resource = &Resource{} - } - if err := m.Resource.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipLocket(dAtA[iNdEx:]) - if err != nil { - return err - } - if (skippy < 0) || (iNdEx+skippy) < 0 { - return ErrInvalidLengthLocket - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil +func (x *ProtoFetchAllResponse) Reset() { + *x = ProtoFetchAllResponse{} + mi := &file_locket_proto_msgTypes[8] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } -func (m *ReleaseResponse) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowLocket - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: ReleaseResponse: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: ReleaseResponse: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - default: - iNdEx = preIndex - skippy, err := skipLocket(dAtA[iNdEx:]) - if err != nil { - return err - } - if (skippy < 0) || (iNdEx+skippy) < 0 { - return ErrInvalidLengthLocket - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil +func (x *ProtoFetchAllResponse) String() string { + return protoimpl.X.MessageStringOf(x) } -func (m *FetchRequest) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowLocket - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: FetchRequest: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: FetchRequest: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Key", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowLocket - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthLocket - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthLocket - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.Key = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipLocket(dAtA[iNdEx:]) - if err != nil { - return err - } - if (skippy < 0) || (iNdEx+skippy) < 0 { - return ErrInvalidLengthLocket - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *FetchResponse) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowLocket - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: FetchResponse: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: FetchResponse: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Resource", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowLocket - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthLocket - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthLocket - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - if m.Resource == nil { - m.Resource = &Resource{} - } - if err := m.Resource.Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipLocket(dAtA[iNdEx:]) - if err != nil { - return err - } - if (skippy < 0) || (iNdEx+skippy) < 0 { - return ErrInvalidLengthLocket - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } +func (*ProtoFetchAllResponse) ProtoMessage() {} - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil -} -func (m *FetchAllRequest) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowLocket - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: FetchAllRequest: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: FetchAllRequest: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Type", wireType) - } - var stringLen uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowLocket - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - stringLen |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - intStringLen := int(stringLen) - if intStringLen < 0 { - return ErrInvalidLengthLocket - } - postIndex := iNdEx + intStringLen - if postIndex < 0 { - return ErrInvalidLengthLocket - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.Type = string(dAtA[iNdEx:postIndex]) - iNdEx = postIndex - case 2: - if wireType != 0 { - return fmt.Errorf("proto: wrong wireType = %d for field TypeCode", wireType) - } - m.TypeCode = 0 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowLocket - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - m.TypeCode |= TypeCode(b&0x7F) << shift - if b < 0x80 { - break - } - } - default: - iNdEx = preIndex - skippy, err := skipLocket(dAtA[iNdEx:]) - if err != nil { - return err - } - if (skippy < 0) || (iNdEx+skippy) < 0 { - return ErrInvalidLengthLocket - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy +func (x *ProtoFetchAllResponse) ProtoReflect() protoreflect.Message { + mi := &file_locket_proto_msgTypes[8] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) } + return ms } + return mi.MessageOf(x) +} - if iNdEx > l { - return io.ErrUnexpectedEOF - } - return nil +// Deprecated: Use ProtoFetchAllResponse.ProtoReflect.Descriptor instead. +func (*ProtoFetchAllResponse) Descriptor() ([]byte, []int) { + return file_locket_proto_rawDescGZIP(), []int{8} } -func (m *FetchAllResponse) Unmarshal(dAtA []byte) error { - l := len(dAtA) - iNdEx := 0 - for iNdEx < l { - preIndex := iNdEx - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowLocket - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= uint64(b&0x7F) << shift - if b < 0x80 { - break - } - } - fieldNum := int32(wire >> 3) - wireType := int(wire & 0x7) - if wireType == 4 { - return fmt.Errorf("proto: FetchAllResponse: wiretype end group for non-group") - } - if fieldNum <= 0 { - return fmt.Errorf("proto: FetchAllResponse: illegal tag %d (wire type %d)", fieldNum, wire) - } - switch fieldNum { - case 1: - if wireType != 2 { - return fmt.Errorf("proto: wrong wireType = %d for field Resources", wireType) - } - var msglen int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return ErrIntOverflowLocket - } - if iNdEx >= l { - return io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - msglen |= int(b&0x7F) << shift - if b < 0x80 { - break - } - } - if msglen < 0 { - return ErrInvalidLengthLocket - } - postIndex := iNdEx + msglen - if postIndex < 0 { - return ErrInvalidLengthLocket - } - if postIndex > l { - return io.ErrUnexpectedEOF - } - m.Resources = append(m.Resources, &Resource{}) - if err := m.Resources[len(m.Resources)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil { - return err - } - iNdEx = postIndex - default: - iNdEx = preIndex - skippy, err := skipLocket(dAtA[iNdEx:]) - if err != nil { - return err - } - if (skippy < 0) || (iNdEx+skippy) < 0 { - return ErrInvalidLengthLocket - } - if (iNdEx + skippy) > l { - return io.ErrUnexpectedEOF - } - iNdEx += skippy - } - } - if iNdEx > l { - return io.ErrUnexpectedEOF +func (x *ProtoFetchAllResponse) GetResources() []*ProtoResource { + if x != nil { + return x.Resources } return nil } -func skipLocket(dAtA []byte) (n int, err error) { - l := len(dAtA) - iNdEx := 0 - depth := 0 - for iNdEx < l { - var wire uint64 - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return 0, ErrIntOverflowLocket - } - if iNdEx >= l { - return 0, io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - wire |= (uint64(b) & 0x7F) << shift - if b < 0x80 { - break - } - } - wireType := int(wire & 0x7) - switch wireType { - case 0: - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return 0, ErrIntOverflowLocket - } - if iNdEx >= l { - return 0, io.ErrUnexpectedEOF - } - iNdEx++ - if dAtA[iNdEx-1] < 0x80 { - break - } - } - case 1: - iNdEx += 8 - case 2: - var length int - for shift := uint(0); ; shift += 7 { - if shift >= 64 { - return 0, ErrIntOverflowLocket - } - if iNdEx >= l { - return 0, io.ErrUnexpectedEOF - } - b := dAtA[iNdEx] - iNdEx++ - length |= (int(b) & 0x7F) << shift - if b < 0x80 { - break - } - } - if length < 0 { - return 0, ErrInvalidLengthLocket - } - iNdEx += length - case 3: - depth++ - case 4: - if depth == 0 { - return 0, ErrUnexpectedEndOfGroupLocket - } - depth-- - case 5: - iNdEx += 4 - default: - return 0, fmt.Errorf("proto: illegal wireType %d", wireType) - } - if iNdEx < 0 { - return 0, ErrInvalidLengthLocket - } - if depth == 0 { - return iNdEx, nil - } - } - return 0, io.ErrUnexpectedEOF -} + +var File_locket_proto protoreflect.FileDescriptor + +const file_locket_proto_rawDesc = "" + + "\n" + + "\flocket.proto\x12\x06models\x1a\tbbs.proto\"\x99\x01\n" + + "\rProtoResource\x12\x10\n" + + "\x03key\x18\x01 \x01(\tR\x03key\x12\x14\n" + + "\x05owner\x18\x02 \x01(\tR\x05owner\x12\x14\n" + + "\x05value\x18\x03 \x01(\tR\x05value\x12\x16\n" + + "\x04type\x18\x04 \x01(\tB\x02\x18\x01R\x04type\x122\n" + + "\ttype_code\x18\x05 \x01(\x0e2\x15.models.ProtoTypeCodeR\btypeCode\"k\n" + + "\x10ProtoLockRequest\x121\n" + + "\bresource\x18\x01 \x01(\v2\x15.models.ProtoResourceR\bresource\x12$\n" + + "\x0ettl_in_seconds\x18\x02 \x01(\x03R\fttlInSeconds\"\x13\n" + + "\x11ProtoLockResponse\"H\n" + + "\x13ProtoReleaseRequest\x121\n" + + "\bresource\x18\x01 \x01(\v2\x15.models.ProtoResourceR\bresource\"\x16\n" + + "\x14ProtoReleaseResponse\"%\n" + + "\x11ProtoFetchRequest\x12\x10\n" + + "\x03key\x18\x01 \x01(\tR\x03key\"G\n" + + "\x12ProtoFetchResponse\x121\n" + + "\bresource\x18\x01 \x01(\v2\x15.models.ProtoResourceR\bresource\"b\n" + + "\x14ProtoFetchAllRequest\x12\x16\n" + + "\x04type\x18\x01 \x01(\tB\x02\x18\x01R\x04type\x122\n" + + "\ttype_code\x18\x02 \x01(\x0e2\x15.models.ProtoTypeCodeR\btypeCode\"L\n" + + "\x15ProtoFetchAllResponse\x123\n" + + "\tresources\x18\x01 \x03(\v2\x15.models.ProtoResourceR\tresources*V\n" + + "\rProtoTypeCode\x12\x17\n" + + "\aUNKNOWN\x10\x00\x1a\n" + + "\x82}\aUNKNOWN\x12\x11\n" + + "\x04LOCK\x10\x01\x1a\a\x82}\x04LOCK\x12\x19\n" + + "\bPRESENCE\x10\x02\x1a\v\x82}\bPRESENCE2\xb5\x02\n" + + "\vProtoLocket\x12B\n" + + "\tProtoLock\x12\x18.models.ProtoLockRequest\x1a\x19.models.ProtoLockResponse\"\x00\x12E\n" + + "\n" + + "ProtoFetch\x12\x19.models.ProtoFetchRequest\x1a\x1a.models.ProtoFetchResponse\"\x00\x12K\n" + + "\fProtoRelease\x12\x1b.models.ProtoReleaseRequest\x1a\x1c.models.ProtoReleaseResponse\"\x00\x12N\n" + + "\rProtoFetchAll\x12\x1c.models.ProtoFetchAllRequest\x1a\x1d.models.ProtoFetchAllResponse\"\x00B%Z#code.cloudfoundry.org/locket/modelsb\x06proto3" var ( - ErrInvalidLengthLocket = fmt.Errorf("proto: negative length found during unmarshaling") - ErrIntOverflowLocket = fmt.Errorf("proto: integer overflow") - ErrUnexpectedEndOfGroupLocket = fmt.Errorf("proto: unexpected end of group") + file_locket_proto_rawDescOnce sync.Once + file_locket_proto_rawDescData []byte ) + +func file_locket_proto_rawDescGZIP() []byte { + file_locket_proto_rawDescOnce.Do(func() { + file_locket_proto_rawDescData = protoimpl.X.CompressGZIP(unsafe.Slice(unsafe.StringData(file_locket_proto_rawDesc), len(file_locket_proto_rawDesc))) + }) + return file_locket_proto_rawDescData +} + +var file_locket_proto_enumTypes = make([]protoimpl.EnumInfo, 1) +var file_locket_proto_msgTypes = make([]protoimpl.MessageInfo, 9) +var file_locket_proto_goTypes = []any{ + (ProtoTypeCode)(0), // 0: models.ProtoTypeCode + (*ProtoResource)(nil), // 1: models.ProtoResource + (*ProtoLockRequest)(nil), // 2: models.ProtoLockRequest + (*ProtoLockResponse)(nil), // 3: models.ProtoLockResponse + (*ProtoReleaseRequest)(nil), // 4: models.ProtoReleaseRequest + (*ProtoReleaseResponse)(nil), // 5: models.ProtoReleaseResponse + (*ProtoFetchRequest)(nil), // 6: models.ProtoFetchRequest + (*ProtoFetchResponse)(nil), // 7: models.ProtoFetchResponse + (*ProtoFetchAllRequest)(nil), // 8: models.ProtoFetchAllRequest + (*ProtoFetchAllResponse)(nil), // 9: models.ProtoFetchAllResponse +} +var file_locket_proto_depIdxs = []int32{ + 0, // 0: models.ProtoResource.type_code:type_name -> models.ProtoTypeCode + 1, // 1: models.ProtoLockRequest.resource:type_name -> models.ProtoResource + 1, // 2: models.ProtoReleaseRequest.resource:type_name -> models.ProtoResource + 1, // 3: models.ProtoFetchResponse.resource:type_name -> models.ProtoResource + 0, // 4: models.ProtoFetchAllRequest.type_code:type_name -> models.ProtoTypeCode + 1, // 5: models.ProtoFetchAllResponse.resources:type_name -> models.ProtoResource + 2, // 6: models.ProtoLocket.ProtoLock:input_type -> models.ProtoLockRequest + 6, // 7: models.ProtoLocket.ProtoFetch:input_type -> models.ProtoFetchRequest + 4, // 8: models.ProtoLocket.ProtoRelease:input_type -> models.ProtoReleaseRequest + 8, // 9: models.ProtoLocket.ProtoFetchAll:input_type -> models.ProtoFetchAllRequest + 3, // 10: models.ProtoLocket.ProtoLock:output_type -> models.ProtoLockResponse + 7, // 11: models.ProtoLocket.ProtoFetch:output_type -> models.ProtoFetchResponse + 5, // 12: models.ProtoLocket.ProtoRelease:output_type -> models.ProtoReleaseResponse + 9, // 13: models.ProtoLocket.ProtoFetchAll:output_type -> models.ProtoFetchAllResponse + 10, // [10:14] is the sub-list for method output_type + 6, // [6:10] is the sub-list for method input_type + 6, // [6:6] is the sub-list for extension type_name + 6, // [6:6] is the sub-list for extension extendee + 0, // [0:6] is the sub-list for field type_name +} + +func init() { file_locket_proto_init() } +func file_locket_proto_init() { + if File_locket_proto != nil { + return + } + type x struct{} + out := protoimpl.TypeBuilder{ + File: protoimpl.DescBuilder{ + GoPackagePath: reflect.TypeOf(x{}).PkgPath(), + RawDescriptor: unsafe.Slice(unsafe.StringData(file_locket_proto_rawDesc), len(file_locket_proto_rawDesc)), + NumEnums: 1, + NumMessages: 9, + NumExtensions: 0, + NumServices: 1, + }, + GoTypes: file_locket_proto_goTypes, + DependencyIndexes: file_locket_proto_depIdxs, + EnumInfos: file_locket_proto_enumTypes, + MessageInfos: file_locket_proto_msgTypes, + }.Build() + File_locket_proto = out.File + file_locket_proto_goTypes = nil + file_locket_proto_depIdxs = nil +} diff --git a/models/locket.proto b/models/locket.proto index 122cd8a..2681939 100644 --- a/models/locket.proto +++ b/models/locket.proto @@ -1,54 +1,57 @@ syntax = "proto3"; package models; +option go_package="code.cloudfoundry.org/locket/models"; -service Locket { - rpc Lock(LockRequest) returns (LockResponse) {} - rpc Fetch(FetchRequest) returns (FetchResponse) {} - rpc Release(ReleaseRequest) returns (ReleaseResponse) {} - rpc FetchAll(FetchAllRequest) returns (FetchAllResponse) {} +import "bbs.proto"; + +service ProtoLocket { + rpc ProtoLock(ProtoLockRequest) returns (ProtoLockResponse) {} + rpc ProtoFetch(ProtoFetchRequest) returns (ProtoFetchResponse) {} + rpc ProtoRelease(ProtoReleaseRequest) returns (ProtoReleaseResponse) {} + rpc ProtoFetchAll(ProtoFetchAllRequest) returns (ProtoFetchAllResponse) {} } -enum TypeCode { - UNKNOWN = 0; - LOCK = 1; - PRESENCE = 2; +enum ProtoTypeCode { + UNKNOWN = 0 [(bbs.bbs_enumvalue_customname) = "UNKNOWN"]; + LOCK = 1 [(bbs.bbs_enumvalue_customname) = "LOCK"]; + PRESENCE = 2 [(bbs.bbs_enumvalue_customname) = "PRESENCE"]; } -message Resource { +message ProtoResource { string key = 1; string owner = 2; string value = 3; string type = 4 [deprecated=true]; - TypeCode type_code = 5; + ProtoTypeCode type_code = 5; } -message LockRequest { - Resource resource = 1; +message ProtoLockRequest { + ProtoResource resource = 1; int64 ttl_in_seconds = 2; } -message LockResponse {} +message ProtoLockResponse {} -message ReleaseRequest { - Resource resource = 1; +message ProtoReleaseRequest { + ProtoResource resource = 1; } -message ReleaseResponse {} +message ProtoReleaseResponse {} -message FetchRequest { +message ProtoFetchRequest { string key = 1; } -message FetchResponse { - Resource resource = 1; +message ProtoFetchResponse { + ProtoResource resource = 1; } -message FetchAllRequest { +message ProtoFetchAllRequest { string type = 1 [deprecated=true]; - TypeCode type_code = 2; + ProtoTypeCode type_code = 2; } -message FetchAllResponse { - repeated Resource resources = 1; +message ProtoFetchAllResponse { + repeated ProtoResource resources = 1; } diff --git a/models/locket_bbs.pb.go b/models/locket_bbs.pb.go new file mode 100644 index 0000000..7cff3d0 --- /dev/null +++ b/models/locket_bbs.pb.go @@ -0,0 +1,937 @@ +// Code generated by protoc-gen-go-bbs. DO NOT EDIT. +// versions: +// - protoc-gen-go-bbs v0.0.1 +// - protoc v6.31.1 +// source: locket.proto + +package models + +import ( + strconv "strconv" +) + +type TypeCode int32 + +const ( + UNKNOWN TypeCode = 0 + LOCK TypeCode = 1 + PRESENCE TypeCode = 2 +) + +// Enum value maps for TypeCode +var ( + TypeCode_name = map[int32]string{ + 0: "UNKNOWN", + 1: "LOCK", + 2: "PRESENCE", + } + TypeCode_value = map[string]int32{ + "UNKNOWN": 0, + "LOCK": 1, + "PRESENCE": 2, + } +) + +func (m TypeCode) String() string { + s, ok := TypeCode_name[int32(m)] + if ok { + return s + } + return strconv.Itoa(int(m)) +} + +// Prevent copylock errors when using ProtoResource directly +type Resource struct { + Key string `json:"key,omitempty"` + Owner string `json:"owner,omitempty"` + Value string `json:"value,omitempty"` + // Deprecated: marked deprecated in locket.proto + Type string `json:"type,omitempty"` + TypeCode TypeCode `json:"typeCode,omitempty"` +} + +func (this *Resource) Equal(that interface{}) bool { + + if that == nil { + return this == nil + } + + that1, ok := that.(*Resource) + if !ok { + that2, ok := that.(Resource) + if ok { + that1 = &that2 + } else { + return false + } + } + + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + + if this.Key != that1.Key { + return false + } + if this.Owner != that1.Owner { + return false + } + if this.Value != that1.Value { + return false + } + if this.Type != that1.Type { + return false + } + if this.TypeCode != that1.TypeCode { + return false + } + return true +} +func (m *Resource) GetKey() string { + if m != nil { + return m.Key + } + var defaultValue string + defaultValue = "" + return defaultValue +} +func (m *Resource) SetKey(value string) { + if m != nil { + m.Key = value + } +} +func (m *Resource) GetOwner() string { + if m != nil { + return m.Owner + } + var defaultValue string + defaultValue = "" + return defaultValue +} +func (m *Resource) SetOwner(value string) { + if m != nil { + m.Owner = value + } +} +func (m *Resource) GetValue() string { + if m != nil { + return m.Value + } + var defaultValue string + defaultValue = "" + return defaultValue +} +func (m *Resource) SetValue(value string) { + if m != nil { + m.Value = value + } +} + +// Deprecated: marked deprecated in locket.proto +func (m *Resource) GetType() string { + if m != nil { + return m.Type + } + var defaultValue string + defaultValue = "" + return defaultValue +} + +// Deprecated: marked deprecated in locket.proto +func (m *Resource) SetType(value string) { + if m != nil { + m.Type = value + } +} +func (m *Resource) GetTypeCode() TypeCode { + if m != nil { + return m.TypeCode + } + var defaultValue TypeCode + defaultValue = 0 + return defaultValue +} +func (m *Resource) SetTypeCode(value TypeCode) { + if m != nil { + m.TypeCode = value + } +} +func (x *Resource) ToProto() *ProtoResource { + if x == nil { + return nil + } + + proto := &ProtoResource{ + Key: x.Key, + Owner: x.Owner, + Value: x.Value, + Type: x.Type, + TypeCode: ProtoTypeCode(x.TypeCode), + } + return proto +} + +func (x *ProtoResource) FromProto() *Resource { + if x == nil { + return nil + } + + copysafe := &Resource{ + Key: x.Key, + Owner: x.Owner, + Value: x.Value, + Type: x.Type, + TypeCode: TypeCode(x.TypeCode), + } + return copysafe +} + +func ResourceToProtoSlice(values []*Resource) []*ProtoResource { + if values == nil { + return nil + } + result := make([]*ProtoResource, len(values)) + for i, val := range values { + result[i] = val.ToProto() + } + return result +} + +func ResourceFromProtoSlice(values []*ProtoResource) []*Resource { + if values == nil { + return nil + } + result := make([]*Resource, len(values)) + for i, val := range values { + result[i] = val.FromProto() + } + return result +} + +// Prevent copylock errors when using ProtoLockRequest directly +type LockRequest struct { + Resource *Resource `json:"resource,omitempty"` + TtlInSeconds int64 `json:"ttlInSeconds,omitempty"` +} + +func (this *LockRequest) Equal(that interface{}) bool { + + if that == nil { + return this == nil + } + + that1, ok := that.(*LockRequest) + if !ok { + that2, ok := that.(LockRequest) + if ok { + that1 = &that2 + } else { + return false + } + } + + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + + if this.Resource == nil { + if that1.Resource != nil { + return false + } + } else if !this.Resource.Equal(*that1.Resource) { + return false + } + if this.TtlInSeconds != that1.TtlInSeconds { + return false + } + return true +} +func (m *LockRequest) GetResource() *Resource { + if m != nil { + return m.Resource + } + return nil +} +func (m *LockRequest) SetResource(value *Resource) { + if m != nil { + m.Resource = value + } +} +func (m *LockRequest) GetTtlInSeconds() int64 { + if m != nil { + return m.TtlInSeconds + } + var defaultValue int64 + defaultValue = 0 + return defaultValue +} +func (m *LockRequest) SetTtlInSeconds(value int64) { + if m != nil { + m.TtlInSeconds = value + } +} +func (x *LockRequest) ToProto() *ProtoLockRequest { + if x == nil { + return nil + } + + proto := &ProtoLockRequest{ + Resource: x.Resource.ToProto(), + TtlInSeconds: x.TtlInSeconds, + } + return proto +} + +func (x *ProtoLockRequest) FromProto() *LockRequest { + if x == nil { + return nil + } + + copysafe := &LockRequest{ + Resource: x.Resource.FromProto(), + TtlInSeconds: x.TtlInSeconds, + } + return copysafe +} + +func LockRequestToProtoSlice(values []*LockRequest) []*ProtoLockRequest { + if values == nil { + return nil + } + result := make([]*ProtoLockRequest, len(values)) + for i, val := range values { + result[i] = val.ToProto() + } + return result +} + +func LockRequestFromProtoSlice(values []*ProtoLockRequest) []*LockRequest { + if values == nil { + return nil + } + result := make([]*LockRequest, len(values)) + for i, val := range values { + result[i] = val.FromProto() + } + return result +} + +// Prevent copylock errors when using ProtoLockResponse directly +type LockResponse struct { +} + +func (this *LockResponse) Equal(that interface{}) bool { + + if that == nil { + return this == nil + } + + that1, ok := that.(*LockResponse) + if !ok { + that2, ok := that.(LockResponse) + if ok { + that1 = &that2 + } else { + return false + } + } + + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + + return true +} +func (x *LockResponse) ToProto() *ProtoLockResponse { + if x == nil { + return nil + } + + proto := &ProtoLockResponse{} + return proto +} + +func (x *ProtoLockResponse) FromProto() *LockResponse { + if x == nil { + return nil + } + + copysafe := &LockResponse{} + return copysafe +} + +func LockResponseToProtoSlice(values []*LockResponse) []*ProtoLockResponse { + if values == nil { + return nil + } + result := make([]*ProtoLockResponse, len(values)) + for i, val := range values { + result[i] = val.ToProto() + } + return result +} + +func LockResponseFromProtoSlice(values []*ProtoLockResponse) []*LockResponse { + if values == nil { + return nil + } + result := make([]*LockResponse, len(values)) + for i, val := range values { + result[i] = val.FromProto() + } + return result +} + +// Prevent copylock errors when using ProtoReleaseRequest directly +type ReleaseRequest struct { + Resource *Resource `json:"resource,omitempty"` +} + +func (this *ReleaseRequest) Equal(that interface{}) bool { + + if that == nil { + return this == nil + } + + that1, ok := that.(*ReleaseRequest) + if !ok { + that2, ok := that.(ReleaseRequest) + if ok { + that1 = &that2 + } else { + return false + } + } + + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + + if this.Resource == nil { + if that1.Resource != nil { + return false + } + } else if !this.Resource.Equal(*that1.Resource) { + return false + } + return true +} +func (m *ReleaseRequest) GetResource() *Resource { + if m != nil { + return m.Resource + } + return nil +} +func (m *ReleaseRequest) SetResource(value *Resource) { + if m != nil { + m.Resource = value + } +} +func (x *ReleaseRequest) ToProto() *ProtoReleaseRequest { + if x == nil { + return nil + } + + proto := &ProtoReleaseRequest{ + Resource: x.Resource.ToProto(), + } + return proto +} + +func (x *ProtoReleaseRequest) FromProto() *ReleaseRequest { + if x == nil { + return nil + } + + copysafe := &ReleaseRequest{ + Resource: x.Resource.FromProto(), + } + return copysafe +} + +func ReleaseRequestToProtoSlice(values []*ReleaseRequest) []*ProtoReleaseRequest { + if values == nil { + return nil + } + result := make([]*ProtoReleaseRequest, len(values)) + for i, val := range values { + result[i] = val.ToProto() + } + return result +} + +func ReleaseRequestFromProtoSlice(values []*ProtoReleaseRequest) []*ReleaseRequest { + if values == nil { + return nil + } + result := make([]*ReleaseRequest, len(values)) + for i, val := range values { + result[i] = val.FromProto() + } + return result +} + +// Prevent copylock errors when using ProtoReleaseResponse directly +type ReleaseResponse struct { +} + +func (this *ReleaseResponse) Equal(that interface{}) bool { + + if that == nil { + return this == nil + } + + that1, ok := that.(*ReleaseResponse) + if !ok { + that2, ok := that.(ReleaseResponse) + if ok { + that1 = &that2 + } else { + return false + } + } + + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + + return true +} +func (x *ReleaseResponse) ToProto() *ProtoReleaseResponse { + if x == nil { + return nil + } + + proto := &ProtoReleaseResponse{} + return proto +} + +func (x *ProtoReleaseResponse) FromProto() *ReleaseResponse { + if x == nil { + return nil + } + + copysafe := &ReleaseResponse{} + return copysafe +} + +func ReleaseResponseToProtoSlice(values []*ReleaseResponse) []*ProtoReleaseResponse { + if values == nil { + return nil + } + result := make([]*ProtoReleaseResponse, len(values)) + for i, val := range values { + result[i] = val.ToProto() + } + return result +} + +func ReleaseResponseFromProtoSlice(values []*ProtoReleaseResponse) []*ReleaseResponse { + if values == nil { + return nil + } + result := make([]*ReleaseResponse, len(values)) + for i, val := range values { + result[i] = val.FromProto() + } + return result +} + +// Prevent copylock errors when using ProtoFetchRequest directly +type FetchRequest struct { + Key string `json:"key,omitempty"` +} + +func (this *FetchRequest) Equal(that interface{}) bool { + + if that == nil { + return this == nil + } + + that1, ok := that.(*FetchRequest) + if !ok { + that2, ok := that.(FetchRequest) + if ok { + that1 = &that2 + } else { + return false + } + } + + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + + if this.Key != that1.Key { + return false + } + return true +} +func (m *FetchRequest) GetKey() string { + if m != nil { + return m.Key + } + var defaultValue string + defaultValue = "" + return defaultValue +} +func (m *FetchRequest) SetKey(value string) { + if m != nil { + m.Key = value + } +} +func (x *FetchRequest) ToProto() *ProtoFetchRequest { + if x == nil { + return nil + } + + proto := &ProtoFetchRequest{ + Key: x.Key, + } + return proto +} + +func (x *ProtoFetchRequest) FromProto() *FetchRequest { + if x == nil { + return nil + } + + copysafe := &FetchRequest{ + Key: x.Key, + } + return copysafe +} + +func FetchRequestToProtoSlice(values []*FetchRequest) []*ProtoFetchRequest { + if values == nil { + return nil + } + result := make([]*ProtoFetchRequest, len(values)) + for i, val := range values { + result[i] = val.ToProto() + } + return result +} + +func FetchRequestFromProtoSlice(values []*ProtoFetchRequest) []*FetchRequest { + if values == nil { + return nil + } + result := make([]*FetchRequest, len(values)) + for i, val := range values { + result[i] = val.FromProto() + } + return result +} + +// Prevent copylock errors when using ProtoFetchResponse directly +type FetchResponse struct { + Resource *Resource `json:"resource,omitempty"` +} + +func (this *FetchResponse) Equal(that interface{}) bool { + + if that == nil { + return this == nil + } + + that1, ok := that.(*FetchResponse) + if !ok { + that2, ok := that.(FetchResponse) + if ok { + that1 = &that2 + } else { + return false + } + } + + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + + if this.Resource == nil { + if that1.Resource != nil { + return false + } + } else if !this.Resource.Equal(*that1.Resource) { + return false + } + return true +} +func (m *FetchResponse) GetResource() *Resource { + if m != nil { + return m.Resource + } + return nil +} +func (m *FetchResponse) SetResource(value *Resource) { + if m != nil { + m.Resource = value + } +} +func (x *FetchResponse) ToProto() *ProtoFetchResponse { + if x == nil { + return nil + } + + proto := &ProtoFetchResponse{ + Resource: x.Resource.ToProto(), + } + return proto +} + +func (x *ProtoFetchResponse) FromProto() *FetchResponse { + if x == nil { + return nil + } + + copysafe := &FetchResponse{ + Resource: x.Resource.FromProto(), + } + return copysafe +} + +func FetchResponseToProtoSlice(values []*FetchResponse) []*ProtoFetchResponse { + if values == nil { + return nil + } + result := make([]*ProtoFetchResponse, len(values)) + for i, val := range values { + result[i] = val.ToProto() + } + return result +} + +func FetchResponseFromProtoSlice(values []*ProtoFetchResponse) []*FetchResponse { + if values == nil { + return nil + } + result := make([]*FetchResponse, len(values)) + for i, val := range values { + result[i] = val.FromProto() + } + return result +} + +// Prevent copylock errors when using ProtoFetchAllRequest directly +type FetchAllRequest struct { + // Deprecated: marked deprecated in locket.proto + Type string `json:"type,omitempty"` + TypeCode TypeCode `json:"typeCode,omitempty"` +} + +func (this *FetchAllRequest) Equal(that interface{}) bool { + + if that == nil { + return this == nil + } + + that1, ok := that.(*FetchAllRequest) + if !ok { + that2, ok := that.(FetchAllRequest) + if ok { + that1 = &that2 + } else { + return false + } + } + + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + + if this.Type != that1.Type { + return false + } + if this.TypeCode != that1.TypeCode { + return false + } + return true +} + +// Deprecated: marked deprecated in locket.proto +func (m *FetchAllRequest) GetType() string { + if m != nil { + return m.Type + } + var defaultValue string + defaultValue = "" + return defaultValue +} + +// Deprecated: marked deprecated in locket.proto +func (m *FetchAllRequest) SetType(value string) { + if m != nil { + m.Type = value + } +} +func (m *FetchAllRequest) GetTypeCode() TypeCode { + if m != nil { + return m.TypeCode + } + var defaultValue TypeCode + defaultValue = 0 + return defaultValue +} +func (m *FetchAllRequest) SetTypeCode(value TypeCode) { + if m != nil { + m.TypeCode = value + } +} +func (x *FetchAllRequest) ToProto() *ProtoFetchAllRequest { + if x == nil { + return nil + } + + proto := &ProtoFetchAllRequest{ + Type: x.Type, + TypeCode: ProtoTypeCode(x.TypeCode), + } + return proto +} + +func (x *ProtoFetchAllRequest) FromProto() *FetchAllRequest { + if x == nil { + return nil + } + + copysafe := &FetchAllRequest{ + Type: x.Type, + TypeCode: TypeCode(x.TypeCode), + } + return copysafe +} + +func FetchAllRequestToProtoSlice(values []*FetchAllRequest) []*ProtoFetchAllRequest { + if values == nil { + return nil + } + result := make([]*ProtoFetchAllRequest, len(values)) + for i, val := range values { + result[i] = val.ToProto() + } + return result +} + +func FetchAllRequestFromProtoSlice(values []*ProtoFetchAllRequest) []*FetchAllRequest { + if values == nil { + return nil + } + result := make([]*FetchAllRequest, len(values)) + for i, val := range values { + result[i] = val.FromProto() + } + return result +} + +// Prevent copylock errors when using ProtoFetchAllResponse directly +type FetchAllResponse struct { + Resources []*Resource `json:"resources,omitempty"` +} + +func (this *FetchAllResponse) Equal(that interface{}) bool { + + if that == nil { + return this == nil + } + + that1, ok := that.(*FetchAllResponse) + if !ok { + that2, ok := that.(FetchAllResponse) + if ok { + that1 = &that2 + } else { + return false + } + } + + if that1 == nil { + return this == nil + } else if this == nil { + return false + } + + if this.Resources == nil { + if that1.Resources != nil { + return false + } + } else if len(this.Resources) != len(that1.Resources) { + return false + } + for i := range this.Resources { + if !this.Resources[i].Equal(that1.Resources[i]) { + return false + } + } + return true +} +func (m *FetchAllResponse) GetResources() []*Resource { + if m != nil { + return m.Resources + } + return nil +} +func (m *FetchAllResponse) SetResources(value []*Resource) { + if m != nil { + m.Resources = value + } +} +func (x *FetchAllResponse) ToProto() *ProtoFetchAllResponse { + if x == nil { + return nil + } + + proto := &ProtoFetchAllResponse{ + Resources: ResourceToProtoSlice(x.Resources), + } + return proto +} + +func (x *ProtoFetchAllResponse) FromProto() *FetchAllResponse { + if x == nil { + return nil + } + + copysafe := &FetchAllResponse{ + Resources: ResourceFromProtoSlice(x.Resources), + } + return copysafe +} + +func FetchAllResponseToProtoSlice(values []*FetchAllResponse) []*ProtoFetchAllResponse { + if values == nil { + return nil + } + result := make([]*ProtoFetchAllResponse, len(values)) + for i, val := range values { + result[i] = val.ToProto() + } + return result +} + +func FetchAllResponseFromProtoSlice(values []*ProtoFetchAllResponse) []*FetchAllResponse { + if values == nil { + return nil + } + result := make([]*FetchAllResponse, len(values)) + for i, val := range values { + result[i] = val.FromProto() + } + return result +} diff --git a/models/locket_bbs_grpc.pb.go b/models/locket_bbs_grpc.pb.go new file mode 100644 index 0000000..1b40b35 --- /dev/null +++ b/models/locket_bbs_grpc.pb.go @@ -0,0 +1,252 @@ +// Code generated by protoc-gen-go-bbs. DO NOT EDIT. +// versions: +// - protoc-gen-go-bbs v0.0.1 +// - protoc-gen-go-grpc TODO: get version +// - protoc v6.31.1 +// source: locket.proto + +package models + +import ( + context "context" + grpc "google.golang.org/grpc" + codes "google.golang.org/grpc/codes" + status "google.golang.org/grpc/status" +) + +// This is a compile-time assertion to ensure that this generated file +// is compatible with the grpc package it is being compiled against. +// Requires gRPC-Go v1.64.0 or later. +const _ = grpc.SupportPackageIsVersion9 + +const ( + Locket_Lock_FullMethodName = "/models.Locket/Lock" + Locket_Fetch_FullMethodName = "/models.Locket/Fetch" + Locket_Release_FullMethodName = "/models.Locket/Release" + Locket_FetchAll_FullMethodName = "/models.Locket/FetchAll" +) + +// LocketClient is the client API for Locket service. +// +// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream. +type LocketClient interface { + Lock(ctx context.Context, in *LockRequest, opts ...grpc.CallOption) (*LockResponse, error) + Fetch(ctx context.Context, in *FetchRequest, opts ...grpc.CallOption) (*FetchResponse, error) + Release(ctx context.Context, in *ReleaseRequest, opts ...grpc.CallOption) (*ReleaseResponse, error) + FetchAll(ctx context.Context, in *FetchAllRequest, opts ...grpc.CallOption) (*FetchAllResponse, error) +} + +type locketClient struct { + cc grpc.ClientConnInterface +} + +func NewLocketClient(cc grpc.ClientConnInterface) LocketClient { + return &locketClient{cc} +} + +func (c *locketClient) Lock(ctx context.Context, in *LockRequest, opts ...grpc.CallOption) (*LockResponse, error) { + cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) + out := new(ProtoLockResponse) + protoIn := in.ToProto() + err := c.cc.Invoke(ctx, Locket_Lock_FullMethodName, protoIn, out, cOpts...) + if err != nil { + return nil, err + } + return out.FromProto(), nil +} + +func (c *locketClient) Fetch(ctx context.Context, in *FetchRequest, opts ...grpc.CallOption) (*FetchResponse, error) { + cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) + out := new(ProtoFetchResponse) + protoIn := in.ToProto() + err := c.cc.Invoke(ctx, Locket_Fetch_FullMethodName, protoIn, out, cOpts...) + if err != nil { + return nil, err + } + return out.FromProto(), nil +} + +func (c *locketClient) Release(ctx context.Context, in *ReleaseRequest, opts ...grpc.CallOption) (*ReleaseResponse, error) { + cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) + out := new(ProtoReleaseResponse) + protoIn := in.ToProto() + err := c.cc.Invoke(ctx, Locket_Release_FullMethodName, protoIn, out, cOpts...) + if err != nil { + return nil, err + } + return out.FromProto(), nil +} + +func (c *locketClient) FetchAll(ctx context.Context, in *FetchAllRequest, opts ...grpc.CallOption) (*FetchAllResponse, error) { + cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) + out := new(ProtoFetchAllResponse) + protoIn := in.ToProto() + err := c.cc.Invoke(ctx, Locket_FetchAll_FullMethodName, protoIn, out, cOpts...) + if err != nil { + return nil, err + } + return out.FromProto(), nil +} + +type LocketServer interface { + Lock(context.Context, *LockRequest) (*LockResponse, error) + Fetch(context.Context, *FetchRequest) (*FetchResponse, error) + Release(context.Context, *ReleaseRequest) (*ReleaseResponse, error) + FetchAll(context.Context, *FetchAllRequest) (*FetchAllResponse, error) + mustEmbedUnimplementedLocketServer() +} + +// UnimplementedLocketServer must be embedded to have +// forward compatible implementations. +// +// NOTE: this should be embedded by value instead of pointer to avoid a nil +// pointer dereference when methods are called. +type UnimplementedLocketServer struct{} + +func (UnimplementedLocketServer) Lock(context.Context, *LockRequest) (*LockResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method Lock not implemented") +} +func (UnimplementedLocketServer) Fetch(context.Context, *FetchRequest) (*FetchResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method Fetch not implemented") +} +func (UnimplementedLocketServer) Release(context.Context, *ReleaseRequest) (*ReleaseResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method Release not implemented") +} +func (UnimplementedLocketServer) FetchAll(context.Context, *FetchAllRequest) (*FetchAllResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method FetchAll not implemented") +} +func (UnimplementedLocketServer) mustEmbedUnimplementedLocketServer() {} +func (UnimplementedLocketServer) testEmbeddedByValue() {} + +// UnsafeLocketServer may be embedded to opt out of forward compatibility for this service. +// Use of this interface is not recommended, as added methods to LocketServer will +// result in compilation errors. +type UnsafeLocketServer interface { + mustEmbedUnimplementedLocketServer() +} + +func RegisterLocketServer(s grpc.ServiceRegistrar, srv LocketServer) { + // If the following call panics, it indicates UnimplementedLocketServer was + // embedded by pointer and is nil. This will cause panics if an + // unimplemented method is ever invoked, so we test this at initialization + // time to prevent it from happening at runtime later due to I/O. + if t, ok := srv.(interface{ testEmbeddedByValue() }); ok { + t.testEmbeddedByValue() + } + s.RegisterService(&Locket_ServiceDesc, srv) +} + +func _Locket_Lock_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + protoIn := new(ProtoLockRequest) + if err := dec(protoIn); err != nil { + return nil, err + } + in := protoIn.FromProto() + + if interceptor == nil { + response, err := srv.(LocketServer).Lock(ctx, in) + return response.ToProto(), err + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: Locket_Lock_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + response, err := srv.(LocketServer).Lock(ctx, req.(*LockRequest)) + return response.ToProto(), err + } + return interceptor(ctx, in, info, handler) +} + +func _Locket_Fetch_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + protoIn := new(ProtoFetchRequest) + if err := dec(protoIn); err != nil { + return nil, err + } + in := protoIn.FromProto() + + if interceptor == nil { + response, err := srv.(LocketServer).Fetch(ctx, in) + return response.ToProto(), err + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: Locket_Fetch_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + response, err := srv.(LocketServer).Fetch(ctx, req.(*FetchRequest)) + return response.ToProto(), err + } + return interceptor(ctx, in, info, handler) +} + +func _Locket_Release_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + protoIn := new(ProtoReleaseRequest) + if err := dec(protoIn); err != nil { + return nil, err + } + in := protoIn.FromProto() + + if interceptor == nil { + response, err := srv.(LocketServer).Release(ctx, in) + return response.ToProto(), err + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: Locket_Release_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + response, err := srv.(LocketServer).Release(ctx, req.(*ReleaseRequest)) + return response.ToProto(), err + } + return interceptor(ctx, in, info, handler) +} + +func _Locket_FetchAll_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + protoIn := new(ProtoFetchAllRequest) + if err := dec(protoIn); err != nil { + return nil, err + } + in := protoIn.FromProto() + + if interceptor == nil { + response, err := srv.(LocketServer).FetchAll(ctx, in) + return response.ToProto(), err + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: Locket_FetchAll_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + response, err := srv.(LocketServer).FetchAll(ctx, req.(*FetchAllRequest)) + return response.ToProto(), err + } + return interceptor(ctx, in, info, handler) +} + +// Locket_ServiceDesc is the grpc.ServiceDesc for Locket service. +// It's only intended for direct use with grpc.RegisterService, +// and not to be introspected or modified (even as a copy) +var Locket_ServiceDesc = grpc.ServiceDesc{ + ServiceName: "models.Locket", + HandlerType: (*LocketServer)(nil), + Methods: []grpc.MethodDesc{ + { + MethodName: "Lock", + Handler: _Locket_Lock_Handler, + }, + { + MethodName: "Fetch", + Handler: _Locket_Fetch_Handler, + }, + { + MethodName: "Release", + Handler: _Locket_Release_Handler, + }, + { + MethodName: "FetchAll", + Handler: _Locket_FetchAll_Handler, + }}, + Streams: []grpc.StreamDesc{}, + Metadata: "locket.proto", +} diff --git a/models/locket_grpc.pb.go b/models/locket_grpc.pb.go new file mode 100644 index 0000000..7b7f994 --- /dev/null +++ b/models/locket_grpc.pb.go @@ -0,0 +1,235 @@ +// Code generated by protoc-gen-go-grpc. DO NOT EDIT. +// versions: +// - protoc-gen-go-grpc v1.5.1 +// - protoc v6.31.1 +// source: locket.proto + +package models + +import ( + context "context" + grpc "google.golang.org/grpc" + codes "google.golang.org/grpc/codes" + status "google.golang.org/grpc/status" +) + +// This is a compile-time assertion to ensure that this generated file +// is compatible with the grpc package it is being compiled against. +// Requires gRPC-Go v1.64.0 or later. +const _ = grpc.SupportPackageIsVersion9 + +const ( + ProtoLocket_ProtoLock_FullMethodName = "/models.ProtoLocket/ProtoLock" + ProtoLocket_ProtoFetch_FullMethodName = "/models.ProtoLocket/ProtoFetch" + ProtoLocket_ProtoRelease_FullMethodName = "/models.ProtoLocket/ProtoRelease" + ProtoLocket_ProtoFetchAll_FullMethodName = "/models.ProtoLocket/ProtoFetchAll" +) + +// ProtoLocketClient is the client API for ProtoLocket service. +// +// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream. +type ProtoLocketClient interface { + ProtoLock(ctx context.Context, in *ProtoLockRequest, opts ...grpc.CallOption) (*ProtoLockResponse, error) + ProtoFetch(ctx context.Context, in *ProtoFetchRequest, opts ...grpc.CallOption) (*ProtoFetchResponse, error) + ProtoRelease(ctx context.Context, in *ProtoReleaseRequest, opts ...grpc.CallOption) (*ProtoReleaseResponse, error) + ProtoFetchAll(ctx context.Context, in *ProtoFetchAllRequest, opts ...grpc.CallOption) (*ProtoFetchAllResponse, error) +} + +type protoLocketClient struct { + cc grpc.ClientConnInterface +} + +func NewProtoLocketClient(cc grpc.ClientConnInterface) ProtoLocketClient { + return &protoLocketClient{cc} +} + +func (c *protoLocketClient) ProtoLock(ctx context.Context, in *ProtoLockRequest, opts ...grpc.CallOption) (*ProtoLockResponse, error) { + cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) + out := new(ProtoLockResponse) + err := c.cc.Invoke(ctx, ProtoLocket_ProtoLock_FullMethodName, in, out, cOpts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *protoLocketClient) ProtoFetch(ctx context.Context, in *ProtoFetchRequest, opts ...grpc.CallOption) (*ProtoFetchResponse, error) { + cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) + out := new(ProtoFetchResponse) + err := c.cc.Invoke(ctx, ProtoLocket_ProtoFetch_FullMethodName, in, out, cOpts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *protoLocketClient) ProtoRelease(ctx context.Context, in *ProtoReleaseRequest, opts ...grpc.CallOption) (*ProtoReleaseResponse, error) { + cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) + out := new(ProtoReleaseResponse) + err := c.cc.Invoke(ctx, ProtoLocket_ProtoRelease_FullMethodName, in, out, cOpts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *protoLocketClient) ProtoFetchAll(ctx context.Context, in *ProtoFetchAllRequest, opts ...grpc.CallOption) (*ProtoFetchAllResponse, error) { + cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) + out := new(ProtoFetchAllResponse) + err := c.cc.Invoke(ctx, ProtoLocket_ProtoFetchAll_FullMethodName, in, out, cOpts...) + if err != nil { + return nil, err + } + return out, nil +} + +// ProtoLocketServer is the server API for ProtoLocket service. +// All implementations must embed UnimplementedProtoLocketServer +// for forward compatibility. +type ProtoLocketServer interface { + ProtoLock(context.Context, *ProtoLockRequest) (*ProtoLockResponse, error) + ProtoFetch(context.Context, *ProtoFetchRequest) (*ProtoFetchResponse, error) + ProtoRelease(context.Context, *ProtoReleaseRequest) (*ProtoReleaseResponse, error) + ProtoFetchAll(context.Context, *ProtoFetchAllRequest) (*ProtoFetchAllResponse, error) + mustEmbedUnimplementedProtoLocketServer() +} + +// UnimplementedProtoLocketServer must be embedded to have +// forward compatible implementations. +// +// NOTE: this should be embedded by value instead of pointer to avoid a nil +// pointer dereference when methods are called. +type UnimplementedProtoLocketServer struct{} + +func (UnimplementedProtoLocketServer) ProtoLock(context.Context, *ProtoLockRequest) (*ProtoLockResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method ProtoLock not implemented") +} +func (UnimplementedProtoLocketServer) ProtoFetch(context.Context, *ProtoFetchRequest) (*ProtoFetchResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method ProtoFetch not implemented") +} +func (UnimplementedProtoLocketServer) ProtoRelease(context.Context, *ProtoReleaseRequest) (*ProtoReleaseResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method ProtoRelease not implemented") +} +func (UnimplementedProtoLocketServer) ProtoFetchAll(context.Context, *ProtoFetchAllRequest) (*ProtoFetchAllResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method ProtoFetchAll not implemented") +} +func (UnimplementedProtoLocketServer) mustEmbedUnimplementedProtoLocketServer() {} +func (UnimplementedProtoLocketServer) testEmbeddedByValue() {} + +// UnsafeProtoLocketServer may be embedded to opt out of forward compatibility for this service. +// Use of this interface is not recommended, as added methods to ProtoLocketServer will +// result in compilation errors. +type UnsafeProtoLocketServer interface { + mustEmbedUnimplementedProtoLocketServer() +} + +func RegisterProtoLocketServer(s grpc.ServiceRegistrar, srv ProtoLocketServer) { + // If the following call pancis, it indicates UnimplementedProtoLocketServer was + // embedded by pointer and is nil. This will cause panics if an + // unimplemented method is ever invoked, so we test this at initialization + // time to prevent it from happening at runtime later due to I/O. + if t, ok := srv.(interface{ testEmbeddedByValue() }); ok { + t.testEmbeddedByValue() + } + s.RegisterService(&ProtoLocket_ServiceDesc, srv) +} + +func _ProtoLocket_ProtoLock_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(ProtoLockRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(ProtoLocketServer).ProtoLock(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: ProtoLocket_ProtoLock_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(ProtoLocketServer).ProtoLock(ctx, req.(*ProtoLockRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _ProtoLocket_ProtoFetch_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(ProtoFetchRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(ProtoLocketServer).ProtoFetch(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: ProtoLocket_ProtoFetch_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(ProtoLocketServer).ProtoFetch(ctx, req.(*ProtoFetchRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _ProtoLocket_ProtoRelease_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(ProtoReleaseRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(ProtoLocketServer).ProtoRelease(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: ProtoLocket_ProtoRelease_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(ProtoLocketServer).ProtoRelease(ctx, req.(*ProtoReleaseRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _ProtoLocket_ProtoFetchAll_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(ProtoFetchAllRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(ProtoLocketServer).ProtoFetchAll(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: ProtoLocket_ProtoFetchAll_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(ProtoLocketServer).ProtoFetchAll(ctx, req.(*ProtoFetchAllRequest)) + } + return interceptor(ctx, in, info, handler) +} + +// ProtoLocket_ServiceDesc is the grpc.ServiceDesc for ProtoLocket service. +// It's only intended for direct use with grpc.RegisterService, +// and not to be introspected or modified (even as a copy) +var ProtoLocket_ServiceDesc = grpc.ServiceDesc{ + ServiceName: "models.ProtoLocket", + HandlerType: (*ProtoLocketServer)(nil), + Methods: []grpc.MethodDesc{ + { + MethodName: "ProtoLock", + Handler: _ProtoLocket_ProtoLock_Handler, + }, + { + MethodName: "ProtoFetch", + Handler: _ProtoLocket_ProtoFetch_Handler, + }, + { + MethodName: "ProtoRelease", + Handler: _ProtoLocket_ProtoRelease_Handler, + }, + { + MethodName: "ProtoFetchAll", + Handler: _ProtoLocket_ProtoFetchAll_Handler, + }, + }, + Streams: []grpc.StreamDesc{}, + Metadata: "locket.proto", +} diff --git a/scripts/generate_protos.sh b/scripts/generate_protos.sh index 5e0f7e0..b0a0e9a 100755 --- a/scripts/generate_protos.sh +++ b/scripts/generate_protos.sh @@ -1,5 +1,9 @@ set -e DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" &> /dev/null && pwd )" pushd "$DIR/../models" -protoc --proto_path=../../vendor:../../vendor/github.com/golang/protobuf/ptypes/duration/:. --gogoslick_out=plugins=grpc:. *.proto +protoc --proto_path=../../bbs/protoc-gen-go-bbs:../../vendor:../../vendor/google.golang.org/protobuf/types/known/durationpb/:. \ + --go_out=. --go_opt=paths=source_relative \ + --go-bbs_out=. --go-bbs_opt=paths=source_relative \ + --go-grpc_out=. --go-grpc_opt=paths=source_relative \ + ./*.proto popd