diff --git a/Cargo.toml b/Cargo.toml index 4602d54f4c..d458530ef6 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,7 +1,7 @@ [workspace] resolver = "2" -members = ["packages/common/api-helper/build","packages/common/api-helper/macros","packages/common/cache/build","packages/common/cache/result","packages/common/chirp-workflow/core","packages/common/chirp-workflow/macros","packages/common/chirp/client","packages/common/chirp/metrics","packages/common/chirp/perf","packages/common/chirp/types","packages/common/chirp/worker","packages/common/chirp/worker-attributes","packages/common/claims","packages/common/clickhouse-inserter","packages/common/clickhouse-user-query","packages/common/config","packages/common/connection","packages/common/convert","packages/common/deno-embed","packages/common/env","packages/common/fdb-util","packages/common/formatted-error","packages/common/global-error","packages/common/health-checks","packages/common/kv-str","packages/common/logs","packages/common/metrics","packages/common/migrate","packages/common/nomad-util","packages/common/operation/core","packages/common/operation/macros","packages/common/pools","packages/common/redis-util","packages/common/runtime","packages/common/s3-util","packages/common/schemac","packages/common/server-cli","packages/common/service-discovery","packages/common/service-manager","packages/common/smithy-output/api-auth/rust","packages/common/smithy-output/api-auth/rust-server","packages/common/smithy-output/api-cf-verification/rust","packages/common/smithy-output/api-cf-verification/rust-server","packages/common/smithy-output/api-cloud/rust","packages/common/smithy-output/api-cloud/rust-server","packages/common/smithy-output/api-group/rust","packages/common/smithy-output/api-group/rust-server","packages/common/smithy-output/api-identity/rust","packages/common/smithy-output/api-identity/rust-server","packages/common/smithy-output/api-job/rust","packages/common/smithy-output/api-job/rust-server","packages/common/smithy-output/api-kv/rust","packages/common/smithy-output/api-kv/rust-server","packages/common/smithy-output/api-matchmaker/rust","packages/common/smithy-output/api-matchmaker/rust-server","packages/common/smithy-output/api-party/rust","packages/common/smithy-output/api-party/rust-server","packages/common/smithy-output/api-portal/rust","packages/common/smithy-output/api-portal/rust-server","packages/common/smithy-output/api-status/rust","packages/common/smithy-output/api-status/rust-server","packages/common/smithy-output/api-traefik-provider/rust","packages/common/smithy-output/api-traefik-provider/rust-server","packages/common/test","packages/common/test-images","packages/common/types-proto/build","packages/common/types-proto/core","packages/common/util/core","packages/common/util/id","packages/common/util/macros","packages/common/util/search","packages/core/api/actor","packages/core/api/auth","packages/core/api/cf-verification","packages/core/api/cloud","packages/core/api/games","packages/core/api/group","packages/core/api/identity","packages/core/api/intercom","packages/core/api/job","packages/core/api/matchmaker","packages/core/api/monolith-edge","packages/core/api/monolith-public","packages/core/api/portal","packages/core/api/provision","packages/core/api/status","packages/core/api/traefik-provider","packages/core/api/ui","packages/core/infra/legacy/job-runner","packages/core/infra/schema-generator","packages/core/infra/server","packages/core/services/build","packages/core/services/build/ops/create","packages/core/services/build/ops/get","packages/core/services/build/ops/list-for-env","packages/core/services/build/ops/list-for-game","packages/core/services/build/standalone/default-create","packages/core/services/build/util","packages/core/services/captcha/ops/hcaptcha-config-get","packages/core/services/captcha/ops/hcaptcha-verify","packages/core/services/captcha/ops/request","packages/core/services/captcha/ops/turnstile-config-get","packages/core/services/captcha/ops/turnstile-verify","packages/core/services/captcha/ops/verify","packages/core/services/captcha/util","packages/core/services/cdn/ops/namespace-auth-user-remove","packages/core/services/cdn/ops/namespace-auth-user-update","packages/core/services/cdn/ops/namespace-create","packages/core/services/cdn/ops/namespace-domain-create","packages/core/services/cdn/ops/namespace-domain-remove","packages/core/services/cdn/ops/namespace-get","packages/core/services/cdn/ops/namespace-resolve-domain","packages/core/services/cdn/ops/ns-auth-type-set","packages/core/services/cdn/ops/ns-enable-domain-public-auth-set","packages/core/services/cdn/ops/site-create","packages/core/services/cdn/ops/site-get","packages/core/services/cdn/ops/site-list-for-game","packages/core/services/cdn/ops/version-get","packages/core/services/cdn/ops/version-prepare","packages/core/services/cdn/ops/version-publish","packages/core/services/cdn/util","packages/core/services/cdn/worker","packages/core/services/cf-custom-hostname/ops/get","packages/core/services/cf-custom-hostname/ops/list-for-namespace-id","packages/core/services/cf-custom-hostname/ops/resolve-hostname","packages/core/services/cf-custom-hostname/worker","packages/core/services/cloud/ops/device-link-create","packages/core/services/cloud/ops/game-config-create","packages/core/services/cloud/ops/game-config-get","packages/core/services/cloud/ops/game-token-create","packages/core/services/cloud/ops/namespace-create","packages/core/services/cloud/ops/namespace-get","packages/core/services/cloud/ops/namespace-token-development-create","packages/core/services/cloud/ops/namespace-token-public-create","packages/core/services/cloud/ops/version-get","packages/core/services/cloud/ops/version-publish","packages/core/services/cloud/standalone/default-create","packages/core/services/cloud/worker","packages/core/services/cluster","packages/core/services/cluster/standalone/datacenter-tls-renew","packages/core/services/cluster/standalone/default-update","packages/core/services/cluster/standalone/gc","packages/core/services/cluster/standalone/metrics-publish","packages/core/services/custom-user-avatar/ops/list-for-game","packages/core/services/custom-user-avatar/ops/upload-complete","packages/core/services/debug/ops/email-res","packages/core/services/dynamic-config","packages/core/services/email-verification/ops/complete","packages/core/services/email-verification/ops/create","packages/core/services/email/ops/send","packages/core/services/external/ops/request-validate","packages/core/services/external/worker","packages/core/services/faker/ops/build","packages/core/services/faker/ops/cdn-site","packages/core/services/faker/ops/game","packages/core/services/faker/ops/game-namespace","packages/core/services/faker/ops/game-version","packages/core/services/faker/ops/job-run","packages/core/services/faker/ops/job-template","packages/core/services/faker/ops/mm-lobby","packages/core/services/faker/ops/mm-lobby-row","packages/core/services/faker/ops/mm-player","packages/core/services/faker/ops/region","packages/core/services/faker/ops/team","packages/core/services/faker/ops/user","packages/core/services/game/ops/banner-upload-complete","packages/core/services/game/ops/create","packages/core/services/game/ops/get","packages/core/services/game/ops/list-all","packages/core/services/game/ops/list-for-team","packages/core/services/game/ops/logo-upload-complete","packages/core/services/game/ops/namespace-create","packages/core/services/game/ops/namespace-get","packages/core/services/game/ops/namespace-list","packages/core/services/game/ops/namespace-resolve-name-id","packages/core/services/game/ops/namespace-resolve-url","packages/core/services/game/ops/namespace-validate","packages/core/services/game/ops/namespace-version-history-list","packages/core/services/game/ops/namespace-version-set","packages/core/services/game/ops/recommend","packages/core/services/game/ops/resolve-name-id","packages/core/services/game/ops/resolve-namespace-id","packages/core/services/game/ops/token-development-validate","packages/core/services/game/ops/validate","packages/core/services/game/ops/version-create","packages/core/services/game/ops/version-get","packages/core/services/game/ops/version-list","packages/core/services/game/ops/version-validate","packages/core/services/ip/ops/info","packages/core/services/job-log/ops/read","packages/core/services/job-log/worker","packages/core/services/job-run","packages/core/services/job/standalone/gc","packages/core/services/job/util","packages/core/services/linode","packages/core/services/linode/standalone/gc","packages/core/services/load-test/standalone/api-cloud","packages/core/services/load-test/standalone/mm","packages/core/services/load-test/standalone/mm-sustain","packages/core/services/load-test/standalone/sqlx","packages/core/services/load-test/standalone/watch-requests","packages/core/services/mm-config/ops/game-get","packages/core/services/mm-config/ops/game-upsert","packages/core/services/mm-config/ops/lobby-group-get","packages/core/services/mm-config/ops/lobby-group-resolve-name-id","packages/core/services/mm-config/ops/lobby-group-resolve-version","packages/core/services/mm-config/ops/namespace-config-set","packages/core/services/mm-config/ops/namespace-config-validate","packages/core/services/mm-config/ops/namespace-create","packages/core/services/mm-config/ops/namespace-get","packages/core/services/mm-config/ops/version-get","packages/core/services/mm-config/ops/version-prepare","packages/core/services/mm-config/ops/version-publish","packages/core/services/mm/ops/dev-player-token-create","packages/core/services/mm/ops/lobby-find-fail","packages/core/services/mm/ops/lobby-find-lobby-query-list","packages/core/services/mm/ops/lobby-find-try-complete","packages/core/services/mm/ops/lobby-for-run-id","packages/core/services/mm/ops/lobby-get","packages/core/services/mm/ops/lobby-history","packages/core/services/mm/ops/lobby-idle-update","packages/core/services/mm/ops/lobby-list-for-namespace","packages/core/services/mm/ops/lobby-list-for-user-id","packages/core/services/mm/ops/lobby-player-count","packages/core/services/mm/ops/lobby-runtime-aggregate","packages/core/services/mm/ops/lobby-state-get","packages/core/services/mm/ops/player-count-for-namespace","packages/core/services/mm/ops/player-get","packages/core/services/mm/standalone/gc","packages/core/services/mm/util","packages/core/services/mm/worker","packages/core/services/monolith/standalone/worker","packages/core/services/monolith/standalone/workflow-worker","packages/core/services/nomad/standalone/monitor","packages/core/services/region/ops/get","packages/core/services/region/ops/list","packages/core/services/region/ops/list-for-game","packages/core/services/region/ops/recommend","packages/core/services/region/ops/resolve","packages/core/services/region/ops/resolve-for-game","packages/core/services/route","packages/core/services/server-spec","packages/core/services/team-invite/ops/get","packages/core/services/team-invite/worker","packages/core/services/team/ops/avatar-upload-complete","packages/core/services/team/ops/get","packages/core/services/team/ops/join-request-list","packages/core/services/team/ops/member-count","packages/core/services/team/ops/member-get","packages/core/services/team/ops/member-list","packages/core/services/team/ops/member-relationship-get","packages/core/services/team/ops/profile-validate","packages/core/services/team/ops/recommend","packages/core/services/team/ops/resolve-display-name","packages/core/services/team/ops/user-ban-get","packages/core/services/team/ops/user-ban-list","packages/core/services/team/ops/validate","packages/core/services/team/util","packages/core/services/team/worker","packages/core/services/telemetry/standalone/beacon","packages/core/services/tier","packages/core/services/token/ops/create","packages/core/services/token/ops/exchange","packages/core/services/token/ops/get","packages/core/services/token/ops/revoke","packages/core/services/upload/ops/complete","packages/core/services/upload/ops/file-list","packages/core/services/upload/ops/get","packages/core/services/upload/ops/list-for-user","packages/core/services/upload/ops/prepare","packages/core/services/upload/worker","packages/core/services/user","packages/core/services/user-identity/ops/create","packages/core/services/user-identity/ops/delete","packages/core/services/user-identity/ops/get","packages/core/services/user/ops/avatar-upload-complete","packages/core/services/user/ops/get","packages/core/services/user/ops/pending-delete-toggle","packages/core/services/user/ops/profile-validate","packages/core/services/user/ops/resolve-email","packages/core/services/user/ops/team-list","packages/core/services/user/ops/token-create","packages/core/services/user/standalone/delete-pending","packages/core/services/user/worker","packages/edge/api/actor","packages/edge/api/intercom","packages/edge/api/monolith-edge","packages/edge/api/monolith-public","packages/edge/api/traefik-provider","packages/edge/infra/client/actor-kv","packages/edge/infra/client/config","packages/edge/infra/client/container-runner","packages/edge/infra/client/echo","packages/edge/infra/client/manager","packages/edge/infra/edge-server","packages/edge/infra/guard/core","packages/edge/infra/guard/server","packages/edge/services/monolith/standalone/workflow-worker","packages/edge/services/pegboard","packages/edge/services/pegboard/standalone/usage-metrics-publish","packages/edge/services/pegboard/standalone/ws","packages/toolchain/cli","packages/toolchain/js-utils-embed","packages/toolchain/toolchain","sdks/api/full/rust"] +members = ["packages/common/api-helper/build","packages/common/api-helper/macros","packages/common/cache/build","packages/common/cache/result","packages/common/chirp-workflow/core","packages/common/chirp-workflow/macros","packages/common/chirp/client","packages/common/chirp/metrics","packages/common/chirp/perf","packages/common/chirp/types","packages/common/chirp/worker","packages/common/chirp/worker-attributes","packages/common/claims","packages/common/clickhouse-inserter","packages/common/clickhouse-user-query","packages/common/config","packages/common/connection","packages/common/convert","packages/common/deno-embed","packages/common/env","packages/common/fdb-util","packages/common/formatted-error","packages/common/global-error","packages/common/health-checks","packages/common/kv-str","packages/common/logs","packages/common/metrics","packages/common/migrate","packages/common/nomad-util","packages/common/operation/core","packages/common/operation/macros","packages/common/pools","packages/common/redis-util","packages/common/runtime","packages/common/s3-util","packages/common/schemac","packages/common/server-cli","packages/common/service-discovery","packages/common/service-manager","packages/common/smithy-output/api-auth/rust","packages/common/smithy-output/api-auth/rust-server","packages/common/smithy-output/api-cf-verification/rust","packages/common/smithy-output/api-cf-verification/rust-server","packages/common/smithy-output/api-cloud/rust","packages/common/smithy-output/api-cloud/rust-server","packages/common/smithy-output/api-group/rust","packages/common/smithy-output/api-group/rust-server","packages/common/smithy-output/api-identity/rust","packages/common/smithy-output/api-identity/rust-server","packages/common/smithy-output/api-job/rust","packages/common/smithy-output/api-job/rust-server","packages/common/smithy-output/api-kv/rust","packages/common/smithy-output/api-kv/rust-server","packages/common/smithy-output/api-matchmaker/rust","packages/common/smithy-output/api-matchmaker/rust-server","packages/common/smithy-output/api-party/rust","packages/common/smithy-output/api-party/rust-server","packages/common/smithy-output/api-portal/rust","packages/common/smithy-output/api-portal/rust-server","packages/common/smithy-output/api-status/rust","packages/common/smithy-output/api-status/rust-server","packages/common/smithy-output/api-traefik-provider/rust","packages/common/smithy-output/api-traefik-provider/rust-server","packages/common/test","packages/common/test-images","packages/common/types-proto/build","packages/common/types-proto/core","packages/common/util/core","packages/common/util/id","packages/common/util/macros","packages/common/util/search","packages/core/api/actor","packages/core/api/auth","packages/core/api/cf-verification","packages/core/api/cloud","packages/core/api/games","packages/core/api/group","packages/core/api/identity","packages/core/api/intercom","packages/core/api/job","packages/core/api/matchmaker","packages/core/api/monolith-edge","packages/core/api/monolith-public","packages/core/api/portal","packages/core/api/provision","packages/core/api/status","packages/core/api/traefik-provider","packages/core/api/ui","packages/core/infra/legacy/job-runner","packages/core/infra/schema-generator","packages/core/infra/server","packages/core/services/build","packages/core/services/build/ops/create","packages/core/services/build/ops/get","packages/core/services/build/ops/list-for-env","packages/core/services/build/ops/list-for-game","packages/core/services/build/standalone/default-create","packages/core/services/build/util","packages/core/services/captcha/ops/hcaptcha-config-get","packages/core/services/captcha/ops/hcaptcha-verify","packages/core/services/captcha/ops/request","packages/core/services/captcha/ops/turnstile-config-get","packages/core/services/captcha/ops/turnstile-verify","packages/core/services/captcha/ops/verify","packages/core/services/captcha/util","packages/core/services/cdn/ops/namespace-auth-user-remove","packages/core/services/cdn/ops/namespace-auth-user-update","packages/core/services/cdn/ops/namespace-create","packages/core/services/cdn/ops/namespace-domain-create","packages/core/services/cdn/ops/namespace-domain-remove","packages/core/services/cdn/ops/namespace-get","packages/core/services/cdn/ops/namespace-resolve-domain","packages/core/services/cdn/ops/ns-auth-type-set","packages/core/services/cdn/ops/ns-enable-domain-public-auth-set","packages/core/services/cdn/ops/site-create","packages/core/services/cdn/ops/site-get","packages/core/services/cdn/ops/site-list-for-game","packages/core/services/cdn/ops/version-get","packages/core/services/cdn/ops/version-prepare","packages/core/services/cdn/ops/version-publish","packages/core/services/cdn/util","packages/core/services/cdn/worker","packages/core/services/cf-custom-hostname/ops/get","packages/core/services/cf-custom-hostname/ops/list-for-namespace-id","packages/core/services/cf-custom-hostname/ops/resolve-hostname","packages/core/services/cf-custom-hostname/worker","packages/core/services/cloud/ops/device-link-create","packages/core/services/cloud/ops/game-config-create","packages/core/services/cloud/ops/game-config-get","packages/core/services/cloud/ops/game-token-create","packages/core/services/cloud/ops/namespace-create","packages/core/services/cloud/ops/namespace-get","packages/core/services/cloud/ops/namespace-token-development-create","packages/core/services/cloud/ops/namespace-token-public-create","packages/core/services/cloud/ops/version-get","packages/core/services/cloud/ops/version-publish","packages/core/services/cloud/standalone/default-create","packages/core/services/cloud/worker","packages/core/services/cluster","packages/core/services/cluster/standalone/datacenter-tls-renew","packages/core/services/cluster/standalone/default-update","packages/core/services/cluster/standalone/gc","packages/core/services/cluster/standalone/metrics-publish","packages/core/services/custom-user-avatar/ops/list-for-game","packages/core/services/custom-user-avatar/ops/upload-complete","packages/core/services/debug/ops/email-res","packages/core/services/dynamic-config","packages/core/services/email-verification/ops/complete","packages/core/services/email-verification/ops/create","packages/core/services/email/ops/send","packages/core/services/external/ops/request-validate","packages/core/services/external/worker","packages/core/services/faker/ops/build","packages/core/services/faker/ops/cdn-site","packages/core/services/faker/ops/game","packages/core/services/faker/ops/game-namespace","packages/core/services/faker/ops/game-version","packages/core/services/faker/ops/job-run","packages/core/services/faker/ops/job-template","packages/core/services/faker/ops/mm-lobby","packages/core/services/faker/ops/mm-lobby-row","packages/core/services/faker/ops/mm-player","packages/core/services/faker/ops/region","packages/core/services/faker/ops/team","packages/core/services/faker/ops/user","packages/core/services/game/ops/banner-upload-complete","packages/core/services/game/ops/create","packages/core/services/game/ops/get","packages/core/services/game/ops/list-all","packages/core/services/game/ops/list-for-team","packages/core/services/game/ops/logo-upload-complete","packages/core/services/game/ops/namespace-create","packages/core/services/game/ops/namespace-get","packages/core/services/game/ops/namespace-list","packages/core/services/game/ops/namespace-resolve-name-id","packages/core/services/game/ops/namespace-resolve-url","packages/core/services/game/ops/namespace-validate","packages/core/services/game/ops/namespace-version-history-list","packages/core/services/game/ops/namespace-version-set","packages/core/services/game/ops/recommend","packages/core/services/game/ops/resolve-name-id","packages/core/services/game/ops/resolve-namespace-id","packages/core/services/game/ops/token-development-validate","packages/core/services/game/ops/validate","packages/core/services/game/ops/version-create","packages/core/services/game/ops/version-get","packages/core/services/game/ops/version-list","packages/core/services/game/ops/version-validate","packages/core/services/ip/ops/info","packages/core/services/job-log/ops/read","packages/core/services/job-log/worker","packages/core/services/job-run","packages/core/services/job/standalone/gc","packages/core/services/job/util","packages/core/services/linode","packages/core/services/linode/standalone/gc","packages/core/services/load-test/standalone/api-cloud","packages/core/services/load-test/standalone/mm","packages/core/services/load-test/standalone/mm-sustain","packages/core/services/load-test/standalone/sqlx","packages/core/services/load-test/standalone/watch-requests","packages/core/services/mm-config/ops/game-get","packages/core/services/mm-config/ops/game-upsert","packages/core/services/mm-config/ops/lobby-group-get","packages/core/services/mm-config/ops/lobby-group-resolve-name-id","packages/core/services/mm-config/ops/lobby-group-resolve-version","packages/core/services/mm-config/ops/namespace-config-set","packages/core/services/mm-config/ops/namespace-config-validate","packages/core/services/mm-config/ops/namespace-create","packages/core/services/mm-config/ops/namespace-get","packages/core/services/mm-config/ops/version-get","packages/core/services/mm-config/ops/version-prepare","packages/core/services/mm-config/ops/version-publish","packages/core/services/mm/ops/dev-player-token-create","packages/core/services/mm/ops/lobby-find-fail","packages/core/services/mm/ops/lobby-find-lobby-query-list","packages/core/services/mm/ops/lobby-find-try-complete","packages/core/services/mm/ops/lobby-for-run-id","packages/core/services/mm/ops/lobby-get","packages/core/services/mm/ops/lobby-history","packages/core/services/mm/ops/lobby-idle-update","packages/core/services/mm/ops/lobby-list-for-namespace","packages/core/services/mm/ops/lobby-list-for-user-id","packages/core/services/mm/ops/lobby-player-count","packages/core/services/mm/ops/lobby-runtime-aggregate","packages/core/services/mm/ops/lobby-state-get","packages/core/services/mm/ops/player-count-for-namespace","packages/core/services/mm/ops/player-get","packages/core/services/mm/standalone/gc","packages/core/services/mm/util","packages/core/services/mm/worker","packages/core/services/monolith/standalone/worker","packages/core/services/monolith/standalone/workflow-worker","packages/core/services/nomad/standalone/monitor","packages/core/services/region/ops/get","packages/core/services/region/ops/list","packages/core/services/region/ops/list-for-game","packages/core/services/region/ops/recommend","packages/core/services/region/ops/resolve","packages/core/services/region/ops/resolve-for-game","packages/core/services/route","packages/core/services/server-spec","packages/core/services/team-invite/ops/get","packages/core/services/team-invite/worker","packages/core/services/team/ops/avatar-upload-complete","packages/core/services/team/ops/get","packages/core/services/team/ops/join-request-list","packages/core/services/team/ops/member-count","packages/core/services/team/ops/member-get","packages/core/services/team/ops/member-list","packages/core/services/team/ops/member-relationship-get","packages/core/services/team/ops/profile-validate","packages/core/services/team/ops/recommend","packages/core/services/team/ops/resolve-display-name","packages/core/services/team/ops/user-ban-get","packages/core/services/team/ops/user-ban-list","packages/core/services/team/ops/validate","packages/core/services/team/util","packages/core/services/team/worker","packages/core/services/telemetry/standalone/beacon","packages/core/services/tier","packages/core/services/token/ops/create","packages/core/services/token/ops/exchange","packages/core/services/token/ops/get","packages/core/services/token/ops/revoke","packages/core/services/upload/ops/complete","packages/core/services/upload/ops/file-list","packages/core/services/upload/ops/get","packages/core/services/upload/ops/list-for-user","packages/core/services/upload/ops/prepare","packages/core/services/upload/worker","packages/core/services/user","packages/core/services/user-identity/ops/create","packages/core/services/user-identity/ops/delete","packages/core/services/user-identity/ops/get","packages/core/services/user/ops/avatar-upload-complete","packages/core/services/user/ops/get","packages/core/services/user/ops/pending-delete-toggle","packages/core/services/user/ops/profile-validate","packages/core/services/user/ops/resolve-email","packages/core/services/user/ops/team-list","packages/core/services/user/ops/token-create","packages/core/services/user/standalone/delete-pending","packages/core/services/user/worker","packages/edge/api/actor","packages/edge/api/intercom","packages/edge/api/monolith-edge","packages/edge/api/monolith-public","packages/edge/api/traefik-provider","packages/edge/infra/client/actor-kv","packages/edge/infra/client/config","packages/edge/infra/client/container-runner","packages/edge/infra/client/echo","packages/edge/infra/client/manager","packages/edge/infra/client/runner-protocol","packages/edge/infra/edge-server","packages/edge/infra/guard/core","packages/edge/infra/guard/server","packages/edge/services/monolith/standalone/workflow-worker","packages/edge/services/pegboard","packages/edge/services/pegboard/standalone/usage-metrics-publish","packages/edge/services/pegboard/standalone/ws","packages/toolchain/cli","packages/toolchain/js-utils-embed","packages/toolchain/toolchain","sdks/api/full/rust"] [workspace.package] version = "25.5.3" @@ -990,6 +990,9 @@ path = "packages/edge/infra/client/echo" [workspace.dependencies.pegboard-manager] path = "packages/edge/infra/client/manager" +[workspace.dependencies.pegboard-runner-protocol] +path = "packages/edge/infra/client/runner-protocol" + [workspace.dependencies.rivet-edge-server] path = "packages/edge/infra/edge-server" diff --git a/examples/system-test-actor/package.json b/examples/system-test-actor/package.json index 0bf33ca551..d33e932711 100644 --- a/examples/system-test-actor/package.json +++ b/examples/system-test-actor/package.json @@ -6,12 +6,15 @@ "dependencies": { "@hono/node-server": "^1.13.8", "@hono/node-ws": "^1.1.0", + "@rivet-gg/runner-protocol": "file:../../sdks/runner-protocol", + "google-protobuf": "^3.21.2", "hono": "^4.6.17" }, "devDependencies": { "@rivet-gg/actor-core": "^5.1.2", "@rivet-gg/api": "^24.6.2", "@types/deno": "^2.2.0", + "@types/google-protobuf": "^3.15.0", "@types/node": "^22.13.9", "@types/ws": "^8.18.0", "dgram": "^1.0.1", @@ -21,7 +24,7 @@ "ws": "^8.18.1" }, "scripts": { - "start": "tsx ws.ts", + "start": "tsx src/main.ts", "test": "tsx tests/client.ts", "build": "tsc --outDir dist" } diff --git a/examples/system-test-actor/src/managerClient.ts b/examples/system-test-actor/src/managerClient.ts index 59fd298b6a..75e6ee372a 100644 --- a/examples/system-test-actor/src/managerClient.ts +++ b/examples/system-test-actor/src/managerClient.ts @@ -2,6 +2,7 @@ import * as net from "net"; import * as fs from "fs"; import { setInterval, clearInterval } from "timers"; import * as util from "util"; +import { encodeFrame, decodeFrames, types as protocol } from "@rivet-gg/runner-protocol"; export function connectToManager() { const socketPath = process.env.RIVET_MANAGER_SOCKET_PATH; @@ -25,77 +26,79 @@ export function connectToManager() { // Start ping loop to keep connection alive pingInterval = setInterval(() => { - const pingMessage = { ping: null }; + const pingMessage = new protocol.ToManager({ + ping: new protocol.ToManager.Ping() + }); client.write(encodeFrame(pingMessage)); }, 2000); }); client.on("data", (data) => { - const packets = decodeFrames(data); + const packets = decodeFrames(data, protocol.ToRunner); for (let packet of packets) { console.log("Received packet from manager:", util.inspect(packet, { depth: null })); if (packet.start_actor) { - const response = { - actor_state_update: { + const response = new protocol.ToManager({ + actor_state_update: new protocol.ToManager.ActorStateUpdate({ actor_id: packet.start_actor.actor_id, generation: packet.start_actor.generation, - state: { - running: null, - }, - }, - }; + state: new protocol.ActorState({ + running: new protocol.ActorState.Running() + }) + }) + }); client.write(encodeFrame(response)); console.log(`actor_${packet.start_actor.actor_id}`, 'fweh'); - const kvMessage = { - kv: { + const kvMessage = new protocol.ToManager({ + kv: new rivet.pegboard.kv.Request({ actor_id: packet.start_actor.actor_id, generation: packet.start_actor.generation, request_id: 1, - data: { - put: { - keys: [ - [[1, 2, 3], [4, 5, 6]], - ], - values: [ - [11, 12, 13, 14, 15, 16] - ], - } - } - } - }; + put: new rivet.pegboard.kv.Request.Put({ + keys: [ + new rivet.pegboard.kv.Key({ + segments: [new Uint8Array([1, 2, 3]), new Uint8Array([4, 5, 6])] + }) + ], + values: [ + new Uint8Array([11, 12, 13, 14, 15, 16]) + ] + }) + }) + }); client.write(encodeFrame(kvMessage)); - const kvMessage2 = { - kv: { + const kvMessage2 = new protocol.ToManager({ + kv: new rivet.pegboard.kv.Request({ actor_id: packet.start_actor.actor_id, generation: packet.start_actor.generation, request_id: 2, - data: { - get: { - keys: [ - [[1, 2, 3], [4, 5, 6]] - ], - } - } - } - }; + get: new rivet.pegboard.kv.Request.Get({ + keys: [ + new rivet.pegboard.kv.Key({ + segments: [new Uint8Array([1, 2, 3]), new Uint8Array([4, 5, 6])] + }) + ] + }) + }) + }); client.write(encodeFrame(kvMessage2)); } else if (packet.signal_actor) { - const response = { - actor_state_update: { + const response = new protocol.ToManager({ + actor_state_update: new protocol.ToManager.ActorStateUpdate({ actor_id: packet.signal_actor.actor_id, generation: packet.signal_actor.generation, - state: { - exited: { - exit_code: 0, - }, - }, - }, - }; + state: new protocol.ActorState({ + exited: new protocol.ActorState.Exited({ + exit_code: 0 + }) + }) + }) + }); client.write(encodeFrame(response)); } } @@ -115,33 +118,3 @@ export function connectToManager() { }); } -function encodeFrame(payload: any): Buffer { - const json = JSON.stringify(payload); - const payloadLength = Buffer.alloc(4); - payloadLength.writeUInt32BE(json.length, 0); - - const header = Buffer.alloc(4); // All zeros for now - - return Buffer.concat([payloadLength, header, Buffer.from(json)]); -} - -function decodeFrames(buffer: Buffer): any[] { - const packets = []; - let offset = 0; - - while (offset < buffer.length) { - if (buffer.length - offset < 8) break; // Incomplete frame length + header - const payloadLength = buffer.readUInt32BE(offset); - offset += 4; - - // Skip the header (4 bytes) - offset += 4; - - if (buffer.length - offset < payloadLength) break; // Incomplete frame data - const json = buffer.subarray(offset, offset + payloadLength).toString(); - packets.push(JSON.parse(json)); - offset += payloadLength; - } - - return packets; -} diff --git a/examples/system-test-actor/yarn.lock b/examples/system-test-actor/yarn.lock index dca9c217be..be8986a294 100644 --- a/examples/system-test-actor/yarn.lock +++ b/examples/system-test-actor/yarn.lock @@ -277,6 +277,15 @@ __metadata: languageName: node linkType: hard +"@rivet-gg/runner-protocol@file:../../sdks/runner-protocol::locator=system-test-container%40workspace%3A.": + version: 1.0.0 + resolution: "@rivet-gg/runner-protocol@file:../../sdks/runner-protocol#../../sdks/runner-protocol::hash=3263e1&locator=system-test-container%40workspace%3A." + dependencies: + google-protobuf: "npm:^3.21.0" + checksum: 10c0/b6c92f6d634eac885af3812bee67f905bbcab9edd7c32558540e0037703bb3dd273754e7282044a47aeedf980dfefb50f7828a144f4c5fe4a6b54099c973d7d8 + languageName: node + linkType: hard + "@types/deno@npm:^2.2.0": version: 2.2.0 resolution: "@types/deno@npm:2.2.0" @@ -284,6 +293,13 @@ __metadata: languageName: node linkType: hard +"@types/google-protobuf@npm:^3.15.0": + version: 3.15.12 + resolution: "@types/google-protobuf@npm:3.15.12" + checksum: 10c0/721783234e627f367dd710c345a1eaa9dca4ac64910032cef0c851c1821e05d06ffb51e9d1693080f1c0797a8674f89130fa56a390395ec7791ea8506d2f3bfb + languageName: node + linkType: hard + "@types/node@npm:*, @types/node@npm:^22.13.9": version: 22.13.9 resolution: "@types/node@npm:22.13.9" @@ -847,6 +863,13 @@ __metadata: languageName: node linkType: hard +"google-protobuf@npm:^3.21.0, google-protobuf@npm:^3.21.2": + version: 3.21.4 + resolution: "google-protobuf@npm:3.21.4" + checksum: 10c0/28f2800f7fe1a8fc55eb58ba76e158268407bfb3b90646eaf8a177dd92a2e522459b773f8132ae546e60ac3b6f5947557a1cf3d963a05bb594f43bcde640f54f + languageName: node + linkType: hard + "gopd@npm:^1.2.0": version: 1.2.0 resolution: "gopd@npm:1.2.0" @@ -1533,10 +1556,13 @@ __metadata: "@hono/node-ws": "npm:^1.1.0" "@rivet-gg/actor-core": "npm:^5.1.2" "@rivet-gg/api": "npm:^24.6.2" + "@rivet-gg/runner-protocol": "file:../../sdks/runner-protocol" "@types/deno": "npm:^2.2.0" + "@types/google-protobuf": "npm:^3.15.0" "@types/node": "npm:^22.13.9" "@types/ws": "npm:^8.18.0" dgram: "npm:^1.0.1" + google-protobuf: "npm:^3.21.2" hono: "npm:^4.6.17" node-fetch: "npm:^3.3.2" tsx: "npm:^4.7.0" diff --git a/package.json b/package.json index 2fc86da6a5..283a54703b 100644 --- a/package.json +++ b/package.json @@ -22,6 +22,8 @@ "devDependencies": { "@biomejs/biome": "^1.9.4", "@yarnpkg/plugin-exec": "^3.0.1", + "protoc-gen-js": "^3.21.2", + "protoc-gen-ts": "^0.8.7", "turbo": "^2.0.1" }, "resolutions": { diff --git a/packages/edge/infra/client/actor-kv/Cargo.toml b/packages/edge/infra/client/actor-kv/Cargo.toml index ce9c12b004..2b47b5fcd8 100644 --- a/packages/edge/infra/client/actor-kv/Cargo.toml +++ b/packages/edge/infra/client/actor-kv/Cargo.toml @@ -11,7 +11,7 @@ fdb-util.workspace = true foundationdb.workspace = true futures-util = { version = "0.3" } indexmap = { version = "2.0" } -pegboard-config.workspace = true +pegboard-runner-protocol.workspace = true prost = "0.14" rivet-util-id.workspace = true serde = { version = "1.0.195", features = ["derive"] } diff --git a/packages/edge/infra/client/actor-kv/src/entry.rs b/packages/edge/infra/client/actor-kv/src/entry.rs index 66aa7a733d..87d522ec90 100644 --- a/packages/edge/infra/client/actor-kv/src/entry.rs +++ b/packages/edge/infra/client/actor-kv/src/entry.rs @@ -1,6 +1,6 @@ use anyhow::*; use foundationdb as fdb; -use pegboard_config::runner_protocol::proto::kv; +use pegboard_runner_protocol::proto::kv; use prost::Message; use crate::key::Key; diff --git a/packages/edge/infra/client/actor-kv/src/key.rs b/packages/edge/infra/client/actor-kv/src/key.rs index 33d6ea7647..92a9893e2a 100644 --- a/packages/edge/infra/client/actor-kv/src/key.rs +++ b/packages/edge/infra/client/actor-kv/src/key.rs @@ -1,7 +1,7 @@ use foundationdb::tuple::{ Bytes, PackResult, TupleDepth, TuplePack, TupleUnpack, VersionstampOffset, }; -use pegboard_config::runner_protocol::proto::kv; +use pegboard_runner_protocol::proto::kv; use prost::Message; // TODO: Custom deser impl that uses arrays instead of objects? diff --git a/packages/edge/infra/client/actor-kv/src/lib.rs b/packages/edge/infra/client/actor-kv/src/lib.rs index 81605b899d..b8aec7b55f 100644 --- a/packages/edge/infra/client/actor-kv/src/lib.rs +++ b/packages/edge/infra/client/actor-kv/src/lib.rs @@ -14,7 +14,7 @@ use indexmap::IndexMap; pub use key::Key; use list_query::ListLimitReached; pub use list_query::ListQuery; -use pegboard_config::runner_protocol::proto::kv; +use pegboard_runner_protocol::proto::kv; use prost::Message; use tokio::sync::Mutex; use utils::{validate_entries, validate_keys, TransactionExt}; diff --git a/packages/edge/infra/client/actor-kv/src/list_query.rs b/packages/edge/infra/client/actor-kv/src/list_query.rs index 7ee6dcff11..4416a50ab8 100644 --- a/packages/edge/infra/client/actor-kv/src/list_query.rs +++ b/packages/edge/infra/client/actor-kv/src/list_query.rs @@ -1,7 +1,7 @@ use anyhow::*; use foundationdb::tuple::Subspace; use indexmap::IndexMap; -use pegboard_config::runner_protocol::proto::kv; +use pegboard_runner_protocol::proto::kv; use crate::{ entry::EntryBuilder, diff --git a/packages/edge/infra/client/config/Cargo.toml b/packages/edge/infra/client/config/Cargo.toml index 9b3ee0772a..875a362210 100644 --- a/packages/edge/infra/client/config/Cargo.toml +++ b/packages/edge/infra/client/config/Cargo.toml @@ -10,14 +10,9 @@ anyhow = "1.0" indexmap = { version = "2.0" } ipnet = { version = "2.10.1", features = ["serde"] } pegboard.workspace = true -prost = "0.14" rivet-util-id.workspace = true schemars = { version = "0.8.21", features = ["url", "uuid1"] } serde = { version = "1.0.195", features = ["derive"] } serde_json = "1.0" -tokio-util = { version = "0.7", features = ["codec"] } url = "2.2.2" uuid = { version = "1.6.1", features = ["v4"] } - -[build-dependencies] -prost-build = "0.14" diff --git a/packages/edge/infra/client/config/src/lib.rs b/packages/edge/infra/client/config/src/lib.rs index ea1ae0bf06..c3cddba0f9 100644 --- a/packages/edge/infra/client/config/src/lib.rs +++ b/packages/edge/infra/client/config/src/lib.rs @@ -1,3 +1,2 @@ mod manager; -pub mod runner_protocol; pub use manager::*; diff --git a/packages/edge/infra/client/echo/Cargo.toml b/packages/edge/infra/client/echo/Cargo.toml index 09522fd2ec..6bcb5de1ca 100644 --- a/packages/edge/infra/client/echo/Cargo.toml +++ b/packages/edge/infra/client/echo/Cargo.toml @@ -7,12 +7,9 @@ license = "Apache-2.0" [dependencies] anyhow = "1.0" -bytes = "1.0" futures-util = "0.3" http = "0.2" -serde = { version = "1.0", features = ["derive"] } -serde_json = "1.0" +pegboard-runner-protocol.workspace = true tokio = { version = "1.40", features = ["full",] } tokio-util = "0.7" -uuid = { version = "1", features = ["v4", "serde"] } warp = "0.3.7" diff --git a/packages/edge/infra/client/echo/src/main.rs b/packages/edge/infra/client/echo/src/main.rs index 2ad0d2c422..b2d2eda80d 100644 --- a/packages/edge/infra/client/echo/src/main.rs +++ b/packages/edge/infra/client/echo/src/main.rs @@ -1,19 +1,10 @@ -use std::{ - env, - io::{Cursor, Write}, - net::SocketAddr, - path::PathBuf, - sync::Arc, - time::Duration, -}; +use std::{env, net::SocketAddr, path::PathBuf, sync::Arc, time::Duration}; use anyhow::*; -use bytes::Bytes; use futures_util::{SinkExt, StreamExt}; -use serde::{de::DeserializeOwned, Serialize}; -use serde_json::json; +use pegboard_runner_protocol as rp; use tokio::{net::UnixStream, sync::Mutex}; -use tokio_util::codec::{Framed, LengthDelimitedCodec}; +use tokio_util::codec::Framed; use warp::Filter; const PING_INTERVAL: Duration = Duration::from_secs(1); @@ -69,18 +60,7 @@ async fn run_socket_client(socket_path: PathBuf) -> Result<()> { let stream = UnixStream::connect(socket_path).await?; println!("Socket connection established"); - let codec = LengthDelimitedCodec::builder() - .length_field_type::() - .length_field_length(4) - // No offset - .length_field_offset(0) - // Header length is not included in the length calculation - .length_adjustment(4) - // Skip length, but header is included in the returned bytes - .num_skip(4) - .new_codec(); - - let framed = Framed::new(stream, codec); + let framed = Framed::new(stream, rp::codec()); // Split the stream let (write, mut read) = framed.split(); @@ -92,14 +72,16 @@ async fn run_socket_client(socket_path: PathBuf) -> Result<()> { loop { tokio::time::sleep(PING_INTERVAL).await; - let payload = json!({ - "ping": null - }); + let payload = rp::proto::ToManager { + message: Some(rp::proto::to_manager::Message::Ping( + rp::proto::to_manager::Ping {}, + )), + }; if write2 .lock() .await - .send(encode_frame(&payload).unwrap()) + .send(rp::encode_frame(&payload).unwrap().into()) .await .is_err() { @@ -110,68 +92,97 @@ async fn run_socket_client(socket_path: PathBuf) -> Result<()> { // Process incoming messages while let Some(frame) = read.next().await.transpose()? { - let (_, packet) = - decode_frame::(&frame.freeze()).context("failed to decode frame")?; + let (_, packet) = rp::decode_frame::(&frame.freeze()) + .context("failed to decode frame")?; println!("Received packet: {packet:?}"); - if let Some(packet) = packet.get("start_actor") { - let payload = json!({ - "actor_state_update": { - "actor_id": packet["actor_id"], - "generation": packet["generation"], - "state": { - "running": null, - }, - }, - }); - - write - .lock() - .await - .send(encode_frame(&payload).context("failed to encode frame")?) - .await?; - } else if let Some(packet) = packet.get("signal_actor") { - let payload = json!({ - "actor_state_update": { - "actor_id": packet["actor_id"], - "generation": packet["generation"], - "state": { - "exited": { - "exit_code": null, + match packet.message.context("ToRunner.message")? { + rp::proto::to_runner::Message::Init(_) => {} + rp::proto::to_runner::Message::Pong(_) => {} + rp::proto::to_runner::Message::Close(msg) => { + println!("Received close, stopping: {:?}", msg.reason); + break; + } + rp::proto::to_runner::Message::StartActor(msg) => { + let payload = rp::proto::ToManager { + message: Some(rp::proto::to_manager::Message::ActorStateUpdate( + rp::proto::to_manager::ActorStateUpdate { + actor_id: msg.actor_id.clone(), + generation: msg.generation, + state: Some(rp::proto::ActorState { + state: Some(rp::proto::actor_state::State::Running( + rp::proto::actor_state::Running {}, + )), + }), }, - }, - }, - }); - - write.lock().await.send(encode_frame(&payload)?).await?; + )), + }; + + write + .lock() + .await + .send( + rp::encode_frame(&payload) + .context("failed to encode frame")? + .into(), + ) + .await?; + + // KV get request + let payload = rp::proto::ToManager { + message: Some(rp::proto::to_manager::Message::Kv( + rp::proto::kv::Request { + actor_id: msg.actor_id, + generation: msg.generation, + request_id: 0, + data: Some(rp::proto::kv::request::Data::Get( + rp::proto::kv::request::Get { + keys: vec![rp::proto::kv::Key { + segments: vec![vec![0, 1, 2], vec![3, 4, 5]], + }], + }, + )), + }, + )), + }; + + write + .lock() + .await + .send( + rp::encode_frame(&payload) + .context("failed to encode frame")? + .into(), + ) + .await?; + } + rp::proto::to_runner::Message::SignalActor(msg) => { + let payload = rp::proto::ToManager { + message: Some(rp::proto::to_manager::Message::ActorStateUpdate( + rp::proto::to_manager::ActorStateUpdate { + actor_id: msg.actor_id, + generation: msg.generation, + state: Some(rp::proto::ActorState { + state: Some(rp::proto::actor_state::State::Exited( + rp::proto::actor_state::Exited { exit_code: None }, + )), + }), + }, + )), + }; + + write + .lock() + .await + .send(rp::encode_frame(&payload)?.into()) + .await?; + } + rp::proto::to_runner::Message::Kv(_msg) => { + // TODO: + } } } println!("Socket connection closed"); Ok(()) } - -fn encode_frame(payload: &T) -> Result { - let mut buf = Vec::with_capacity(4); - let mut cursor = Cursor::new(&mut buf); - - cursor.write(&[0u8; 4])?; // header (currently unused) - - serde_json::to_writer(&mut cursor, payload)?; - - cursor.flush()?; - - Ok(buf.into()) -} - -fn decode_frame(frame: &Bytes) -> Result<([u8; 4], T)> { - ensure!(frame.len() >= 4, "Frame too short"); - - // Extract the header (first 4 bytes) - let header = [frame[0], frame[1], frame[2], frame[3]]; - - // Deserialize the rest of the frame (payload after the header) - let payload = serde_json::from_slice(&frame[4..])?; - - Ok((header, payload)) -} diff --git a/packages/edge/infra/client/manager/Cargo.toml b/packages/edge/infra/client/manager/Cargo.toml index ae7ed5b196..d765b67cbd 100644 --- a/packages/edge/infra/client/manager/Cargo.toml +++ b/packages/edge/infra/client/manager/Cargo.toml @@ -27,6 +27,7 @@ nix.workspace = true notify = { version = "6.1.1", default-features = false, features = ["serde", "fsevent-sys"] } pegboard-actor-kv.workspace = true pegboard-config.workspace = true +pegboard-runner-protocol.workspace = true pegboard.workspace = true prometheus = "0.13" rand = "0.8" diff --git a/packages/edge/infra/client/manager/src/actor/mod.rs b/packages/edge/infra/client/manager/src/actor/mod.rs index 4dec369805..c4aa3cce5a 100644 --- a/packages/edge/infra/client/manager/src/actor/mod.rs +++ b/packages/edge/infra/client/manager/src/actor/mod.rs @@ -9,7 +9,7 @@ use indoc::indoc; use nix::{sys::signal::Signal, unistd::Pid}; use pegboard::protocol; use pegboard_actor_kv as kv; -use pegboard_config::runner_protocol; +use pegboard_runner_protocol as rp; use crate::{ctx::Ctx, runner, utils}; @@ -134,19 +134,17 @@ impl Actor { } protocol::ImageAllocationType::Multi => { self.runner - .send(&runner_protocol::proto::ToRunner { - message: Some( - runner_protocol::proto::to_runner::Message::StartActor( - runner_protocol::proto::to_runner::StartActor { - actor_id: self.actor_id.to_string(), - generation: self.generation, - env: self.runner.config().env.clone().into(), - metadata: Some(convert_actor_metadata_to_proto( - &self.config.metadata.deserialize()?, - )), - }, - ), - ), + .send(&rp::proto::ToRunner { + message: Some(rp::proto::to_runner::Message::StartActor( + rp::proto::to_runner::StartActor { + actor_id: self.actor_id.to_string(), + generation: self.generation, + env: self.runner.config().env.clone().into(), + metadata: Some(convert_actor_metadata_to_proto( + &self.config.metadata.deserialize()?, + )), + }, + )), }) .await?; } @@ -161,19 +159,17 @@ impl Actor { } protocol::ImageAllocationType::Multi => { self.runner - .send(&runner_protocol::proto::ToRunner { - message: Some( - runner_protocol::proto::to_runner::Message::StartActor( - runner_protocol::proto::to_runner::StartActor { - actor_id: self.actor_id.to_string(), - generation: self.generation, - env: self.runner.config().env.clone().into(), - metadata: Some(convert_actor_metadata_to_proto( - &self.config.metadata.deserialize()?, - )), - }, - ), - ), + .send(&rp::proto::ToRunner { + message: Some(rp::proto::to_runner::Message::StartActor( + rp::proto::to_runner::StartActor { + actor_id: self.actor_id.to_string(), + generation: self.generation, + env: self.runner.config().env.clone().into(), + metadata: Some(convert_actor_metadata_to_proto( + &self.config.metadata.deserialize()?, + )), + }, + )), }) .await?; } @@ -203,9 +199,9 @@ impl Actor { }; match res { - runner_protocol::ToActor::StateUpdate { state } => { + rp::ToActor::StateUpdate { state } => { match state.state.context("ActorState.state")? { - runner_protocol::proto::actor_state::State::Running(_) => { + rp::proto::actor_state::State::Running(_) => { tracing::info!( actor_id=?self.actor_id, generation=?self.generation, @@ -219,21 +215,21 @@ impl Actor { self.set_running(ctx, pid, ports).await?; }, - runner_protocol::proto::actor_state::State::Exited(state) => { + rp::proto::actor_state::State::Exited(state) => { break state.exit_code; } } } - runner_protocol::ToActor::Kv(req) => { + rp::ToActor::Kv(req) => { // TODO: Add queue and bg thread for processing kv ops // Run kv operation match req.data.context("Request.data")? { - runner_protocol::proto::kv::request::Data::Get(body) => { + rp::proto::kv::request::Data::Get(body) => { let res = self.kv.get(pegboard_actor_kv::Key::convert_vec(body.keys)).await; - self.runner.send(&runner_protocol::proto::ToRunner { - message: Some(runner_protocol::proto::to_runner::Message::Kv( - runner_protocol::proto::kv::Response { + self.runner.send(&rp::proto::ToRunner { + message: Some(rp::proto::to_runner::Message::Kv( + rp::proto::kv::Response { request_id: req.request_id, data: match res { Ok(entries) => { @@ -241,16 +237,16 @@ impl Actor { .into_iter() .map(|(k, v)| (k.into(), v.into())) .unzip(); - Some(runner_protocol::proto::kv::response::Data::Get( - runner_protocol::proto::kv::response::Get { + Some(rp::proto::kv::response::Data::Get( + rp::proto::kv::response::Get { keys, values, } )) } Err(err) => { - Some(runner_protocol::proto::kv::response::Data::Error( - runner_protocol::proto::kv::response::Error { + Some(rp::proto::kv::response::Data::Error( + rp::proto::kv::response::Error { message: err.to_string(), } )) @@ -260,16 +256,16 @@ impl Actor { )), }).await?; } - runner_protocol::proto::kv::request::Data::List(body) => { + rp::proto::kv::request::Data::List(body) => { let res = self.kv.list( body.query.context("List.query")?.try_into()?, body.reverse, body.limit.map(TryInto::try_into).transpose()? ).await; - self.runner.send(&runner_protocol::proto::ToRunner { - message: Some(runner_protocol::proto::to_runner::Message::Kv( - runner_protocol::proto::kv::Response { + self.runner.send(&rp::proto::ToRunner { + message: Some(rp::proto::to_runner::Message::Kv( + rp::proto::kv::Response { request_id: req.request_id, data: match res { Ok(entries) => { @@ -277,16 +273,16 @@ impl Actor { .into_iter() .map(|(k, v)| (k.into(), v.into())) .unzip(); - Some(runner_protocol::proto::kv::response::Data::List( - runner_protocol::proto::kv::response::List { + Some(rp::proto::kv::response::Data::List( + rp::proto::kv::response::List { keys, values, } )) } Err(err) => { - Some(runner_protocol::proto::kv::response::Data::Error( - runner_protocol::proto::kv::response::Error { + Some(rp::proto::kv::response::Data::Error( + rp::proto::kv::response::Error { message: err.to_string(), } )) @@ -296,7 +292,7 @@ impl Actor { )), }).await?; } - runner_protocol::proto::kv::request::Data::Put(body) => { + rp::proto::kv::request::Data::Put(body) => { let res = self.kv.put( body.keys .into_iter() @@ -305,19 +301,19 @@ impl Actor { .collect() ).await; - self.runner.send(&runner_protocol::proto::ToRunner { - message: Some(runner_protocol::proto::to_runner::Message::Kv( - runner_protocol::proto::kv::Response { + self.runner.send(&rp::proto::ToRunner { + message: Some(rp::proto::to_runner::Message::Kv( + rp::proto::kv::Response { request_id: req.request_id, data: match res { Ok(_) => { - Some(runner_protocol::proto::kv::response::Data::Put( - runner_protocol::proto::kv::response::Put {} + Some(rp::proto::kv::response::Data::Put( + rp::proto::kv::response::Put {} )) } Err(err) => { - Some(runner_protocol::proto::kv::response::Data::Error( - runner_protocol::proto::kv::response::Error { + Some(rp::proto::kv::response::Data::Error( + rp::proto::kv::response::Error { message: err.to_string(), } )) @@ -327,22 +323,22 @@ impl Actor { )), }).await?; } - runner_protocol::proto::kv::request::Data::Delete(body) => { + rp::proto::kv::request::Data::Delete(body) => { let res = self.kv.delete(pegboard_actor_kv::Key::convert_vec(body.keys)).await; - self.runner.send(&runner_protocol::proto::ToRunner { - message: Some(runner_protocol::proto::to_runner::Message::Kv( - runner_protocol::proto::kv::Response { + self.runner.send(&rp::proto::ToRunner { + message: Some(rp::proto::to_runner::Message::Kv( + rp::proto::kv::Response { request_id: req.request_id, data: match res { Ok(_) => { - Some(runner_protocol::proto::kv::response::Data::Delete( - runner_protocol::proto::kv::response::Delete {} + Some(rp::proto::kv::response::Data::Delete( + rp::proto::kv::response::Delete {} )) } Err(err) => { - Some(runner_protocol::proto::kv::response::Data::Error( - runner_protocol::proto::kv::response::Error { + Some(rp::proto::kv::response::Data::Error( + rp::proto::kv::response::Error { message: err.to_string(), } )) @@ -352,22 +348,22 @@ impl Actor { )), }).await?; } - runner_protocol::proto::kv::request::Data::Drop(_) => { + rp::proto::kv::request::Data::Drop(_) => { let res = self.kv.delete_all().await; - self.runner.send(&runner_protocol::proto::ToRunner { - message: Some(runner_protocol::proto::to_runner::Message::Kv( - runner_protocol::proto::kv::Response { + self.runner.send(&rp::proto::ToRunner { + message: Some(rp::proto::to_runner::Message::Kv( + rp::proto::kv::Response { request_id: req.request_id, data: match res { Ok(_) => { - Some(runner_protocol::proto::kv::response::Data::Drop( - runner_protocol::proto::kv::response::Drop {} + Some(rp::proto::kv::response::Data::Drop( + rp::proto::kv::response::Drop {} )) } Err(err) => { - Some(runner_protocol::proto::kv::response::Data::Error( - runner_protocol::proto::kv::response::Error { + Some(rp::proto::kv::response::Data::Error( + rp::proto::kv::response::Error { message: err.to_string(), } )) @@ -422,9 +418,9 @@ impl Actor { // Send message if self.runner.has_socket() { self.runner - .send(&runner_protocol::proto::ToRunner { - message: Some(runner_protocol::proto::to_runner::Message::SignalActor( - runner_protocol::proto::to_runner::SignalActor { + .send(&rp::proto::ToRunner { + message: Some(rp::proto::to_runner::Message::SignalActor( + rp::proto::to_runner::SignalActor { actor_id: self.actor_id.to_string(), generation: self.generation, signal: signal as i32, @@ -577,8 +573,8 @@ impl Actor { /// Convert from serde ActorMetadata to proto ActorMetadata pub fn convert_actor_metadata_to_proto( metadata: &protocol::ActorMetadata, -) -> runner_protocol::proto::ActorMetadata { - use runner_protocol::proto::{ +) -> rp::proto::ActorMetadata { + use rp::proto::{ actor_metadata, routing, ActorMetadata, GameGuardProtocol, HostProtocol, Port, Routing, }; diff --git a/packages/edge/infra/client/manager/src/image_download_handler.rs b/packages/edge/infra/client/manager/src/image_download_handler.rs index 69a9633e7f..2441046e9a 100644 --- a/packages/edge/infra/client/manager/src/image_download_handler.rs +++ b/packages/edge/infra/client/manager/src/image_download_handler.rs @@ -318,8 +318,13 @@ impl ImageDownloadHandler { let docker_image_path = image_path.join("docker-image.tar"); tracing::info!(image_id=?image_config.id, "downloading uncompressed docker image using curl"); + // NOTE: The tar command here is just to count the total bytes // Use curl to download directly to file - format!("curl -sSfL '{}' -o '{}'", url, docker_image_path.display()) + format!( + "curl -sSfL '{}' -o '{}' && tar -tf '{1}' --totals", + url, + docker_image_path.display(), + ) } // Docker image with LZ4 compression @@ -330,11 +335,12 @@ impl ImageDownloadHandler { "downloading and decompressing docker image using curl | lz4", ); + // NOTE: The tar command here is just to count the total bytes // Use curl piped to lz4 for decompression format!( - "curl -sSfL '{}' | lz4 -d - '{}'", + "curl -sSfL '{}' | lz4 -d - '{}' && tar -tf '{1}' --totals", url, - docker_image_path.display() + docker_image_path.display(), ) } @@ -352,7 +358,7 @@ impl ImageDownloadHandler { format!( "curl -sSfL '{}' | tar -x --totals -C '{}'", url, - image_path.display() + image_path.display(), ) } @@ -370,7 +376,7 @@ impl ImageDownloadHandler { format!( "curl -sSfL '{}' | lz4 -d | tar -x --totals -C '{}'", url, - image_path.display() + image_path.display(), ) } }; @@ -385,11 +391,12 @@ impl ImageDownloadHandler { // // This is an over-estimate since the size on disk is smaller than the actual // tar + let stdout = String::from_utf8_lossy(&output.stdout); let stderr = String::from_utf8_lossy(&output.stderr); let bytes_read = match parse_tar_total_bytes(&stderr) { Some(x) => x, None => { - tracing::error!(%stderr, "failed to parse bytes read from tar output"); + tracing::error!(%stdout, %stderr, "failed to parse bytes read from tar output"); bail!("failed to parse bytes read from tar output") } }; @@ -443,7 +450,7 @@ impl ImageDownloadHandler { let docker_image_path = image_path.join("docker-image.tar"); let oci_image_path = image_path.join("oci-image"); - tracing::info!("converting Docker image -> OCI image",); + tracing::info!("converting Docker image -> OCI image"); let conversion_start = Instant::now(); let cmd_out = Command::new("skopeo") .arg("copy") diff --git a/packages/edge/infra/client/manager/src/runner/mod.rs b/packages/edge/infra/client/manager/src/runner/mod.rs index e69defe3b7..03aae98fb5 100644 --- a/packages/edge/infra/client/manager/src/runner/mod.rs +++ b/packages/edge/infra/client/manager/src/runner/mod.rs @@ -18,7 +18,7 @@ use nix::{ unistd::Pid, }; use pegboard::protocol; -use pegboard_config::runner_protocol; +use pegboard_runner_protocol as rp; use sqlx::Acquire; use tokio::{ fs, @@ -77,7 +77,7 @@ pub struct Runner { bump_channel: broadcast::Sender<()>, // TODO: replace with a single stream for each actor? - actor_proxy_tx: broadcast::Sender<(rivet_util::Id, u32, runner_protocol::ToActor)>, + actor_proxy_tx: broadcast::Sender<(rivet_util::Id, u32, rp::ToActor)>, } impl Runner { @@ -124,9 +124,9 @@ impl Runner { tracing::info!(runner_id=?self.runner_id, "runner received another socket, closing old one"); // Close the old socket - let buf = runner_protocol::encode_frame(&runner_protocol::proto::ToRunner { - message: Some(runner_protocol::proto::to_runner::Message::Close( - runner_protocol::proto::to_runner::Close { + let buf = rp::encode_frame(&rp::proto::ToRunner { + message: Some(rp::proto::to_runner::Message::Close( + rp::proto::to_runner::Close { reason: Some("replacing with new socket".into()), }, )), @@ -142,7 +142,7 @@ impl Runner { } // Wrap the stream in a framed transport - let framed = Framed::new(stream, runner_protocol::codec()); + let framed = Framed::new(stream, rp::codec()); let (tx, rx) = framed.split(); *guard = Some(tx); @@ -182,23 +182,22 @@ impl Runner { break Ok(()); }; - let (_, packet) = - runner_protocol::decode_frame::(&buf?) - .context("failed to decode frame")?; + let (_, packet) = rp::decode_frame::(&buf?) + .context("failed to decode frame")?; tracing::debug!(?packet, "runner received packet"); match packet.message.context("ToManager.message")? { - runner_protocol::proto::to_manager::Message::Ping(_) => { + rp::proto::to_manager::Message::Ping(_) => { // TODO: Rate limit? - self.send(&runner_protocol::proto::ToRunner { - message: Some(runner_protocol::proto::to_runner::Message::Pong( - runner_protocol::proto::to_runner::Pong {}, + self.send(&rp::proto::ToRunner { + message: Some(rp::proto::to_runner::Message::Pong( + rp::proto::to_runner::Pong {}, )), }) .await?; } - runner_protocol::proto::to_manager::Message::ActorStateUpdate(msg) => { + rp::proto::to_manager::Message::ActorStateUpdate(msg) => { match self.config.image.allocation_type { protocol::ImageAllocationType::Single => { tracing::debug!("unexpected state update from non-multi runner"); @@ -210,25 +209,25 @@ impl Runner { let _ = self.actor_proxy_tx.send(( rivet_util::Id::parse(&msg.actor_id)?, msg.generation, - runner_protocol::ToActor::StateUpdate { + rp::ToActor::StateUpdate { state: msg.state.context("ActorStateUpdate.state")?, }, )); } } } - runner_protocol::proto::to_manager::Message::Kv(msg) => { + rp::proto::to_manager::Message::Kv(msg) => { let _ = self.actor_proxy_tx.send(( rivet_util::Id::parse(&msg.actor_id)?, msg.generation, - runner_protocol::ToActor::Kv(msg), + rp::ToActor::Kv(msg), )); } } } } - pub async fn send(&self, packet: &runner_protocol::proto::ToRunner) -> Result<()> { + pub async fn send(&self, packet: &rp::proto::ToRunner) -> Result<()> { match &self.comms { Comms::Basic => bail!("cannot send socket message to basic runner"), Comms::Socket(socket) => { @@ -261,8 +260,7 @@ impl Runner { })??; let socket = guard.as_mut().expect("should exist"); - let buf = - runner_protocol::encode_frame(packet).context("failed to encode frame")?; + let buf = rp::encode_frame(packet).context("failed to encode frame")?; socket .send(buf.into()) .await @@ -704,14 +702,14 @@ impl Comms { pub struct ActorProxy { actor_id: rivet_util::Id, generation: u32, - sub: broadcast::Receiver<(rivet_util::Id, u32, runner_protocol::ToActor)>, + sub: broadcast::Receiver<(rivet_util::Id, u32, rp::ToActor)>, } impl ActorProxy { fn new( actor_id: rivet_util::Id, generation: u32, - sub: broadcast::Receiver<(rivet_util::Id, u32, runner_protocol::ToActor)>, + sub: broadcast::Receiver<(rivet_util::Id, u32, rp::ToActor)>, ) -> Self { ActorProxy { actor_id, @@ -719,7 +717,7 @@ impl ActorProxy { sub, } } - pub async fn next(&mut self) -> Option { + pub async fn next(&mut self) -> Option { loop { let Ok((other_actor_id, other_generation, state)) = self.sub.recv().await else { tracing::error!("actor observer channel dropped"); diff --git a/packages/edge/infra/client/manager/src/runner/setup.rs b/packages/edge/infra/client/manager/src/runner/setup.rs index 0d8d0b0598..69d1b86a21 100644 --- a/packages/edge/infra/client/manager/src/runner/setup.rs +++ b/packages/edge/infra/client/manager/src/runner/setup.rs @@ -626,13 +626,15 @@ impl Runner { .context("failed to set scheduling policy")?; // Exit immediately on fail in order to not leak process - let err = std::process::Command::new("sh") - .args(&runner_args) - .envs(env.iter().cloned()) - .stdin(Stdio::null()) - .stdout(Stdio::null()) - .stderr(Stdio::null()) - .exec(); + let err = std::process::Command::new( + &ctx.config().runner.container_runner_binary_path(), + ) + .args(&runner_args) + .envs(env.iter().cloned()) + .stdin(Stdio::null()) + .stdout(Stdio::null()) + .stderr(Stdio::null()) + .exec(); eprintln!("exec failed: {err:?}"); std::process::exit(1); } diff --git a/packages/edge/infra/client/manager/tests/common.rs b/packages/edge/infra/client/manager/tests/common.rs index 96888d684e..183a165fde 100644 --- a/packages/edge/infra/client/manager/tests/common.rs +++ b/packages/edge/infra/client/manager/tests/common.rs @@ -116,6 +116,9 @@ pub async fn start_echo_actor( .collect(), create_ts: 0, }, + network: Some(protocol::ActorMetadataNetwork { + ports: Default::default(), + }), project: protocol::ActorMetadataProject { project_id: Uuid::nil(), slug: "foo".to_string(), @@ -134,7 +137,6 @@ pub async fn start_echo_actor( build: protocol::ActorMetadataBuild { build_id: Uuid::nil(), }, - network: None, }) .unwrap(), @@ -228,6 +230,7 @@ pub async fn init_client(gen_path: &Path, working_path: &Path) -> Config { use_mounts: Some(true), use_resource_constraints: Some(true), container_runner_binary_path: Some(container_runner_binary_path), + custom_hosts: None, }, images: Images { max_cache_size: None, @@ -278,6 +281,8 @@ pub async fn start_client( let pool = utils::init_sqlite_db(&config).await.unwrap(); + let fdb = utils::fdb::FdbPool::new(&config).await.unwrap(); + // Build WS connection URL let mut url = Url::parse("ws://127.0.0.1").unwrap(); url.set_port(Some(port)).unwrap(); @@ -296,7 +301,7 @@ pub async fn start_client( tracing::info!("connected"); - let ctx = Ctx::new(config, system, pool, tx); + let ctx = Ctx::new(config, system, pool, fdb, tx); // Share reference { @@ -317,6 +322,8 @@ pub async fn start_client( } pub async fn build_binaries(gen_path: &Path) { + tracing::info!("building echo server"); + let pkg_path = Path::new(env!("CARGO_MANIFEST_DIR")).join(".."); let status = Command::new("docker") .arg("build") @@ -346,14 +353,14 @@ pub async fn build_binaries(gen_path: &Path) { assert!(status.success()); - build_runner(gen_path, "container").await; + build_runner(gen_path).await; } -async fn build_runner(gen_path: &Path, variant: &str) { - tracing::info!("building {variant} runner"); +async fn build_runner(gen_path: &Path) { + tracing::info!("building container runner"); let pkg_path = Path::new(env!("CARGO_MANIFEST_DIR")).join(".."); - let image_name = format!("pegboard-{variant}-runner"); + let image_name = "pegboard-container-runner"; // Build runner binary let status = Command::new("docker") @@ -365,7 +372,7 @@ async fn build_runner(gen_path: &Path, variant: &str) { .arg("-f") .arg( pkg_path - .join(format!("{variant}-runner")) + .join("container-runner") .join("Dockerfile"), ) .arg(pkg_path.join("..").join("..").join("..").join("..")) @@ -377,8 +384,8 @@ async fn build_runner(gen_path: &Path, variant: &str) { tracing::info!("copying runner image"); - let container_name = format!("temp-pegboard-{variant}-runner-container"); - let binary_path_in_container = format!("/rivet-{variant}-runner"); + let container_name = format!("temp-pegboard-container-runner-container"); + let binary_path_in_container = format!("/rivet-container-runner"); // Create a temporary container let status = Command::new("docker") @@ -423,8 +430,6 @@ pub async fn serve_binaries(gen_path: PathBuf) { let path = if path == "/image" { image_path(&gen_path) - } else if path == "/js-image" { - js_image_path(&gen_path) } else { panic!("invalid path: {path}"); }; @@ -583,10 +588,6 @@ pub fn image_path(gen_path: &Path) -> PathBuf { gen_path.join("pegboard-echo-server").to_path_buf() } -pub fn js_image_path(gen_path: &Path) -> PathBuf { - gen_path.join("pegboard-js-echo-server.js").to_path_buf() -} - static SETUP_TRACING: Once = Once::new(); pub fn setup_tracing() { SETUP_TRACING.call_once(|| { diff --git a/packages/edge/infra/client/runner-protocol/Cargo.toml b/packages/edge/infra/client/runner-protocol/Cargo.toml new file mode 100644 index 0000000000..b0d7121897 --- /dev/null +++ b/packages/edge/infra/client/runner-protocol/Cargo.toml @@ -0,0 +1,14 @@ +[package] +name = "pegboard-runner-protocol" +version.workspace = true +authors.workspace = true +license.workspace = true +edition.workspace = true + +[dependencies] +anyhow = "1.0" +prost = "0.14" +tokio-util = { version = "0.7", features = ["codec"] } + +[build-dependencies] +prost-build = "0.14" diff --git a/packages/edge/infra/client/config/build.rs b/packages/edge/infra/client/runner-protocol/build.rs similarity index 100% rename from packages/edge/infra/client/config/build.rs rename to packages/edge/infra/client/runner-protocol/build.rs diff --git a/packages/edge/infra/client/config/resources/proto/kv.proto b/packages/edge/infra/client/runner-protocol/resources/proto/kv.proto similarity index 94% rename from packages/edge/infra/client/config/resources/proto/kv.proto rename to packages/edge/infra/client/runner-protocol/resources/proto/kv.proto index 89e7c0f0f9..55745af574 100644 --- a/packages/edge/infra/client/config/resources/proto/kv.proto +++ b/packages/edge/infra/client/runner-protocol/resources/proto/kv.proto @@ -25,6 +25,7 @@ message Request { message Drop {} string actor_id = 1; + // TODO: Get rid of generation here since kv is the same for all gens uint32 generation = 2; uint32 request_id = 3; diff --git a/packages/edge/infra/client/config/resources/proto/runner_protocol.proto b/packages/edge/infra/client/runner-protocol/resources/proto/runner_protocol.proto similarity index 100% rename from packages/edge/infra/client/config/resources/proto/runner_protocol.proto rename to packages/edge/infra/client/runner-protocol/resources/proto/runner_protocol.proto diff --git a/packages/edge/infra/client/config/src/runner_protocol.rs b/packages/edge/infra/client/runner-protocol/src/lib.rs similarity index 100% rename from packages/edge/infra/client/config/src/runner_protocol.rs rename to packages/edge/infra/client/runner-protocol/src/lib.rs diff --git a/scripts/generate_runner_protocol_js_sdk.ts b/scripts/generate_runner_protocol_js_sdk.ts new file mode 100755 index 0000000000..7779dc79da --- /dev/null +++ b/scripts/generate_runner_protocol_js_sdk.ts @@ -0,0 +1,179 @@ +#!/usr/bin/env -S deno run -A + +import { resolve } from "@std/path"; +import { existsSync } from "@std/fs"; + +const ROOT_DIR = resolve(import.meta.dirname!, ".."); +const PROTO_DIR = resolve(ROOT_DIR, "packages/edge/infra/client/runner-protocol/resources/proto"); +const OUTPUT_DIR = resolve(ROOT_DIR, "sdks/runner-protocol"); + +async function main() { + console.log("Generating JS SDK for runner protocol..."); + + // Check if protobuf compiler is available + const protoc = await checkProtocAvailable(); + if (!protoc) { + console.error("protobuf compiler (protoc) not found. Please install it first."); + Deno.exit(1); + } + + // Ensure output directory exists + try { + await Deno.mkdir(OUTPUT_DIR, { recursive: true }); + } catch (error) { + if (!(error instanceof Deno.errors.AlreadyExists)) { + throw error; + } + } + + // Generate the JS/TypeScript files + await generateJSSDK(); + + // Generate package.json + await generatePackageJson(); + + // Generate index.ts + await generateIndexFile(); + + console.log(`✅ JS SDK generated successfully in ${OUTPUT_DIR}`); +} + +async function checkProtocAvailable(): Promise { + try { + const process = await new Deno.Command("protoc", { + args: ["--version"], + stdout: "piped", + stderr: "piped" + }).output(); + return process.success; + } catch { + return false; + } +} + +async function generateJSSDK() { + console.log("Generating protobuf JS/TS files..."); + + const protoFiles = [ + "kv.proto", + "runner_protocol.proto" + ]; + + // Use the installed protoc plugins + const nodeModulesPath = resolve(ROOT_DIR, "node_modules/.bin"); + const protocArgs = [ + "--proto_path=" + PROTO_DIR, + "--plugin=protoc-gen-js=" + resolve(nodeModulesPath, "protoc-gen-js"), + "--plugin=protoc-gen-ts=" + resolve(nodeModulesPath, "protoc-gen-ts"), + "--js_out=import_style=commonjs:" + OUTPUT_DIR, + "--ts_out=" + OUTPUT_DIR, + ...protoFiles.map(f => resolve(PROTO_DIR, f)) + ]; + + const process = await new Deno.Command("protoc", { + args: protocArgs, + cwd: ROOT_DIR, + stdout: "piped", + stderr: "piped" + }).output(); + + if (!process.success) { + const stderr = new TextDecoder().decode(process.stderr); + console.error("protoc failed:", stderr); + Deno.exit(1); + } + + console.log("✅ Protobuf files generated successfully"); +} + +async function generatePackageJson() { + const packageJson = { + name: "@rivet-gg/runner-protocol", + version: "1.0.0", + description: "JavaScript SDK for Rivet Runner Protocol", + type: "module", + main: "index.js", + types: "index.d.ts", + scripts: { + build: "tsc", + prepublishOnly: "npm run build" + }, + dependencies: { + "google-protobuf": "^3.21.0" + }, + devDependencies: { + "@types/google-protobuf": "^3.15.0", + "typescript": "^5.0.0" + }, + files: [ + "*.js", + "*.d.ts", + "*.ts", + "!*.test.*" + ] + }; + + await Deno.writeTextFile( + resolve(OUTPUT_DIR, "package.json"), + JSON.stringify(packageJson, null, 2) + ); + + console.log("✅ package.json generated"); +} + +async function generateIndexFile() { + const indexContent = `// Generated runner protocol SDK +// Re-export namespaced types +import { rivet as kvTypes } from './kv.js'; +import { rivet as rpTypes } from './runner_protocol.js'; + +export const types = { + kv: kvTypes.pegboard.kv, + ...rpTypes.pegboard.runner_protocol, +}; + +// Utility functions for encoding/decoding frames (same interface as JSON version) +export function encodeFrame(payload: any): Buffer { + const protobufPayload = payload.serializeBinary(); + const payloadLength = Buffer.alloc(4); + payloadLength.writeUInt32BE(protobufPayload.length, 0); + + const header = Buffer.alloc(4); // All zeros for now + + return Buffer.concat([payloadLength, header, Buffer.from(protobufPayload)]); +} + +export function decodeFrames(buffer: Buffer, MessageClass: T): T[] { + const packets = []; + let offset = 0; + + while (offset < buffer.length) { + if (buffer.length - offset < 8) break; // Incomplete frame length + header + const payloadLength = buffer.readUInt32BE(offset); + offset += 4; + + // Skip the header (4 bytes) + offset += 4; + + if (buffer.length - offset < payloadLength) break; // Incomplete frame data + const payloadBuffer = buffer.subarray(offset, offset + payloadLength); + const packet = MessageClass.deserializeBinary(new Uint8Array(payloadBuffer)); + packets.push(packet); + offset += payloadLength; + } + + return packets; +} +`; + + await Deno.writeTextFile( + resolve(OUTPUT_DIR, "index.ts"), + indexContent + ); + + console.log("✅ index.ts generated"); +} + +if (import.meta.main) { + await main(); +} \ No newline at end of file diff --git a/sdks/runner-protocol/index.ts b/sdks/runner-protocol/index.ts new file mode 100644 index 0000000000..af4a0d8fc3 --- /dev/null +++ b/sdks/runner-protocol/index.ts @@ -0,0 +1,42 @@ +// Generated runner protocol SDK +// Re-export namespaced types +import { rivet as kvTypes } from './kv.js'; +import { rivet as rpTypes } from './runner_protocol.js'; + +export const types = { + kv: kvTypes.pegboard.kv, + ...rpTypes.pegboard.runner_protocol, +}; + +// Utility functions for encoding/decoding frames (same interface as JSON version) +export function encodeFrame(payload: any): Buffer { + const protobufPayload = payload.serializeBinary(); + const payloadLength = Buffer.alloc(4); + payloadLength.writeUInt32BE(protobufPayload.length, 0); + + const header = Buffer.alloc(4); // All zeros for now + + return Buffer.concat([payloadLength, header, Buffer.from(protobufPayload)]); +} + +export function decodeFrames(buffer: Buffer, MessageClass: T): T[] { + const packets = []; + let offset = 0; + + while (offset < buffer.length) { + if (buffer.length - offset < 8) break; // Incomplete frame length + header + const payloadLength = buffer.readUInt32BE(offset); + offset += 4; + + // Skip the header (4 bytes) + offset += 4; + + if (buffer.length - offset < payloadLength) break; // Incomplete frame data + const payloadBuffer = buffer.subarray(offset, offset + payloadLength); + const packet = MessageClass.deserializeBinary(new Uint8Array(payloadBuffer)); + packets.push(packet); + offset += payloadLength; + } + + return packets; +} diff --git a/sdks/runner-protocol/kv.ts b/sdks/runner-protocol/kv.ts new file mode 100644 index 0000000000..6d1a276568 --- /dev/null +++ b/sdks/runner-protocol/kv.ts @@ -0,0 +1,1958 @@ +/** + * Generated by the protoc-gen-ts. DO NOT EDIT! + * compiler version: 3.21.12 + * source: kv.proto + * git: https://github.com/thesayyn/protoc-gen-ts */ +import * as pb_1 from "google-protobuf"; +export namespace rivet.pegboard.kv { + export class Request extends pb_1.Message { + #one_of_decls: number[][] = [[4, 5, 6, 7, 8]]; + constructor(data?: any[] | ({ + actor_id?: string; + generation?: number; + request_id?: number; + } & (({ + get?: Request.Get; + list?: never; + put?: never; + delete?: never; + drop?: never; + } | { + get?: never; + list?: Request.List; + put?: never; + delete?: never; + drop?: never; + } | { + get?: never; + list?: never; + put?: Request.Put; + delete?: never; + drop?: never; + } | { + get?: never; + list?: never; + put?: never; + delete?: Request.Delete; + drop?: never; + } | { + get?: never; + list?: never; + put?: never; + delete?: never; + drop?: Request.Drop; + })))) { + super(); + pb_1.Message.initialize(this, Array.isArray(data) ? data : [], 0, -1, [], this.#one_of_decls); + if (!Array.isArray(data) && typeof data == "object") { + if ("actor_id" in data && data.actor_id != undefined) { + this.actor_id = data.actor_id; + } + if ("generation" in data && data.generation != undefined) { + this.generation = data.generation; + } + if ("request_id" in data && data.request_id != undefined) { + this.request_id = data.request_id; + } + if ("get" in data && data.get != undefined) { + this.get = data.get; + } + if ("list" in data && data.list != undefined) { + this.list = data.list; + } + if ("put" in data && data.put != undefined) { + this.put = data.put; + } + if ("delete" in data && data.delete != undefined) { + this.delete = data.delete; + } + if ("drop" in data && data.drop != undefined) { + this.drop = data.drop; + } + } + } + get actor_id() { + return pb_1.Message.getFieldWithDefault(this, 1, "") as string; + } + set actor_id(value: string) { + pb_1.Message.setField(this, 1, value); + } + get generation() { + return pb_1.Message.getFieldWithDefault(this, 2, 0) as number; + } + set generation(value: number) { + pb_1.Message.setField(this, 2, value); + } + get request_id() { + return pb_1.Message.getFieldWithDefault(this, 3, 0) as number; + } + set request_id(value: number) { + pb_1.Message.setField(this, 3, value); + } + get get() { + return pb_1.Message.getWrapperField(this, Request.Get, 4) as Request.Get; + } + set get(value: Request.Get) { + pb_1.Message.setOneofWrapperField(this, 4, this.#one_of_decls[0], value); + } + get has_get() { + return pb_1.Message.getField(this, 4) != null; + } + get list() { + return pb_1.Message.getWrapperField(this, Request.List, 5) as Request.List; + } + set list(value: Request.List) { + pb_1.Message.setOneofWrapperField(this, 5, this.#one_of_decls[0], value); + } + get has_list() { + return pb_1.Message.getField(this, 5) != null; + } + get put() { + return pb_1.Message.getWrapperField(this, Request.Put, 6) as Request.Put; + } + set put(value: Request.Put) { + pb_1.Message.setOneofWrapperField(this, 6, this.#one_of_decls[0], value); + } + get has_put() { + return pb_1.Message.getField(this, 6) != null; + } + get delete() { + return pb_1.Message.getWrapperField(this, Request.Delete, 7) as Request.Delete; + } + set delete(value: Request.Delete) { + pb_1.Message.setOneofWrapperField(this, 7, this.#one_of_decls[0], value); + } + get has_delete() { + return pb_1.Message.getField(this, 7) != null; + } + get drop() { + return pb_1.Message.getWrapperField(this, Request.Drop, 8) as Request.Drop; + } + set drop(value: Request.Drop) { + pb_1.Message.setOneofWrapperField(this, 8, this.#one_of_decls[0], value); + } + get has_drop() { + return pb_1.Message.getField(this, 8) != null; + } + get data() { + const cases: { + [index: number]: "none" | "get" | "list" | "put" | "delete" | "drop"; + } = { + 0: "none", + 4: "get", + 5: "list", + 6: "put", + 7: "delete", + 8: "drop" + }; + return cases[pb_1.Message.computeOneofCase(this, [4, 5, 6, 7, 8])]; + } + static fromObject(data: { + actor_id?: string; + generation?: number; + request_id?: number; + get?: ReturnType; + list?: ReturnType; + put?: ReturnType; + delete?: ReturnType; + drop?: ReturnType; + }): Request { + const message = new Request({}); + if (data.actor_id != null) { + message.actor_id = data.actor_id; + } + if (data.generation != null) { + message.generation = data.generation; + } + if (data.request_id != null) { + message.request_id = data.request_id; + } + if (data.get != null) { + message.get = Request.Get.fromObject(data.get); + } + if (data.list != null) { + message.list = Request.List.fromObject(data.list); + } + if (data.put != null) { + message.put = Request.Put.fromObject(data.put); + } + if (data.delete != null) { + message.delete = Request.Delete.fromObject(data.delete); + } + if (data.drop != null) { + message.drop = Request.Drop.fromObject(data.drop); + } + return message; + } + toObject() { + const data: { + actor_id?: string; + generation?: number; + request_id?: number; + get?: ReturnType; + list?: ReturnType; + put?: ReturnType; + delete?: ReturnType; + drop?: ReturnType; + } = {}; + if (this.actor_id != null) { + data.actor_id = this.actor_id; + } + if (this.generation != null) { + data.generation = this.generation; + } + if (this.request_id != null) { + data.request_id = this.request_id; + } + if (this.get != null) { + data.get = this.get.toObject(); + } + if (this.list != null) { + data.list = this.list.toObject(); + } + if (this.put != null) { + data.put = this.put.toObject(); + } + if (this.delete != null) { + data.delete = this.delete.toObject(); + } + if (this.drop != null) { + data.drop = this.drop.toObject(); + } + return data; + } + serialize(): Uint8Array; + serialize(w: pb_1.BinaryWriter): void; + serialize(w?: pb_1.BinaryWriter): Uint8Array | void { + const writer = w || new pb_1.BinaryWriter(); + if (this.actor_id.length) + writer.writeString(1, this.actor_id); + if (this.generation != 0) + writer.writeUint32(2, this.generation); + if (this.request_id != 0) + writer.writeUint32(3, this.request_id); + if (this.has_get) + writer.writeMessage(4, this.get, () => this.get.serialize(writer)); + if (this.has_list) + writer.writeMessage(5, this.list, () => this.list.serialize(writer)); + if (this.has_put) + writer.writeMessage(6, this.put, () => this.put.serialize(writer)); + if (this.has_delete) + writer.writeMessage(7, this.delete, () => this.delete.serialize(writer)); + if (this.has_drop) + writer.writeMessage(8, this.drop, () => this.drop.serialize(writer)); + if (!w) + return writer.getResultBuffer(); + } + static deserialize(bytes: Uint8Array | pb_1.BinaryReader): Request { + const reader = bytes instanceof pb_1.BinaryReader ? bytes : new pb_1.BinaryReader(bytes), message = new Request(); + while (reader.nextField()) { + if (reader.isEndGroup()) + break; + switch (reader.getFieldNumber()) { + case 1: + message.actor_id = reader.readString(); + break; + case 2: + message.generation = reader.readUint32(); + break; + case 3: + message.request_id = reader.readUint32(); + break; + case 4: + reader.readMessage(message.get, () => message.get = Request.Get.deserialize(reader)); + break; + case 5: + reader.readMessage(message.list, () => message.list = Request.List.deserialize(reader)); + break; + case 6: + reader.readMessage(message.put, () => message.put = Request.Put.deserialize(reader)); + break; + case 7: + reader.readMessage(message.delete, () => message.delete = Request.Delete.deserialize(reader)); + break; + case 8: + reader.readMessage(message.drop, () => message.drop = Request.Drop.deserialize(reader)); + break; + default: reader.skipField(); + } + } + return message; + } + serializeBinary(): Uint8Array { + return this.serialize(); + } + static deserializeBinary(bytes: Uint8Array): Request { + return Request.deserialize(bytes); + } + } + export namespace Request { + export class Get extends pb_1.Message { + #one_of_decls: number[][] = []; + constructor(data?: any[] | { + keys?: Key[]; + }) { + super(); + pb_1.Message.initialize(this, Array.isArray(data) ? data : [], 0, -1, [1], this.#one_of_decls); + if (!Array.isArray(data) && typeof data == "object") { + if ("keys" in data && data.keys != undefined) { + this.keys = data.keys; + } + } + } + get keys() { + return pb_1.Message.getRepeatedWrapperField(this, Key, 1) as Key[]; + } + set keys(value: Key[]) { + pb_1.Message.setRepeatedWrapperField(this, 1, value); + } + static fromObject(data: { + keys?: ReturnType[]; + }): Get { + const message = new Get({}); + if (data.keys != null) { + message.keys = data.keys.map(item => Key.fromObject(item)); + } + return message; + } + toObject() { + const data: { + keys?: ReturnType[]; + } = {}; + if (this.keys != null) { + data.keys = this.keys.map((item: Key) => item.toObject()); + } + return data; + } + serialize(): Uint8Array; + serialize(w: pb_1.BinaryWriter): void; + serialize(w?: pb_1.BinaryWriter): Uint8Array | void { + const writer = w || new pb_1.BinaryWriter(); + if (this.keys.length) + writer.writeRepeatedMessage(1, this.keys, (item: Key) => item.serialize(writer)); + if (!w) + return writer.getResultBuffer(); + } + static deserialize(bytes: Uint8Array | pb_1.BinaryReader): Get { + const reader = bytes instanceof pb_1.BinaryReader ? bytes : new pb_1.BinaryReader(bytes), message = new Get(); + while (reader.nextField()) { + if (reader.isEndGroup()) + break; + switch (reader.getFieldNumber()) { + case 1: + reader.readMessage(message.keys, () => pb_1.Message.addToRepeatedWrapperField(message, 1, Key.deserialize(reader), Key)); + break; + default: reader.skipField(); + } + } + return message; + } + serializeBinary(): Uint8Array { + return this.serialize(); + } + static deserializeBinary(bytes: Uint8Array): Get { + return Get.deserialize(bytes); + } + } + export class List extends pb_1.Message { + #one_of_decls: number[][] = [[3]]; + constructor(data?: any[] | ({ + query?: ListQuery; + reverse?: boolean; + } & (({ + limit?: number; + })))) { + super(); + pb_1.Message.initialize(this, Array.isArray(data) ? data : [], 0, -1, [], this.#one_of_decls); + if (!Array.isArray(data) && typeof data == "object") { + if ("query" in data && data.query != undefined) { + this.query = data.query; + } + if ("reverse" in data && data.reverse != undefined) { + this.reverse = data.reverse; + } + if ("limit" in data && data.limit != undefined) { + this.limit = data.limit; + } + } + } + get query() { + return pb_1.Message.getWrapperField(this, ListQuery, 1) as ListQuery; + } + set query(value: ListQuery) { + pb_1.Message.setWrapperField(this, 1, value); + } + get has_query() { + return pb_1.Message.getField(this, 1) != null; + } + get reverse() { + return pb_1.Message.getFieldWithDefault(this, 2, false) as boolean; + } + set reverse(value: boolean) { + pb_1.Message.setField(this, 2, value); + } + get limit() { + return pb_1.Message.getFieldWithDefault(this, 3, 0) as number; + } + set limit(value: number) { + pb_1.Message.setOneofField(this, 3, this.#one_of_decls[0], value); + } + get has_limit() { + return pb_1.Message.getField(this, 3) != null; + } + get _limit() { + const cases: { + [index: number]: "none" | "limit"; + } = { + 0: "none", + 3: "limit" + }; + return cases[pb_1.Message.computeOneofCase(this, [3])]; + } + static fromObject(data: { + query?: ReturnType; + reverse?: boolean; + limit?: number; + }): List { + const message = new List({}); + if (data.query != null) { + message.query = ListQuery.fromObject(data.query); + } + if (data.reverse != null) { + message.reverse = data.reverse; + } + if (data.limit != null) { + message.limit = data.limit; + } + return message; + } + toObject() { + const data: { + query?: ReturnType; + reverse?: boolean; + limit?: number; + } = {}; + if (this.query != null) { + data.query = this.query.toObject(); + } + if (this.reverse != null) { + data.reverse = this.reverse; + } + if (this.limit != null) { + data.limit = this.limit; + } + return data; + } + serialize(): Uint8Array; + serialize(w: pb_1.BinaryWriter): void; + serialize(w?: pb_1.BinaryWriter): Uint8Array | void { + const writer = w || new pb_1.BinaryWriter(); + if (this.has_query) + writer.writeMessage(1, this.query, () => this.query.serialize(writer)); + if (this.reverse != false) + writer.writeBool(2, this.reverse); + if (this.has_limit) + writer.writeUint64(3, this.limit); + if (!w) + return writer.getResultBuffer(); + } + static deserialize(bytes: Uint8Array | pb_1.BinaryReader): List { + const reader = bytes instanceof pb_1.BinaryReader ? bytes : new pb_1.BinaryReader(bytes), message = new List(); + while (reader.nextField()) { + if (reader.isEndGroup()) + break; + switch (reader.getFieldNumber()) { + case 1: + reader.readMessage(message.query, () => message.query = ListQuery.deserialize(reader)); + break; + case 2: + message.reverse = reader.readBool(); + break; + case 3: + message.limit = reader.readUint64(); + break; + default: reader.skipField(); + } + } + return message; + } + serializeBinary(): Uint8Array { + return this.serialize(); + } + static deserializeBinary(bytes: Uint8Array): List { + return List.deserialize(bytes); + } + } + export class Put extends pb_1.Message { + #one_of_decls: number[][] = []; + constructor(data?: any[] | { + keys?: Key[]; + values?: Uint8Array[]; + }) { + super(); + pb_1.Message.initialize(this, Array.isArray(data) ? data : [], 0, -1, [1, 2], this.#one_of_decls); + if (!Array.isArray(data) && typeof data == "object") { + if ("keys" in data && data.keys != undefined) { + this.keys = data.keys; + } + if ("values" in data && data.values != undefined) { + this.values = data.values; + } + } + } + get keys() { + return pb_1.Message.getRepeatedWrapperField(this, Key, 1) as Key[]; + } + set keys(value: Key[]) { + pb_1.Message.setRepeatedWrapperField(this, 1, value); + } + get values() { + return pb_1.Message.getFieldWithDefault(this, 2, []) as Uint8Array[]; + } + set values(value: Uint8Array[]) { + pb_1.Message.setField(this, 2, value); + } + static fromObject(data: { + keys?: ReturnType[]; + values?: Uint8Array[]; + }): Put { + const message = new Put({}); + if (data.keys != null) { + message.keys = data.keys.map(item => Key.fromObject(item)); + } + if (data.values != null) { + message.values = data.values; + } + return message; + } + toObject() { + const data: { + keys?: ReturnType[]; + values?: Uint8Array[]; + } = {}; + if (this.keys != null) { + data.keys = this.keys.map((item: Key) => item.toObject()); + } + if (this.values != null) { + data.values = this.values; + } + return data; + } + serialize(): Uint8Array; + serialize(w: pb_1.BinaryWriter): void; + serialize(w?: pb_1.BinaryWriter): Uint8Array | void { + const writer = w || new pb_1.BinaryWriter(); + if (this.keys.length) + writer.writeRepeatedMessage(1, this.keys, (item: Key) => item.serialize(writer)); + if (this.values.length) + writer.writeRepeatedBytes(2, this.values); + if (!w) + return writer.getResultBuffer(); + } + static deserialize(bytes: Uint8Array | pb_1.BinaryReader): Put { + const reader = bytes instanceof pb_1.BinaryReader ? bytes : new pb_1.BinaryReader(bytes), message = new Put(); + while (reader.nextField()) { + if (reader.isEndGroup()) + break; + switch (reader.getFieldNumber()) { + case 1: + reader.readMessage(message.keys, () => pb_1.Message.addToRepeatedWrapperField(message, 1, Key.deserialize(reader), Key)); + break; + case 2: + pb_1.Message.addToRepeatedField(message, 2, reader.readBytes()); + break; + default: reader.skipField(); + } + } + return message; + } + serializeBinary(): Uint8Array { + return this.serialize(); + } + static deserializeBinary(bytes: Uint8Array): Put { + return Put.deserialize(bytes); + } + } + export class Delete extends pb_1.Message { + #one_of_decls: number[][] = []; + constructor(data?: any[] | { + keys?: Key[]; + }) { + super(); + pb_1.Message.initialize(this, Array.isArray(data) ? data : [], 0, -1, [1], this.#one_of_decls); + if (!Array.isArray(data) && typeof data == "object") { + if ("keys" in data && data.keys != undefined) { + this.keys = data.keys; + } + } + } + get keys() { + return pb_1.Message.getRepeatedWrapperField(this, Key, 1) as Key[]; + } + set keys(value: Key[]) { + pb_1.Message.setRepeatedWrapperField(this, 1, value); + } + static fromObject(data: { + keys?: ReturnType[]; + }): Delete { + const message = new Delete({}); + if (data.keys != null) { + message.keys = data.keys.map(item => Key.fromObject(item)); + } + return message; + } + toObject() { + const data: { + keys?: ReturnType[]; + } = {}; + if (this.keys != null) { + data.keys = this.keys.map((item: Key) => item.toObject()); + } + return data; + } + serialize(): Uint8Array; + serialize(w: pb_1.BinaryWriter): void; + serialize(w?: pb_1.BinaryWriter): Uint8Array | void { + const writer = w || new pb_1.BinaryWriter(); + if (this.keys.length) + writer.writeRepeatedMessage(1, this.keys, (item: Key) => item.serialize(writer)); + if (!w) + return writer.getResultBuffer(); + } + static deserialize(bytes: Uint8Array | pb_1.BinaryReader): Delete { + const reader = bytes instanceof pb_1.BinaryReader ? bytes : new pb_1.BinaryReader(bytes), message = new Delete(); + while (reader.nextField()) { + if (reader.isEndGroup()) + break; + switch (reader.getFieldNumber()) { + case 1: + reader.readMessage(message.keys, () => pb_1.Message.addToRepeatedWrapperField(message, 1, Key.deserialize(reader), Key)); + break; + default: reader.skipField(); + } + } + return message; + } + serializeBinary(): Uint8Array { + return this.serialize(); + } + static deserializeBinary(bytes: Uint8Array): Delete { + return Delete.deserialize(bytes); + } + } + export class Drop extends pb_1.Message { + #one_of_decls: number[][] = []; + constructor(data?: any[] | {}) { + super(); + pb_1.Message.initialize(this, Array.isArray(data) ? data : [], 0, -1, [], this.#one_of_decls); + if (!Array.isArray(data) && typeof data == "object") { } + } + static fromObject(data: {}): Drop { + const message = new Drop({}); + return message; + } + toObject() { + const data: {} = {}; + return data; + } + serialize(): Uint8Array; + serialize(w: pb_1.BinaryWriter): void; + serialize(w?: pb_1.BinaryWriter): Uint8Array | void { + const writer = w || new pb_1.BinaryWriter(); + if (!w) + return writer.getResultBuffer(); + } + static deserialize(bytes: Uint8Array | pb_1.BinaryReader): Drop { + const reader = bytes instanceof pb_1.BinaryReader ? bytes : new pb_1.BinaryReader(bytes), message = new Drop(); + while (reader.nextField()) { + if (reader.isEndGroup()) + break; + switch (reader.getFieldNumber()) { + default: reader.skipField(); + } + } + return message; + } + serializeBinary(): Uint8Array { + return this.serialize(); + } + static deserializeBinary(bytes: Uint8Array): Drop { + return Drop.deserialize(bytes); + } + } + } + export class Response extends pb_1.Message { + #one_of_decls: number[][] = [[2, 3, 4, 5, 6, 7]]; + constructor(data?: any[] | ({ + request_id?: number; + } & (({ + error?: Response.Error; + get?: never; + list?: never; + put?: never; + delete?: never; + drop?: never; + } | { + error?: never; + get?: Response.Get; + list?: never; + put?: never; + delete?: never; + drop?: never; + } | { + error?: never; + get?: never; + list?: Response.List; + put?: never; + delete?: never; + drop?: never; + } | { + error?: never; + get?: never; + list?: never; + put?: Response.Put; + delete?: never; + drop?: never; + } | { + error?: never; + get?: never; + list?: never; + put?: never; + delete?: Response.Delete; + drop?: never; + } | { + error?: never; + get?: never; + list?: never; + put?: never; + delete?: never; + drop?: Response.Drop; + })))) { + super(); + pb_1.Message.initialize(this, Array.isArray(data) ? data : [], 0, -1, [], this.#one_of_decls); + if (!Array.isArray(data) && typeof data == "object") { + if ("request_id" in data && data.request_id != undefined) { + this.request_id = data.request_id; + } + if ("error" in data && data.error != undefined) { + this.error = data.error; + } + if ("get" in data && data.get != undefined) { + this.get = data.get; + } + if ("list" in data && data.list != undefined) { + this.list = data.list; + } + if ("put" in data && data.put != undefined) { + this.put = data.put; + } + if ("delete" in data && data.delete != undefined) { + this.delete = data.delete; + } + if ("drop" in data && data.drop != undefined) { + this.drop = data.drop; + } + } + } + get request_id() { + return pb_1.Message.getFieldWithDefault(this, 1, 0) as number; + } + set request_id(value: number) { + pb_1.Message.setField(this, 1, value); + } + get error() { + return pb_1.Message.getWrapperField(this, Response.Error, 2) as Response.Error; + } + set error(value: Response.Error) { + pb_1.Message.setOneofWrapperField(this, 2, this.#one_of_decls[0], value); + } + get has_error() { + return pb_1.Message.getField(this, 2) != null; + } + get get() { + return pb_1.Message.getWrapperField(this, Response.Get, 3) as Response.Get; + } + set get(value: Response.Get) { + pb_1.Message.setOneofWrapperField(this, 3, this.#one_of_decls[0], value); + } + get has_get() { + return pb_1.Message.getField(this, 3) != null; + } + get list() { + return pb_1.Message.getWrapperField(this, Response.List, 4) as Response.List; + } + set list(value: Response.List) { + pb_1.Message.setOneofWrapperField(this, 4, this.#one_of_decls[0], value); + } + get has_list() { + return pb_1.Message.getField(this, 4) != null; + } + get put() { + return pb_1.Message.getWrapperField(this, Response.Put, 5) as Response.Put; + } + set put(value: Response.Put) { + pb_1.Message.setOneofWrapperField(this, 5, this.#one_of_decls[0], value); + } + get has_put() { + return pb_1.Message.getField(this, 5) != null; + } + get delete() { + return pb_1.Message.getWrapperField(this, Response.Delete, 6) as Response.Delete; + } + set delete(value: Response.Delete) { + pb_1.Message.setOneofWrapperField(this, 6, this.#one_of_decls[0], value); + } + get has_delete() { + return pb_1.Message.getField(this, 6) != null; + } + get drop() { + return pb_1.Message.getWrapperField(this, Response.Drop, 7) as Response.Drop; + } + set drop(value: Response.Drop) { + pb_1.Message.setOneofWrapperField(this, 7, this.#one_of_decls[0], value); + } + get has_drop() { + return pb_1.Message.getField(this, 7) != null; + } + get data() { + const cases: { + [index: number]: "none" | "error" | "get" | "list" | "put" | "delete" | "drop"; + } = { + 0: "none", + 2: "error", + 3: "get", + 4: "list", + 5: "put", + 6: "delete", + 7: "drop" + }; + return cases[pb_1.Message.computeOneofCase(this, [2, 3, 4, 5, 6, 7])]; + } + static fromObject(data: { + request_id?: number; + error?: ReturnType; + get?: ReturnType; + list?: ReturnType; + put?: ReturnType; + delete?: ReturnType; + drop?: ReturnType; + }): Response { + const message = new Response({}); + if (data.request_id != null) { + message.request_id = data.request_id; + } + if (data.error != null) { + message.error = Response.Error.fromObject(data.error); + } + if (data.get != null) { + message.get = Response.Get.fromObject(data.get); + } + if (data.list != null) { + message.list = Response.List.fromObject(data.list); + } + if (data.put != null) { + message.put = Response.Put.fromObject(data.put); + } + if (data.delete != null) { + message.delete = Response.Delete.fromObject(data.delete); + } + if (data.drop != null) { + message.drop = Response.Drop.fromObject(data.drop); + } + return message; + } + toObject() { + const data: { + request_id?: number; + error?: ReturnType; + get?: ReturnType; + list?: ReturnType; + put?: ReturnType; + delete?: ReturnType; + drop?: ReturnType; + } = {}; + if (this.request_id != null) { + data.request_id = this.request_id; + } + if (this.error != null) { + data.error = this.error.toObject(); + } + if (this.get != null) { + data.get = this.get.toObject(); + } + if (this.list != null) { + data.list = this.list.toObject(); + } + if (this.put != null) { + data.put = this.put.toObject(); + } + if (this.delete != null) { + data.delete = this.delete.toObject(); + } + if (this.drop != null) { + data.drop = this.drop.toObject(); + } + return data; + } + serialize(): Uint8Array; + serialize(w: pb_1.BinaryWriter): void; + serialize(w?: pb_1.BinaryWriter): Uint8Array | void { + const writer = w || new pb_1.BinaryWriter(); + if (this.request_id != 0) + writer.writeUint32(1, this.request_id); + if (this.has_error) + writer.writeMessage(2, this.error, () => this.error.serialize(writer)); + if (this.has_get) + writer.writeMessage(3, this.get, () => this.get.serialize(writer)); + if (this.has_list) + writer.writeMessage(4, this.list, () => this.list.serialize(writer)); + if (this.has_put) + writer.writeMessage(5, this.put, () => this.put.serialize(writer)); + if (this.has_delete) + writer.writeMessage(6, this.delete, () => this.delete.serialize(writer)); + if (this.has_drop) + writer.writeMessage(7, this.drop, () => this.drop.serialize(writer)); + if (!w) + return writer.getResultBuffer(); + } + static deserialize(bytes: Uint8Array | pb_1.BinaryReader): Response { + const reader = bytes instanceof pb_1.BinaryReader ? bytes : new pb_1.BinaryReader(bytes), message = new Response(); + while (reader.nextField()) { + if (reader.isEndGroup()) + break; + switch (reader.getFieldNumber()) { + case 1: + message.request_id = reader.readUint32(); + break; + case 2: + reader.readMessage(message.error, () => message.error = Response.Error.deserialize(reader)); + break; + case 3: + reader.readMessage(message.get, () => message.get = Response.Get.deserialize(reader)); + break; + case 4: + reader.readMessage(message.list, () => message.list = Response.List.deserialize(reader)); + break; + case 5: + reader.readMessage(message.put, () => message.put = Response.Put.deserialize(reader)); + break; + case 6: + reader.readMessage(message.delete, () => message.delete = Response.Delete.deserialize(reader)); + break; + case 7: + reader.readMessage(message.drop, () => message.drop = Response.Drop.deserialize(reader)); + break; + default: reader.skipField(); + } + } + return message; + } + serializeBinary(): Uint8Array { + return this.serialize(); + } + static deserializeBinary(bytes: Uint8Array): Response { + return Response.deserialize(bytes); + } + } + export namespace Response { + export class Error extends pb_1.Message { + #one_of_decls: number[][] = []; + constructor(data?: any[] | { + message?: string; + }) { + super(); + pb_1.Message.initialize(this, Array.isArray(data) ? data : [], 0, -1, [], this.#one_of_decls); + if (!Array.isArray(data) && typeof data == "object") { + if ("message" in data && data.message != undefined) { + this.message = data.message; + } + } + } + get message() { + return pb_1.Message.getFieldWithDefault(this, 1, "") as string; + } + set message(value: string) { + pb_1.Message.setField(this, 1, value); + } + static fromObject(data: { + message?: string; + }): Error { + const message = new Error({}); + if (data.message != null) { + message.message = data.message; + } + return message; + } + toObject() { + const data: { + message?: string; + } = {}; + if (this.message != null) { + data.message = this.message; + } + return data; + } + serialize(): Uint8Array; + serialize(w: pb_1.BinaryWriter): void; + serialize(w?: pb_1.BinaryWriter): Uint8Array | void { + const writer = w || new pb_1.BinaryWriter(); + if (this.message.length) + writer.writeString(1, this.message); + if (!w) + return writer.getResultBuffer(); + } + static deserialize(bytes: Uint8Array | pb_1.BinaryReader): Error { + const reader = bytes instanceof pb_1.BinaryReader ? bytes : new pb_1.BinaryReader(bytes), message = new Error(); + while (reader.nextField()) { + if (reader.isEndGroup()) + break; + switch (reader.getFieldNumber()) { + case 1: + message.message = reader.readString(); + break; + default: reader.skipField(); + } + } + return message; + } + serializeBinary(): Uint8Array { + return this.serialize(); + } + static deserializeBinary(bytes: Uint8Array): Error { + return Error.deserialize(bytes); + } + } + export class Get extends pb_1.Message { + #one_of_decls: number[][] = []; + constructor(data?: any[] | { + keys?: Key[]; + values?: Entry[]; + }) { + super(); + pb_1.Message.initialize(this, Array.isArray(data) ? data : [], 0, -1, [1, 2], this.#one_of_decls); + if (!Array.isArray(data) && typeof data == "object") { + if ("keys" in data && data.keys != undefined) { + this.keys = data.keys; + } + if ("values" in data && data.values != undefined) { + this.values = data.values; + } + } + } + get keys() { + return pb_1.Message.getRepeatedWrapperField(this, Key, 1) as Key[]; + } + set keys(value: Key[]) { + pb_1.Message.setRepeatedWrapperField(this, 1, value); + } + get values() { + return pb_1.Message.getRepeatedWrapperField(this, Entry, 2) as Entry[]; + } + set values(value: Entry[]) { + pb_1.Message.setRepeatedWrapperField(this, 2, value); + } + static fromObject(data: { + keys?: ReturnType[]; + values?: ReturnType[]; + }): Get { + const message = new Get({}); + if (data.keys != null) { + message.keys = data.keys.map(item => Key.fromObject(item)); + } + if (data.values != null) { + message.values = data.values.map(item => Entry.fromObject(item)); + } + return message; + } + toObject() { + const data: { + keys?: ReturnType[]; + values?: ReturnType[]; + } = {}; + if (this.keys != null) { + data.keys = this.keys.map((item: Key) => item.toObject()); + } + if (this.values != null) { + data.values = this.values.map((item: Entry) => item.toObject()); + } + return data; + } + serialize(): Uint8Array; + serialize(w: pb_1.BinaryWriter): void; + serialize(w?: pb_1.BinaryWriter): Uint8Array | void { + const writer = w || new pb_1.BinaryWriter(); + if (this.keys.length) + writer.writeRepeatedMessage(1, this.keys, (item: Key) => item.serialize(writer)); + if (this.values.length) + writer.writeRepeatedMessage(2, this.values, (item: Entry) => item.serialize(writer)); + if (!w) + return writer.getResultBuffer(); + } + static deserialize(bytes: Uint8Array | pb_1.BinaryReader): Get { + const reader = bytes instanceof pb_1.BinaryReader ? bytes : new pb_1.BinaryReader(bytes), message = new Get(); + while (reader.nextField()) { + if (reader.isEndGroup()) + break; + switch (reader.getFieldNumber()) { + case 1: + reader.readMessage(message.keys, () => pb_1.Message.addToRepeatedWrapperField(message, 1, Key.deserialize(reader), Key)); + break; + case 2: + reader.readMessage(message.values, () => pb_1.Message.addToRepeatedWrapperField(message, 2, Entry.deserialize(reader), Entry)); + break; + default: reader.skipField(); + } + } + return message; + } + serializeBinary(): Uint8Array { + return this.serialize(); + } + static deserializeBinary(bytes: Uint8Array): Get { + return Get.deserialize(bytes); + } + } + export class List extends pb_1.Message { + #one_of_decls: number[][] = []; + constructor(data?: any[] | { + keys?: Key[]; + values?: Entry[]; + }) { + super(); + pb_1.Message.initialize(this, Array.isArray(data) ? data : [], 0, -1, [1, 2], this.#one_of_decls); + if (!Array.isArray(data) && typeof data == "object") { + if ("keys" in data && data.keys != undefined) { + this.keys = data.keys; + } + if ("values" in data && data.values != undefined) { + this.values = data.values; + } + } + } + get keys() { + return pb_1.Message.getRepeatedWrapperField(this, Key, 1) as Key[]; + } + set keys(value: Key[]) { + pb_1.Message.setRepeatedWrapperField(this, 1, value); + } + get values() { + return pb_1.Message.getRepeatedWrapperField(this, Entry, 2) as Entry[]; + } + set values(value: Entry[]) { + pb_1.Message.setRepeatedWrapperField(this, 2, value); + } + static fromObject(data: { + keys?: ReturnType[]; + values?: ReturnType[]; + }): List { + const message = new List({}); + if (data.keys != null) { + message.keys = data.keys.map(item => Key.fromObject(item)); + } + if (data.values != null) { + message.values = data.values.map(item => Entry.fromObject(item)); + } + return message; + } + toObject() { + const data: { + keys?: ReturnType[]; + values?: ReturnType[]; + } = {}; + if (this.keys != null) { + data.keys = this.keys.map((item: Key) => item.toObject()); + } + if (this.values != null) { + data.values = this.values.map((item: Entry) => item.toObject()); + } + return data; + } + serialize(): Uint8Array; + serialize(w: pb_1.BinaryWriter): void; + serialize(w?: pb_1.BinaryWriter): Uint8Array | void { + const writer = w || new pb_1.BinaryWriter(); + if (this.keys.length) + writer.writeRepeatedMessage(1, this.keys, (item: Key) => item.serialize(writer)); + if (this.values.length) + writer.writeRepeatedMessage(2, this.values, (item: Entry) => item.serialize(writer)); + if (!w) + return writer.getResultBuffer(); + } + static deserialize(bytes: Uint8Array | pb_1.BinaryReader): List { + const reader = bytes instanceof pb_1.BinaryReader ? bytes : new pb_1.BinaryReader(bytes), message = new List(); + while (reader.nextField()) { + if (reader.isEndGroup()) + break; + switch (reader.getFieldNumber()) { + case 1: + reader.readMessage(message.keys, () => pb_1.Message.addToRepeatedWrapperField(message, 1, Key.deserialize(reader), Key)); + break; + case 2: + reader.readMessage(message.values, () => pb_1.Message.addToRepeatedWrapperField(message, 2, Entry.deserialize(reader), Entry)); + break; + default: reader.skipField(); + } + } + return message; + } + serializeBinary(): Uint8Array { + return this.serialize(); + } + static deserializeBinary(bytes: Uint8Array): List { + return List.deserialize(bytes); + } + } + export class Put extends pb_1.Message { + #one_of_decls: number[][] = []; + constructor(data?: any[] | {}) { + super(); + pb_1.Message.initialize(this, Array.isArray(data) ? data : [], 0, -1, [], this.#one_of_decls); + if (!Array.isArray(data) && typeof data == "object") { } + } + static fromObject(data: {}): Put { + const message = new Put({}); + return message; + } + toObject() { + const data: {} = {}; + return data; + } + serialize(): Uint8Array; + serialize(w: pb_1.BinaryWriter): void; + serialize(w?: pb_1.BinaryWriter): Uint8Array | void { + const writer = w || new pb_1.BinaryWriter(); + if (!w) + return writer.getResultBuffer(); + } + static deserialize(bytes: Uint8Array | pb_1.BinaryReader): Put { + const reader = bytes instanceof pb_1.BinaryReader ? bytes : new pb_1.BinaryReader(bytes), message = new Put(); + while (reader.nextField()) { + if (reader.isEndGroup()) + break; + switch (reader.getFieldNumber()) { + default: reader.skipField(); + } + } + return message; + } + serializeBinary(): Uint8Array { + return this.serialize(); + } + static deserializeBinary(bytes: Uint8Array): Put { + return Put.deserialize(bytes); + } + } + export class Delete extends pb_1.Message { + #one_of_decls: number[][] = []; + constructor(data?: any[] | {}) { + super(); + pb_1.Message.initialize(this, Array.isArray(data) ? data : [], 0, -1, [], this.#one_of_decls); + if (!Array.isArray(data) && typeof data == "object") { } + } + static fromObject(data: {}): Delete { + const message = new Delete({}); + return message; + } + toObject() { + const data: {} = {}; + return data; + } + serialize(): Uint8Array; + serialize(w: pb_1.BinaryWriter): void; + serialize(w?: pb_1.BinaryWriter): Uint8Array | void { + const writer = w || new pb_1.BinaryWriter(); + if (!w) + return writer.getResultBuffer(); + } + static deserialize(bytes: Uint8Array | pb_1.BinaryReader): Delete { + const reader = bytes instanceof pb_1.BinaryReader ? bytes : new pb_1.BinaryReader(bytes), message = new Delete(); + while (reader.nextField()) { + if (reader.isEndGroup()) + break; + switch (reader.getFieldNumber()) { + default: reader.skipField(); + } + } + return message; + } + serializeBinary(): Uint8Array { + return this.serialize(); + } + static deserializeBinary(bytes: Uint8Array): Delete { + return Delete.deserialize(bytes); + } + } + export class Drop extends pb_1.Message { + #one_of_decls: number[][] = []; + constructor(data?: any[] | {}) { + super(); + pb_1.Message.initialize(this, Array.isArray(data) ? data : [], 0, -1, [], this.#one_of_decls); + if (!Array.isArray(data) && typeof data == "object") { } + } + static fromObject(data: {}): Drop { + const message = new Drop({}); + return message; + } + toObject() { + const data: {} = {}; + return data; + } + serialize(): Uint8Array; + serialize(w: pb_1.BinaryWriter): void; + serialize(w?: pb_1.BinaryWriter): Uint8Array | void { + const writer = w || new pb_1.BinaryWriter(); + if (!w) + return writer.getResultBuffer(); + } + static deserialize(bytes: Uint8Array | pb_1.BinaryReader): Drop { + const reader = bytes instanceof pb_1.BinaryReader ? bytes : new pb_1.BinaryReader(bytes), message = new Drop(); + while (reader.nextField()) { + if (reader.isEndGroup()) + break; + switch (reader.getFieldNumber()) { + default: reader.skipField(); + } + } + return message; + } + serializeBinary(): Uint8Array { + return this.serialize(); + } + static deserializeBinary(bytes: Uint8Array): Drop { + return Drop.deserialize(bytes); + } + } + } + export class Key extends pb_1.Message { + #one_of_decls: number[][] = []; + constructor(data?: any[] | { + segments?: Uint8Array[]; + }) { + super(); + pb_1.Message.initialize(this, Array.isArray(data) ? data : [], 0, -1, [1], this.#one_of_decls); + if (!Array.isArray(data) && typeof data == "object") { + if ("segments" in data && data.segments != undefined) { + this.segments = data.segments; + } + } + } + get segments() { + return pb_1.Message.getFieldWithDefault(this, 1, []) as Uint8Array[]; + } + set segments(value: Uint8Array[]) { + pb_1.Message.setField(this, 1, value); + } + static fromObject(data: { + segments?: Uint8Array[]; + }): Key { + const message = new Key({}); + if (data.segments != null) { + message.segments = data.segments; + } + return message; + } + toObject() { + const data: { + segments?: Uint8Array[]; + } = {}; + if (this.segments != null) { + data.segments = this.segments; + } + return data; + } + serialize(): Uint8Array; + serialize(w: pb_1.BinaryWriter): void; + serialize(w?: pb_1.BinaryWriter): Uint8Array | void { + const writer = w || new pb_1.BinaryWriter(); + if (this.segments.length) + writer.writeRepeatedBytes(1, this.segments); + if (!w) + return writer.getResultBuffer(); + } + static deserialize(bytes: Uint8Array | pb_1.BinaryReader): Key { + const reader = bytes instanceof pb_1.BinaryReader ? bytes : new pb_1.BinaryReader(bytes), message = new Key(); + while (reader.nextField()) { + if (reader.isEndGroup()) + break; + switch (reader.getFieldNumber()) { + case 1: + pb_1.Message.addToRepeatedField(message, 1, reader.readBytes()); + break; + default: reader.skipField(); + } + } + return message; + } + serializeBinary(): Uint8Array { + return this.serialize(); + } + static deserializeBinary(bytes: Uint8Array): Key { + return Key.deserialize(bytes); + } + } + export class Entry extends pb_1.Message { + #one_of_decls: number[][] = [[2]]; + constructor(data?: any[] | ({ + value?: Uint8Array; + } & (({ + metadata?: Metadata; + })))) { + super(); + pb_1.Message.initialize(this, Array.isArray(data) ? data : [], 0, -1, [], this.#one_of_decls); + if (!Array.isArray(data) && typeof data == "object") { + if ("value" in data && data.value != undefined) { + this.value = data.value; + } + if ("metadata" in data && data.metadata != undefined) { + this.metadata = data.metadata; + } + } + } + get value() { + return pb_1.Message.getFieldWithDefault(this, 1, new Uint8Array(0)) as Uint8Array; + } + set value(value: Uint8Array) { + pb_1.Message.setField(this, 1, value); + } + get metadata() { + return pb_1.Message.getWrapperField(this, Metadata, 2) as Metadata; + } + set metadata(value: Metadata) { + pb_1.Message.setOneofWrapperField(this, 2, this.#one_of_decls[0], value); + } + get has_metadata() { + return pb_1.Message.getField(this, 2) != null; + } + get _metadata() { + const cases: { + [index: number]: "none" | "metadata"; + } = { + 0: "none", + 2: "metadata" + }; + return cases[pb_1.Message.computeOneofCase(this, [2])]; + } + static fromObject(data: { + value?: Uint8Array; + metadata?: ReturnType; + }): Entry { + const message = new Entry({}); + if (data.value != null) { + message.value = data.value; + } + if (data.metadata != null) { + message.metadata = Metadata.fromObject(data.metadata); + } + return message; + } + toObject() { + const data: { + value?: Uint8Array; + metadata?: ReturnType; + } = {}; + if (this.value != null) { + data.value = this.value; + } + if (this.metadata != null) { + data.metadata = this.metadata.toObject(); + } + return data; + } + serialize(): Uint8Array; + serialize(w: pb_1.BinaryWriter): void; + serialize(w?: pb_1.BinaryWriter): Uint8Array | void { + const writer = w || new pb_1.BinaryWriter(); + if (this.value.length) + writer.writeBytes(1, this.value); + if (this.has_metadata) + writer.writeMessage(2, this.metadata, () => this.metadata.serialize(writer)); + if (!w) + return writer.getResultBuffer(); + } + static deserialize(bytes: Uint8Array | pb_1.BinaryReader): Entry { + const reader = bytes instanceof pb_1.BinaryReader ? bytes : new pb_1.BinaryReader(bytes), message = new Entry(); + while (reader.nextField()) { + if (reader.isEndGroup()) + break; + switch (reader.getFieldNumber()) { + case 1: + message.value = reader.readBytes(); + break; + case 2: + reader.readMessage(message.metadata, () => message.metadata = Metadata.deserialize(reader)); + break; + default: reader.skipField(); + } + } + return message; + } + serializeBinary(): Uint8Array { + return this.serialize(); + } + static deserializeBinary(bytes: Uint8Array): Entry { + return Entry.deserialize(bytes); + } + } + export class Metadata extends pb_1.Message { + #one_of_decls: number[][] = []; + constructor(data?: any[] | { + _version?: Uint8Array; + create_ts?: number; + }) { + super(); + pb_1.Message.initialize(this, Array.isArray(data) ? data : [], 0, -1, [], this.#one_of_decls); + if (!Array.isArray(data) && typeof data == "object") { + if ("_version" in data && data._version != undefined) { + this._version = data._version; + } + if ("create_ts" in data && data.create_ts != undefined) { + this.create_ts = data.create_ts; + } + } + } + get _version() { + return pb_1.Message.getFieldWithDefault(this, 1, new Uint8Array(0)) as Uint8Array; + } + set _version(value: Uint8Array) { + pb_1.Message.setField(this, 1, value); + } + get create_ts() { + return pb_1.Message.getFieldWithDefault(this, 2, 0) as number; + } + set create_ts(value: number) { + pb_1.Message.setField(this, 2, value); + } + static fromObject(data: { + _version?: Uint8Array; + create_ts?: number; + }): Metadata { + const message = new Metadata({}); + if (data._version != null) { + message._version = data._version; + } + if (data.create_ts != null) { + message.create_ts = data.create_ts; + } + return message; + } + toObject() { + const data: { + _version?: Uint8Array; + create_ts?: number; + } = {}; + if (this._version != null) { + data._version = this._version; + } + if (this.create_ts != null) { + data.create_ts = this.create_ts; + } + return data; + } + serialize(): Uint8Array; + serialize(w: pb_1.BinaryWriter): void; + serialize(w?: pb_1.BinaryWriter): Uint8Array | void { + const writer = w || new pb_1.BinaryWriter(); + if (this._version.length) + writer.writeBytes(1, this._version); + if (this.create_ts != 0) + writer.writeInt64(2, this.create_ts); + if (!w) + return writer.getResultBuffer(); + } + static deserialize(bytes: Uint8Array | pb_1.BinaryReader): Metadata { + const reader = bytes instanceof pb_1.BinaryReader ? bytes : new pb_1.BinaryReader(bytes), message = new Metadata(); + while (reader.nextField()) { + if (reader.isEndGroup()) + break; + switch (reader.getFieldNumber()) { + case 1: + message._version = reader.readBytes(); + break; + case 2: + message.create_ts = reader.readInt64(); + break; + default: reader.skipField(); + } + } + return message; + } + serializeBinary(): Uint8Array { + return this.serialize(); + } + static deserializeBinary(bytes: Uint8Array): Metadata { + return Metadata.deserialize(bytes); + } + } + export class ListQuery extends pb_1.Message { + #one_of_decls: number[][] = [[1, 2, 3]]; + constructor(data?: any[] | ({} & (({ + all?: ListQuery.All; + range?: never; + prefix?: never; + } | { + all?: never; + range?: ListQuery.Range; + prefix?: never; + } | { + all?: never; + range?: never; + prefix?: ListQuery.Prefix; + })))) { + super(); + pb_1.Message.initialize(this, Array.isArray(data) ? data : [], 0, -1, [], this.#one_of_decls); + if (!Array.isArray(data) && typeof data == "object") { + if ("all" in data && data.all != undefined) { + this.all = data.all; + } + if ("range" in data && data.range != undefined) { + this.range = data.range; + } + if ("prefix" in data && data.prefix != undefined) { + this.prefix = data.prefix; + } + } + } + get all() { + return pb_1.Message.getWrapperField(this, ListQuery.All, 1) as ListQuery.All; + } + set all(value: ListQuery.All) { + pb_1.Message.setOneofWrapperField(this, 1, this.#one_of_decls[0], value); + } + get has_all() { + return pb_1.Message.getField(this, 1) != null; + } + get range() { + return pb_1.Message.getWrapperField(this, ListQuery.Range, 2) as ListQuery.Range; + } + set range(value: ListQuery.Range) { + pb_1.Message.setOneofWrapperField(this, 2, this.#one_of_decls[0], value); + } + get has_range() { + return pb_1.Message.getField(this, 2) != null; + } + get prefix() { + return pb_1.Message.getWrapperField(this, ListQuery.Prefix, 3) as ListQuery.Prefix; + } + set prefix(value: ListQuery.Prefix) { + pb_1.Message.setOneofWrapperField(this, 3, this.#one_of_decls[0], value); + } + get has_prefix() { + return pb_1.Message.getField(this, 3) != null; + } + get kind() { + const cases: { + [index: number]: "none" | "all" | "range" | "prefix"; + } = { + 0: "none", + 1: "all", + 2: "range", + 3: "prefix" + }; + return cases[pb_1.Message.computeOneofCase(this, [1, 2, 3])]; + } + static fromObject(data: { + all?: ReturnType; + range?: ReturnType; + prefix?: ReturnType; + }): ListQuery { + const message = new ListQuery({}); + if (data.all != null) { + message.all = ListQuery.All.fromObject(data.all); + } + if (data.range != null) { + message.range = ListQuery.Range.fromObject(data.range); + } + if (data.prefix != null) { + message.prefix = ListQuery.Prefix.fromObject(data.prefix); + } + return message; + } + toObject() { + const data: { + all?: ReturnType; + range?: ReturnType; + prefix?: ReturnType; + } = {}; + if (this.all != null) { + data.all = this.all.toObject(); + } + if (this.range != null) { + data.range = this.range.toObject(); + } + if (this.prefix != null) { + data.prefix = this.prefix.toObject(); + } + return data; + } + serialize(): Uint8Array; + serialize(w: pb_1.BinaryWriter): void; + serialize(w?: pb_1.BinaryWriter): Uint8Array | void { + const writer = w || new pb_1.BinaryWriter(); + if (this.has_all) + writer.writeMessage(1, this.all, () => this.all.serialize(writer)); + if (this.has_range) + writer.writeMessage(2, this.range, () => this.range.serialize(writer)); + if (this.has_prefix) + writer.writeMessage(3, this.prefix, () => this.prefix.serialize(writer)); + if (!w) + return writer.getResultBuffer(); + } + static deserialize(bytes: Uint8Array | pb_1.BinaryReader): ListQuery { + const reader = bytes instanceof pb_1.BinaryReader ? bytes : new pb_1.BinaryReader(bytes), message = new ListQuery(); + while (reader.nextField()) { + if (reader.isEndGroup()) + break; + switch (reader.getFieldNumber()) { + case 1: + reader.readMessage(message.all, () => message.all = ListQuery.All.deserialize(reader)); + break; + case 2: + reader.readMessage(message.range, () => message.range = ListQuery.Range.deserialize(reader)); + break; + case 3: + reader.readMessage(message.prefix, () => message.prefix = ListQuery.Prefix.deserialize(reader)); + break; + default: reader.skipField(); + } + } + return message; + } + serializeBinary(): Uint8Array { + return this.serialize(); + } + static deserializeBinary(bytes: Uint8Array): ListQuery { + return ListQuery.deserialize(bytes); + } + } + export namespace ListQuery { + export class All extends pb_1.Message { + #one_of_decls: number[][] = []; + constructor(data?: any[] | {}) { + super(); + pb_1.Message.initialize(this, Array.isArray(data) ? data : [], 0, -1, [], this.#one_of_decls); + if (!Array.isArray(data) && typeof data == "object") { } + } + static fromObject(data: {}): All { + const message = new All({}); + return message; + } + toObject() { + const data: {} = {}; + return data; + } + serialize(): Uint8Array; + serialize(w: pb_1.BinaryWriter): void; + serialize(w?: pb_1.BinaryWriter): Uint8Array | void { + const writer = w || new pb_1.BinaryWriter(); + if (!w) + return writer.getResultBuffer(); + } + static deserialize(bytes: Uint8Array | pb_1.BinaryReader): All { + const reader = bytes instanceof pb_1.BinaryReader ? bytes : new pb_1.BinaryReader(bytes), message = new All(); + while (reader.nextField()) { + if (reader.isEndGroup()) + break; + switch (reader.getFieldNumber()) { + default: reader.skipField(); + } + } + return message; + } + serializeBinary(): Uint8Array { + return this.serialize(); + } + static deserializeBinary(bytes: Uint8Array): All { + return All.deserialize(bytes); + } + } + export class Range extends pb_1.Message { + #one_of_decls: number[][] = []; + constructor(data?: any[] | { + start?: Key; + end?: Key; + exclusive?: boolean; + }) { + super(); + pb_1.Message.initialize(this, Array.isArray(data) ? data : [], 0, -1, [], this.#one_of_decls); + if (!Array.isArray(data) && typeof data == "object") { + if ("start" in data && data.start != undefined) { + this.start = data.start; + } + if ("end" in data && data.end != undefined) { + this.end = data.end; + } + if ("exclusive" in data && data.exclusive != undefined) { + this.exclusive = data.exclusive; + } + } + } + get start() { + return pb_1.Message.getWrapperField(this, Key, 1) as Key; + } + set start(value: Key) { + pb_1.Message.setWrapperField(this, 1, value); + } + get has_start() { + return pb_1.Message.getField(this, 1) != null; + } + get end() { + return pb_1.Message.getWrapperField(this, Key, 2) as Key; + } + set end(value: Key) { + pb_1.Message.setWrapperField(this, 2, value); + } + get has_end() { + return pb_1.Message.getField(this, 2) != null; + } + get exclusive() { + return pb_1.Message.getFieldWithDefault(this, 3, false) as boolean; + } + set exclusive(value: boolean) { + pb_1.Message.setField(this, 3, value); + } + static fromObject(data: { + start?: ReturnType; + end?: ReturnType; + exclusive?: boolean; + }): Range { + const message = new Range({}); + if (data.start != null) { + message.start = Key.fromObject(data.start); + } + if (data.end != null) { + message.end = Key.fromObject(data.end); + } + if (data.exclusive != null) { + message.exclusive = data.exclusive; + } + return message; + } + toObject() { + const data: { + start?: ReturnType; + end?: ReturnType; + exclusive?: boolean; + } = {}; + if (this.start != null) { + data.start = this.start.toObject(); + } + if (this.end != null) { + data.end = this.end.toObject(); + } + if (this.exclusive != null) { + data.exclusive = this.exclusive; + } + return data; + } + serialize(): Uint8Array; + serialize(w: pb_1.BinaryWriter): void; + serialize(w?: pb_1.BinaryWriter): Uint8Array | void { + const writer = w || new pb_1.BinaryWriter(); + if (this.has_start) + writer.writeMessage(1, this.start, () => this.start.serialize(writer)); + if (this.has_end) + writer.writeMessage(2, this.end, () => this.end.serialize(writer)); + if (this.exclusive != false) + writer.writeBool(3, this.exclusive); + if (!w) + return writer.getResultBuffer(); + } + static deserialize(bytes: Uint8Array | pb_1.BinaryReader): Range { + const reader = bytes instanceof pb_1.BinaryReader ? bytes : new pb_1.BinaryReader(bytes), message = new Range(); + while (reader.nextField()) { + if (reader.isEndGroup()) + break; + switch (reader.getFieldNumber()) { + case 1: + reader.readMessage(message.start, () => message.start = Key.deserialize(reader)); + break; + case 2: + reader.readMessage(message.end, () => message.end = Key.deserialize(reader)); + break; + case 3: + message.exclusive = reader.readBool(); + break; + default: reader.skipField(); + } + } + return message; + } + serializeBinary(): Uint8Array { + return this.serialize(); + } + static deserializeBinary(bytes: Uint8Array): Range { + return Range.deserialize(bytes); + } + } + export class Prefix extends pb_1.Message { + #one_of_decls: number[][] = []; + constructor(data?: any[] | { + key?: Key; + }) { + super(); + pb_1.Message.initialize(this, Array.isArray(data) ? data : [], 0, -1, [], this.#one_of_decls); + if (!Array.isArray(data) && typeof data == "object") { + if ("key" in data && data.key != undefined) { + this.key = data.key; + } + } + } + get key() { + return pb_1.Message.getWrapperField(this, Key, 1) as Key; + } + set key(value: Key) { + pb_1.Message.setWrapperField(this, 1, value); + } + get has_key() { + return pb_1.Message.getField(this, 1) != null; + } + static fromObject(data: { + key?: ReturnType; + }): Prefix { + const message = new Prefix({}); + if (data.key != null) { + message.key = Key.fromObject(data.key); + } + return message; + } + toObject() { + const data: { + key?: ReturnType; + } = {}; + if (this.key != null) { + data.key = this.key.toObject(); + } + return data; + } + serialize(): Uint8Array; + serialize(w: pb_1.BinaryWriter): void; + serialize(w?: pb_1.BinaryWriter): Uint8Array | void { + const writer = w || new pb_1.BinaryWriter(); + if (this.has_key) + writer.writeMessage(1, this.key, () => this.key.serialize(writer)); + if (!w) + return writer.getResultBuffer(); + } + static deserialize(bytes: Uint8Array | pb_1.BinaryReader): Prefix { + const reader = bytes instanceof pb_1.BinaryReader ? bytes : new pb_1.BinaryReader(bytes), message = new Prefix(); + while (reader.nextField()) { + if (reader.isEndGroup()) + break; + switch (reader.getFieldNumber()) { + case 1: + reader.readMessage(message.key, () => message.key = Key.deserialize(reader)); + break; + default: reader.skipField(); + } + } + return message; + } + serializeBinary(): Uint8Array { + return this.serialize(); + } + static deserializeBinary(bytes: Uint8Array): Prefix { + return Prefix.deserialize(bytes); + } + } + } +} diff --git a/sdks/runner-protocol/kv_pb.js b/sdks/runner-protocol/kv_pb.js new file mode 100644 index 0000000000..26b4bd93cf --- /dev/null +++ b/sdks/runner-protocol/kv_pb.js @@ -0,0 +1,4482 @@ +// source: kv.proto +/** + * @fileoverview + * @enhanceable + * @suppress {missingRequire} reports error on implicit type usages. + * @suppress {messageConventions} JS Compiler reports an error if a variable or + * field starts with 'MSG_' and isn't a translatable message. + * @public + */ +// GENERATED CODE -- DO NOT EDIT! +/* eslint-disable */ +// @ts-nocheck + +var jspb = require('google-protobuf'); +var goog = jspb; +var global = + (typeof globalThis !== 'undefined' && globalThis) || + (typeof window !== 'undefined' && window) || + (typeof global !== 'undefined' && global) || + (typeof self !== 'undefined' && self) || + (function () { return this; }).call(null) || + Function('return this')(); + +goog.exportSymbol('proto.rivet.pegboard.kv.Entry', null, global); +goog.exportSymbol('proto.rivet.pegboard.kv.Key', null, global); +goog.exportSymbol('proto.rivet.pegboard.kv.ListQuery', null, global); +goog.exportSymbol('proto.rivet.pegboard.kv.ListQuery.All', null, global); +goog.exportSymbol('proto.rivet.pegboard.kv.ListQuery.KindCase', null, global); +goog.exportSymbol('proto.rivet.pegboard.kv.ListQuery.Prefix', null, global); +goog.exportSymbol('proto.rivet.pegboard.kv.ListQuery.Range', null, global); +goog.exportSymbol('proto.rivet.pegboard.kv.Metadata', null, global); +goog.exportSymbol('proto.rivet.pegboard.kv.Request', null, global); +goog.exportSymbol('proto.rivet.pegboard.kv.Request.DataCase', null, global); +goog.exportSymbol('proto.rivet.pegboard.kv.Request.Delete', null, global); +goog.exportSymbol('proto.rivet.pegboard.kv.Request.Drop', null, global); +goog.exportSymbol('proto.rivet.pegboard.kv.Request.Get', null, global); +goog.exportSymbol('proto.rivet.pegboard.kv.Request.List', null, global); +goog.exportSymbol('proto.rivet.pegboard.kv.Request.Put', null, global); +goog.exportSymbol('proto.rivet.pegboard.kv.Response', null, global); +goog.exportSymbol('proto.rivet.pegboard.kv.Response.DataCase', null, global); +goog.exportSymbol('proto.rivet.pegboard.kv.Response.Delete', null, global); +goog.exportSymbol('proto.rivet.pegboard.kv.Response.Drop', null, global); +goog.exportSymbol('proto.rivet.pegboard.kv.Response.Error', null, global); +goog.exportSymbol('proto.rivet.pegboard.kv.Response.Get', null, global); +goog.exportSymbol('proto.rivet.pegboard.kv.Response.List', null, global); +goog.exportSymbol('proto.rivet.pegboard.kv.Response.Put', null, global); +/** + * Generated by JsPbCodeGenerator. + * @param {Array=} opt_data Optional initial data array, typically from a + * server response, or constructed directly in Javascript. The array is used + * in place and becomes part of the constructed object. It is not cloned. + * If no data is provided, the constructed object will be empty, but still + * valid. + * @extends {jspb.Message} + * @constructor + */ +proto.rivet.pegboard.kv.Request = function(opt_data) { + jspb.Message.initialize(this, opt_data, 0, -1, null, proto.rivet.pegboard.kv.Request.oneofGroups_); +}; +goog.inherits(proto.rivet.pegboard.kv.Request, jspb.Message); +if (goog.DEBUG && !COMPILED) { + /** + * @public + * @override + */ + proto.rivet.pegboard.kv.Request.displayName = 'proto.rivet.pegboard.kv.Request'; +} +/** + * Generated by JsPbCodeGenerator. + * @param {Array=} opt_data Optional initial data array, typically from a + * server response, or constructed directly in Javascript. The array is used + * in place and becomes part of the constructed object. It is not cloned. + * If no data is provided, the constructed object will be empty, but still + * valid. + * @extends {jspb.Message} + * @constructor + */ +proto.rivet.pegboard.kv.Request.Get = function(opt_data) { + jspb.Message.initialize(this, opt_data, 0, -1, proto.rivet.pegboard.kv.Request.Get.repeatedFields_, null); +}; +goog.inherits(proto.rivet.pegboard.kv.Request.Get, jspb.Message); +if (goog.DEBUG && !COMPILED) { + /** + * @public + * @override + */ + proto.rivet.pegboard.kv.Request.Get.displayName = 'proto.rivet.pegboard.kv.Request.Get'; +} +/** + * Generated by JsPbCodeGenerator. + * @param {Array=} opt_data Optional initial data array, typically from a + * server response, or constructed directly in Javascript. The array is used + * in place and becomes part of the constructed object. It is not cloned. + * If no data is provided, the constructed object will be empty, but still + * valid. + * @extends {jspb.Message} + * @constructor + */ +proto.rivet.pegboard.kv.Request.List = function(opt_data) { + jspb.Message.initialize(this, opt_data, 0, -1, null, null); +}; +goog.inherits(proto.rivet.pegboard.kv.Request.List, jspb.Message); +if (goog.DEBUG && !COMPILED) { + /** + * @public + * @override + */ + proto.rivet.pegboard.kv.Request.List.displayName = 'proto.rivet.pegboard.kv.Request.List'; +} +/** + * Generated by JsPbCodeGenerator. + * @param {Array=} opt_data Optional initial data array, typically from a + * server response, or constructed directly in Javascript. The array is used + * in place and becomes part of the constructed object. It is not cloned. + * If no data is provided, the constructed object will be empty, but still + * valid. + * @extends {jspb.Message} + * @constructor + */ +proto.rivet.pegboard.kv.Request.Put = function(opt_data) { + jspb.Message.initialize(this, opt_data, 0, -1, proto.rivet.pegboard.kv.Request.Put.repeatedFields_, null); +}; +goog.inherits(proto.rivet.pegboard.kv.Request.Put, jspb.Message); +if (goog.DEBUG && !COMPILED) { + /** + * @public + * @override + */ + proto.rivet.pegboard.kv.Request.Put.displayName = 'proto.rivet.pegboard.kv.Request.Put'; +} +/** + * Generated by JsPbCodeGenerator. + * @param {Array=} opt_data Optional initial data array, typically from a + * server response, or constructed directly in Javascript. The array is used + * in place and becomes part of the constructed object. It is not cloned. + * If no data is provided, the constructed object will be empty, but still + * valid. + * @extends {jspb.Message} + * @constructor + */ +proto.rivet.pegboard.kv.Request.Delete = function(opt_data) { + jspb.Message.initialize(this, opt_data, 0, -1, proto.rivet.pegboard.kv.Request.Delete.repeatedFields_, null); +}; +goog.inherits(proto.rivet.pegboard.kv.Request.Delete, jspb.Message); +if (goog.DEBUG && !COMPILED) { + /** + * @public + * @override + */ + proto.rivet.pegboard.kv.Request.Delete.displayName = 'proto.rivet.pegboard.kv.Request.Delete'; +} +/** + * Generated by JsPbCodeGenerator. + * @param {Array=} opt_data Optional initial data array, typically from a + * server response, or constructed directly in Javascript. The array is used + * in place and becomes part of the constructed object. It is not cloned. + * If no data is provided, the constructed object will be empty, but still + * valid. + * @extends {jspb.Message} + * @constructor + */ +proto.rivet.pegboard.kv.Request.Drop = function(opt_data) { + jspb.Message.initialize(this, opt_data, 0, -1, null, null); +}; +goog.inherits(proto.rivet.pegboard.kv.Request.Drop, jspb.Message); +if (goog.DEBUG && !COMPILED) { + /** + * @public + * @override + */ + proto.rivet.pegboard.kv.Request.Drop.displayName = 'proto.rivet.pegboard.kv.Request.Drop'; +} +/** + * Generated by JsPbCodeGenerator. + * @param {Array=} opt_data Optional initial data array, typically from a + * server response, or constructed directly in Javascript. The array is used + * in place and becomes part of the constructed object. It is not cloned. + * If no data is provided, the constructed object will be empty, but still + * valid. + * @extends {jspb.Message} + * @constructor + */ +proto.rivet.pegboard.kv.Response = function(opt_data) { + jspb.Message.initialize(this, opt_data, 0, -1, null, proto.rivet.pegboard.kv.Response.oneofGroups_); +}; +goog.inherits(proto.rivet.pegboard.kv.Response, jspb.Message); +if (goog.DEBUG && !COMPILED) { + /** + * @public + * @override + */ + proto.rivet.pegboard.kv.Response.displayName = 'proto.rivet.pegboard.kv.Response'; +} +/** + * Generated by JsPbCodeGenerator. + * @param {Array=} opt_data Optional initial data array, typically from a + * server response, or constructed directly in Javascript. The array is used + * in place and becomes part of the constructed object. It is not cloned. + * If no data is provided, the constructed object will be empty, but still + * valid. + * @extends {jspb.Message} + * @constructor + */ +proto.rivet.pegboard.kv.Response.Error = function(opt_data) { + jspb.Message.initialize(this, opt_data, 0, -1, null, null); +}; +goog.inherits(proto.rivet.pegboard.kv.Response.Error, jspb.Message); +if (goog.DEBUG && !COMPILED) { + /** + * @public + * @override + */ + proto.rivet.pegboard.kv.Response.Error.displayName = 'proto.rivet.pegboard.kv.Response.Error'; +} +/** + * Generated by JsPbCodeGenerator. + * @param {Array=} opt_data Optional initial data array, typically from a + * server response, or constructed directly in Javascript. The array is used + * in place and becomes part of the constructed object. It is not cloned. + * If no data is provided, the constructed object will be empty, but still + * valid. + * @extends {jspb.Message} + * @constructor + */ +proto.rivet.pegboard.kv.Response.Get = function(opt_data) { + jspb.Message.initialize(this, opt_data, 0, -1, proto.rivet.pegboard.kv.Response.Get.repeatedFields_, null); +}; +goog.inherits(proto.rivet.pegboard.kv.Response.Get, jspb.Message); +if (goog.DEBUG && !COMPILED) { + /** + * @public + * @override + */ + proto.rivet.pegboard.kv.Response.Get.displayName = 'proto.rivet.pegboard.kv.Response.Get'; +} +/** + * Generated by JsPbCodeGenerator. + * @param {Array=} opt_data Optional initial data array, typically from a + * server response, or constructed directly in Javascript. The array is used + * in place and becomes part of the constructed object. It is not cloned. + * If no data is provided, the constructed object will be empty, but still + * valid. + * @extends {jspb.Message} + * @constructor + */ +proto.rivet.pegboard.kv.Response.List = function(opt_data) { + jspb.Message.initialize(this, opt_data, 0, -1, proto.rivet.pegboard.kv.Response.List.repeatedFields_, null); +}; +goog.inherits(proto.rivet.pegboard.kv.Response.List, jspb.Message); +if (goog.DEBUG && !COMPILED) { + /** + * @public + * @override + */ + proto.rivet.pegboard.kv.Response.List.displayName = 'proto.rivet.pegboard.kv.Response.List'; +} +/** + * Generated by JsPbCodeGenerator. + * @param {Array=} opt_data Optional initial data array, typically from a + * server response, or constructed directly in Javascript. The array is used + * in place and becomes part of the constructed object. It is not cloned. + * If no data is provided, the constructed object will be empty, but still + * valid. + * @extends {jspb.Message} + * @constructor + */ +proto.rivet.pegboard.kv.Response.Put = function(opt_data) { + jspb.Message.initialize(this, opt_data, 0, -1, null, null); +}; +goog.inherits(proto.rivet.pegboard.kv.Response.Put, jspb.Message); +if (goog.DEBUG && !COMPILED) { + /** + * @public + * @override + */ + proto.rivet.pegboard.kv.Response.Put.displayName = 'proto.rivet.pegboard.kv.Response.Put'; +} +/** + * Generated by JsPbCodeGenerator. + * @param {Array=} opt_data Optional initial data array, typically from a + * server response, or constructed directly in Javascript. The array is used + * in place and becomes part of the constructed object. It is not cloned. + * If no data is provided, the constructed object will be empty, but still + * valid. + * @extends {jspb.Message} + * @constructor + */ +proto.rivet.pegboard.kv.Response.Delete = function(opt_data) { + jspb.Message.initialize(this, opt_data, 0, -1, null, null); +}; +goog.inherits(proto.rivet.pegboard.kv.Response.Delete, jspb.Message); +if (goog.DEBUG && !COMPILED) { + /** + * @public + * @override + */ + proto.rivet.pegboard.kv.Response.Delete.displayName = 'proto.rivet.pegboard.kv.Response.Delete'; +} +/** + * Generated by JsPbCodeGenerator. + * @param {Array=} opt_data Optional initial data array, typically from a + * server response, or constructed directly in Javascript. The array is used + * in place and becomes part of the constructed object. It is not cloned. + * If no data is provided, the constructed object will be empty, but still + * valid. + * @extends {jspb.Message} + * @constructor + */ +proto.rivet.pegboard.kv.Response.Drop = function(opt_data) { + jspb.Message.initialize(this, opt_data, 0, -1, null, null); +}; +goog.inherits(proto.rivet.pegboard.kv.Response.Drop, jspb.Message); +if (goog.DEBUG && !COMPILED) { + /** + * @public + * @override + */ + proto.rivet.pegboard.kv.Response.Drop.displayName = 'proto.rivet.pegboard.kv.Response.Drop'; +} +/** + * Generated by JsPbCodeGenerator. + * @param {Array=} opt_data Optional initial data array, typically from a + * server response, or constructed directly in Javascript. The array is used + * in place and becomes part of the constructed object. It is not cloned. + * If no data is provided, the constructed object will be empty, but still + * valid. + * @extends {jspb.Message} + * @constructor + */ +proto.rivet.pegboard.kv.Key = function(opt_data) { + jspb.Message.initialize(this, opt_data, 0, -1, proto.rivet.pegboard.kv.Key.repeatedFields_, null); +}; +goog.inherits(proto.rivet.pegboard.kv.Key, jspb.Message); +if (goog.DEBUG && !COMPILED) { + /** + * @public + * @override + */ + proto.rivet.pegboard.kv.Key.displayName = 'proto.rivet.pegboard.kv.Key'; +} +/** + * Generated by JsPbCodeGenerator. + * @param {Array=} opt_data Optional initial data array, typically from a + * server response, or constructed directly in Javascript. The array is used + * in place and becomes part of the constructed object. It is not cloned. + * If no data is provided, the constructed object will be empty, but still + * valid. + * @extends {jspb.Message} + * @constructor + */ +proto.rivet.pegboard.kv.Entry = function(opt_data) { + jspb.Message.initialize(this, opt_data, 0, -1, null, null); +}; +goog.inherits(proto.rivet.pegboard.kv.Entry, jspb.Message); +if (goog.DEBUG && !COMPILED) { + /** + * @public + * @override + */ + proto.rivet.pegboard.kv.Entry.displayName = 'proto.rivet.pegboard.kv.Entry'; +} +/** + * Generated by JsPbCodeGenerator. + * @param {Array=} opt_data Optional initial data array, typically from a + * server response, or constructed directly in Javascript. The array is used + * in place and becomes part of the constructed object. It is not cloned. + * If no data is provided, the constructed object will be empty, but still + * valid. + * @extends {jspb.Message} + * @constructor + */ +proto.rivet.pegboard.kv.Metadata = function(opt_data) { + jspb.Message.initialize(this, opt_data, 0, -1, null, null); +}; +goog.inherits(proto.rivet.pegboard.kv.Metadata, jspb.Message); +if (goog.DEBUG && !COMPILED) { + /** + * @public + * @override + */ + proto.rivet.pegboard.kv.Metadata.displayName = 'proto.rivet.pegboard.kv.Metadata'; +} +/** + * Generated by JsPbCodeGenerator. + * @param {Array=} opt_data Optional initial data array, typically from a + * server response, or constructed directly in Javascript. The array is used + * in place and becomes part of the constructed object. It is not cloned. + * If no data is provided, the constructed object will be empty, but still + * valid. + * @extends {jspb.Message} + * @constructor + */ +proto.rivet.pegboard.kv.ListQuery = function(opt_data) { + jspb.Message.initialize(this, opt_data, 0, -1, null, proto.rivet.pegboard.kv.ListQuery.oneofGroups_); +}; +goog.inherits(proto.rivet.pegboard.kv.ListQuery, jspb.Message); +if (goog.DEBUG && !COMPILED) { + /** + * @public + * @override + */ + proto.rivet.pegboard.kv.ListQuery.displayName = 'proto.rivet.pegboard.kv.ListQuery'; +} +/** + * Generated by JsPbCodeGenerator. + * @param {Array=} opt_data Optional initial data array, typically from a + * server response, or constructed directly in Javascript. The array is used + * in place and becomes part of the constructed object. It is not cloned. + * If no data is provided, the constructed object will be empty, but still + * valid. + * @extends {jspb.Message} + * @constructor + */ +proto.rivet.pegboard.kv.ListQuery.All = function(opt_data) { + jspb.Message.initialize(this, opt_data, 0, -1, null, null); +}; +goog.inherits(proto.rivet.pegboard.kv.ListQuery.All, jspb.Message); +if (goog.DEBUG && !COMPILED) { + /** + * @public + * @override + */ + proto.rivet.pegboard.kv.ListQuery.All.displayName = 'proto.rivet.pegboard.kv.ListQuery.All'; +} +/** + * Generated by JsPbCodeGenerator. + * @param {Array=} opt_data Optional initial data array, typically from a + * server response, or constructed directly in Javascript. The array is used + * in place and becomes part of the constructed object. It is not cloned. + * If no data is provided, the constructed object will be empty, but still + * valid. + * @extends {jspb.Message} + * @constructor + */ +proto.rivet.pegboard.kv.ListQuery.Range = function(opt_data) { + jspb.Message.initialize(this, opt_data, 0, -1, null, null); +}; +goog.inherits(proto.rivet.pegboard.kv.ListQuery.Range, jspb.Message); +if (goog.DEBUG && !COMPILED) { + /** + * @public + * @override + */ + proto.rivet.pegboard.kv.ListQuery.Range.displayName = 'proto.rivet.pegboard.kv.ListQuery.Range'; +} +/** + * Generated by JsPbCodeGenerator. + * @param {Array=} opt_data Optional initial data array, typically from a + * server response, or constructed directly in Javascript. The array is used + * in place and becomes part of the constructed object. It is not cloned. + * If no data is provided, the constructed object will be empty, but still + * valid. + * @extends {jspb.Message} + * @constructor + */ +proto.rivet.pegboard.kv.ListQuery.Prefix = function(opt_data) { + jspb.Message.initialize(this, opt_data, 0, -1, null, null); +}; +goog.inherits(proto.rivet.pegboard.kv.ListQuery.Prefix, jspb.Message); +if (goog.DEBUG && !COMPILED) { + /** + * @public + * @override + */ + proto.rivet.pegboard.kv.ListQuery.Prefix.displayName = 'proto.rivet.pegboard.kv.ListQuery.Prefix'; +} + +/** + * Oneof group definitions for this message. Each group defines the field + * numbers belonging to that group. When of these fields' value is set, all + * other fields in the group are cleared. During deserialization, if multiple + * fields are encountered for a group, only the last value seen will be kept. + * @private {!Array>} + * @const + */ +proto.rivet.pegboard.kv.Request.oneofGroups_ = [[4,5,6,7,8]]; + +/** + * @enum {number} + */ +proto.rivet.pegboard.kv.Request.DataCase = { + DATA_NOT_SET: 0, + GET: 4, + LIST: 5, + PUT: 6, + DELETE: 7, + DROP: 8 +}; + +/** + * @return {proto.rivet.pegboard.kv.Request.DataCase} + */ +proto.rivet.pegboard.kv.Request.prototype.getDataCase = function() { + return /** @type {proto.rivet.pegboard.kv.Request.DataCase} */(jspb.Message.computeOneofCase(this, proto.rivet.pegboard.kv.Request.oneofGroups_[0])); +}; + + + +if (jspb.Message.GENERATE_TO_OBJECT) { +/** + * Creates an object representation of this proto. + * Field names that are reserved in JavaScript and will be renamed to pb_name. + * Optional fields that are not set will be set to undefined. + * To access a reserved field use, foo.pb_, eg, foo.pb_default. + * For the list of reserved names please see: + * net/proto2/compiler/js/internal/generator.cc#kKeyword. + * @param {boolean=} opt_includeInstance Deprecated. whether to include the + * JSPB instance for transitional soy proto support: + * http://goto/soy-param-migration + * @return {!Object} + */ +proto.rivet.pegboard.kv.Request.prototype.toObject = function(opt_includeInstance) { + return proto.rivet.pegboard.kv.Request.toObject(opt_includeInstance, this); +}; + + +/** + * Static version of the {@see toObject} method. + * @param {boolean|undefined} includeInstance Deprecated. Whether to include + * the JSPB instance for transitional soy proto support: + * http://goto/soy-param-migration + * @param {!proto.rivet.pegboard.kv.Request} msg The msg instance to transform. + * @return {!Object} + * @suppress {unusedLocalVariables} f is only used for nested messages + */ +proto.rivet.pegboard.kv.Request.toObject = function(includeInstance, msg) { + var f, obj = { +actorId: jspb.Message.getFieldWithDefault(msg, 1, ""), +generation: jspb.Message.getFieldWithDefault(msg, 2, 0), +requestId: jspb.Message.getFieldWithDefault(msg, 3, 0), +get: (f = msg.getGet()) && proto.rivet.pegboard.kv.Request.Get.toObject(includeInstance, f), +list: (f = msg.getList()) && proto.rivet.pegboard.kv.Request.List.toObject(includeInstance, f), +put: (f = msg.getPut()) && proto.rivet.pegboard.kv.Request.Put.toObject(includeInstance, f), +pb_delete: (f = msg.getDelete()) && proto.rivet.pegboard.kv.Request.Delete.toObject(includeInstance, f), +drop: (f = msg.getDrop()) && proto.rivet.pegboard.kv.Request.Drop.toObject(includeInstance, f) + }; + + if (includeInstance) { + obj.$jspbMessageInstance = msg; + } + return obj; +}; +} + + +/** + * Deserializes binary data (in protobuf wire format). + * @param {jspb.ByteSource} bytes The bytes to deserialize. + * @return {!proto.rivet.pegboard.kv.Request} + */ +proto.rivet.pegboard.kv.Request.deserializeBinary = function(bytes) { + var reader = new jspb.BinaryReader(bytes); + var msg = new proto.rivet.pegboard.kv.Request; + return proto.rivet.pegboard.kv.Request.deserializeBinaryFromReader(msg, reader); +}; + + +/** + * Deserializes binary data (in protobuf wire format) from the + * given reader into the given message object. + * @param {!proto.rivet.pegboard.kv.Request} msg The message object to deserialize into. + * @param {!jspb.BinaryReader} reader The BinaryReader to use. + * @return {!proto.rivet.pegboard.kv.Request} + */ +proto.rivet.pegboard.kv.Request.deserializeBinaryFromReader = function(msg, reader) { + while (reader.nextField()) { + if (reader.isEndGroup()) { + break; + } + var field = reader.getFieldNumber(); + switch (field) { + case 1: + var value = /** @type {string} */ (reader.readString()); + msg.setActorId(value); + break; + case 2: + var value = /** @type {number} */ (reader.readUint32()); + msg.setGeneration(value); + break; + case 3: + var value = /** @type {number} */ (reader.readUint32()); + msg.setRequestId(value); + break; + case 4: + var value = new proto.rivet.pegboard.kv.Request.Get; + reader.readMessage(value,proto.rivet.pegboard.kv.Request.Get.deserializeBinaryFromReader); + msg.setGet(value); + break; + case 5: + var value = new proto.rivet.pegboard.kv.Request.List; + reader.readMessage(value,proto.rivet.pegboard.kv.Request.List.deserializeBinaryFromReader); + msg.setList(value); + break; + case 6: + var value = new proto.rivet.pegboard.kv.Request.Put; + reader.readMessage(value,proto.rivet.pegboard.kv.Request.Put.deserializeBinaryFromReader); + msg.setPut(value); + break; + case 7: + var value = new proto.rivet.pegboard.kv.Request.Delete; + reader.readMessage(value,proto.rivet.pegboard.kv.Request.Delete.deserializeBinaryFromReader); + msg.setDelete(value); + break; + case 8: + var value = new proto.rivet.pegboard.kv.Request.Drop; + reader.readMessage(value,proto.rivet.pegboard.kv.Request.Drop.deserializeBinaryFromReader); + msg.setDrop(value); + break; + default: + reader.skipField(); + break; + } + } + return msg; +}; + + +/** + * Serializes the message to binary data (in protobuf wire format). + * @return {!Uint8Array} + */ +proto.rivet.pegboard.kv.Request.prototype.serializeBinary = function() { + var writer = new jspb.BinaryWriter(); + proto.rivet.pegboard.kv.Request.serializeBinaryToWriter(this, writer); + return writer.getResultBuffer(); +}; + + +/** + * Serializes the given message to binary data (in protobuf wire + * format), writing to the given BinaryWriter. + * @param {!proto.rivet.pegboard.kv.Request} message + * @param {!jspb.BinaryWriter} writer + * @suppress {unusedLocalVariables} f is only used for nested messages + */ +proto.rivet.pegboard.kv.Request.serializeBinaryToWriter = function(message, writer) { + var f = undefined; + f = message.getActorId(); + if (f.length > 0) { + writer.writeString( + 1, + f + ); + } + f = message.getGeneration(); + if (f !== 0) { + writer.writeUint32( + 2, + f + ); + } + f = message.getRequestId(); + if (f !== 0) { + writer.writeUint32( + 3, + f + ); + } + f = message.getGet(); + if (f != null) { + writer.writeMessage( + 4, + f, + proto.rivet.pegboard.kv.Request.Get.serializeBinaryToWriter + ); + } + f = message.getList(); + if (f != null) { + writer.writeMessage( + 5, + f, + proto.rivet.pegboard.kv.Request.List.serializeBinaryToWriter + ); + } + f = message.getPut(); + if (f != null) { + writer.writeMessage( + 6, + f, + proto.rivet.pegboard.kv.Request.Put.serializeBinaryToWriter + ); + } + f = message.getDelete(); + if (f != null) { + writer.writeMessage( + 7, + f, + proto.rivet.pegboard.kv.Request.Delete.serializeBinaryToWriter + ); + } + f = message.getDrop(); + if (f != null) { + writer.writeMessage( + 8, + f, + proto.rivet.pegboard.kv.Request.Drop.serializeBinaryToWriter + ); + } +}; + + + +/** + * List of repeated fields within this message type. + * @private {!Array} + * @const + */ +proto.rivet.pegboard.kv.Request.Get.repeatedFields_ = [1]; + + + +if (jspb.Message.GENERATE_TO_OBJECT) { +/** + * Creates an object representation of this proto. + * Field names that are reserved in JavaScript and will be renamed to pb_name. + * Optional fields that are not set will be set to undefined. + * To access a reserved field use, foo.pb_, eg, foo.pb_default. + * For the list of reserved names please see: + * net/proto2/compiler/js/internal/generator.cc#kKeyword. + * @param {boolean=} opt_includeInstance Deprecated. whether to include the + * JSPB instance for transitional soy proto support: + * http://goto/soy-param-migration + * @return {!Object} + */ +proto.rivet.pegboard.kv.Request.Get.prototype.toObject = function(opt_includeInstance) { + return proto.rivet.pegboard.kv.Request.Get.toObject(opt_includeInstance, this); +}; + + +/** + * Static version of the {@see toObject} method. + * @param {boolean|undefined} includeInstance Deprecated. Whether to include + * the JSPB instance for transitional soy proto support: + * http://goto/soy-param-migration + * @param {!proto.rivet.pegboard.kv.Request.Get} msg The msg instance to transform. + * @return {!Object} + * @suppress {unusedLocalVariables} f is only used for nested messages + */ +proto.rivet.pegboard.kv.Request.Get.toObject = function(includeInstance, msg) { + var f, obj = { +keysList: jspb.Message.toObjectList(msg.getKeysList(), + proto.rivet.pegboard.kv.Key.toObject, includeInstance) + }; + + if (includeInstance) { + obj.$jspbMessageInstance = msg; + } + return obj; +}; +} + + +/** + * Deserializes binary data (in protobuf wire format). + * @param {jspb.ByteSource} bytes The bytes to deserialize. + * @return {!proto.rivet.pegboard.kv.Request.Get} + */ +proto.rivet.pegboard.kv.Request.Get.deserializeBinary = function(bytes) { + var reader = new jspb.BinaryReader(bytes); + var msg = new proto.rivet.pegboard.kv.Request.Get; + return proto.rivet.pegboard.kv.Request.Get.deserializeBinaryFromReader(msg, reader); +}; + + +/** + * Deserializes binary data (in protobuf wire format) from the + * given reader into the given message object. + * @param {!proto.rivet.pegboard.kv.Request.Get} msg The message object to deserialize into. + * @param {!jspb.BinaryReader} reader The BinaryReader to use. + * @return {!proto.rivet.pegboard.kv.Request.Get} + */ +proto.rivet.pegboard.kv.Request.Get.deserializeBinaryFromReader = function(msg, reader) { + while (reader.nextField()) { + if (reader.isEndGroup()) { + break; + } + var field = reader.getFieldNumber(); + switch (field) { + case 1: + var value = new proto.rivet.pegboard.kv.Key; + reader.readMessage(value,proto.rivet.pegboard.kv.Key.deserializeBinaryFromReader); + msg.addKeys(value); + break; + default: + reader.skipField(); + break; + } + } + return msg; +}; + + +/** + * Serializes the message to binary data (in protobuf wire format). + * @return {!Uint8Array} + */ +proto.rivet.pegboard.kv.Request.Get.prototype.serializeBinary = function() { + var writer = new jspb.BinaryWriter(); + proto.rivet.pegboard.kv.Request.Get.serializeBinaryToWriter(this, writer); + return writer.getResultBuffer(); +}; + + +/** + * Serializes the given message to binary data (in protobuf wire + * format), writing to the given BinaryWriter. + * @param {!proto.rivet.pegboard.kv.Request.Get} message + * @param {!jspb.BinaryWriter} writer + * @suppress {unusedLocalVariables} f is only used for nested messages + */ +proto.rivet.pegboard.kv.Request.Get.serializeBinaryToWriter = function(message, writer) { + var f = undefined; + f = message.getKeysList(); + if (f.length > 0) { + writer.writeRepeatedMessage( + 1, + f, + proto.rivet.pegboard.kv.Key.serializeBinaryToWriter + ); + } +}; + + +/** + * repeated Key keys = 1; + * @return {!Array} + */ +proto.rivet.pegboard.kv.Request.Get.prototype.getKeysList = function() { + return /** @type{!Array} */ ( + jspb.Message.getRepeatedWrapperField(this, proto.rivet.pegboard.kv.Key, 1)); +}; + + +/** + * @param {!Array} value + * @return {!proto.rivet.pegboard.kv.Request.Get} returns this +*/ +proto.rivet.pegboard.kv.Request.Get.prototype.setKeysList = function(value) { + return jspb.Message.setRepeatedWrapperField(this, 1, value); +}; + + +/** + * @param {!proto.rivet.pegboard.kv.Key=} opt_value + * @param {number=} opt_index + * @return {!proto.rivet.pegboard.kv.Key} + */ +proto.rivet.pegboard.kv.Request.Get.prototype.addKeys = function(opt_value, opt_index) { + return jspb.Message.addToRepeatedWrapperField(this, 1, opt_value, proto.rivet.pegboard.kv.Key, opt_index); +}; + + +/** + * Clears the list making it empty but non-null. + * @return {!proto.rivet.pegboard.kv.Request.Get} returns this + */ +proto.rivet.pegboard.kv.Request.Get.prototype.clearKeysList = function() { + return this.setKeysList([]); +}; + + + + + +if (jspb.Message.GENERATE_TO_OBJECT) { +/** + * Creates an object representation of this proto. + * Field names that are reserved in JavaScript and will be renamed to pb_name. + * Optional fields that are not set will be set to undefined. + * To access a reserved field use, foo.pb_, eg, foo.pb_default. + * For the list of reserved names please see: + * net/proto2/compiler/js/internal/generator.cc#kKeyword. + * @param {boolean=} opt_includeInstance Deprecated. whether to include the + * JSPB instance for transitional soy proto support: + * http://goto/soy-param-migration + * @return {!Object} + */ +proto.rivet.pegboard.kv.Request.List.prototype.toObject = function(opt_includeInstance) { + return proto.rivet.pegboard.kv.Request.List.toObject(opt_includeInstance, this); +}; + + +/** + * Static version of the {@see toObject} method. + * @param {boolean|undefined} includeInstance Deprecated. Whether to include + * the JSPB instance for transitional soy proto support: + * http://goto/soy-param-migration + * @param {!proto.rivet.pegboard.kv.Request.List} msg The msg instance to transform. + * @return {!Object} + * @suppress {unusedLocalVariables} f is only used for nested messages + */ +proto.rivet.pegboard.kv.Request.List.toObject = function(includeInstance, msg) { + var f, obj = { +query: (f = msg.getQuery()) && proto.rivet.pegboard.kv.ListQuery.toObject(includeInstance, f), +reverse: jspb.Message.getBooleanFieldWithDefault(msg, 2, false), +limit: (f = jspb.Message.getField(msg, 3)) == null ? undefined : f + }; + + if (includeInstance) { + obj.$jspbMessageInstance = msg; + } + return obj; +}; +} + + +/** + * Deserializes binary data (in protobuf wire format). + * @param {jspb.ByteSource} bytes The bytes to deserialize. + * @return {!proto.rivet.pegboard.kv.Request.List} + */ +proto.rivet.pegboard.kv.Request.List.deserializeBinary = function(bytes) { + var reader = new jspb.BinaryReader(bytes); + var msg = new proto.rivet.pegboard.kv.Request.List; + return proto.rivet.pegboard.kv.Request.List.deserializeBinaryFromReader(msg, reader); +}; + + +/** + * Deserializes binary data (in protobuf wire format) from the + * given reader into the given message object. + * @param {!proto.rivet.pegboard.kv.Request.List} msg The message object to deserialize into. + * @param {!jspb.BinaryReader} reader The BinaryReader to use. + * @return {!proto.rivet.pegboard.kv.Request.List} + */ +proto.rivet.pegboard.kv.Request.List.deserializeBinaryFromReader = function(msg, reader) { + while (reader.nextField()) { + if (reader.isEndGroup()) { + break; + } + var field = reader.getFieldNumber(); + switch (field) { + case 1: + var value = new proto.rivet.pegboard.kv.ListQuery; + reader.readMessage(value,proto.rivet.pegboard.kv.ListQuery.deserializeBinaryFromReader); + msg.setQuery(value); + break; + case 2: + var value = /** @type {boolean} */ (reader.readBool()); + msg.setReverse(value); + break; + case 3: + var value = /** @type {number} */ (reader.readUint64()); + msg.setLimit(value); + break; + default: + reader.skipField(); + break; + } + } + return msg; +}; + + +/** + * Serializes the message to binary data (in protobuf wire format). + * @return {!Uint8Array} + */ +proto.rivet.pegboard.kv.Request.List.prototype.serializeBinary = function() { + var writer = new jspb.BinaryWriter(); + proto.rivet.pegboard.kv.Request.List.serializeBinaryToWriter(this, writer); + return writer.getResultBuffer(); +}; + + +/** + * Serializes the given message to binary data (in protobuf wire + * format), writing to the given BinaryWriter. + * @param {!proto.rivet.pegboard.kv.Request.List} message + * @param {!jspb.BinaryWriter} writer + * @suppress {unusedLocalVariables} f is only used for nested messages + */ +proto.rivet.pegboard.kv.Request.List.serializeBinaryToWriter = function(message, writer) { + var f = undefined; + f = message.getQuery(); + if (f != null) { + writer.writeMessage( + 1, + f, + proto.rivet.pegboard.kv.ListQuery.serializeBinaryToWriter + ); + } + f = message.getReverse(); + if (f) { + writer.writeBool( + 2, + f + ); + } + f = /** @type {number} */ (jspb.Message.getField(message, 3)); + if (f != null) { + writer.writeUint64( + 3, + f + ); + } +}; + + +/** + * optional ListQuery query = 1; + * @return {?proto.rivet.pegboard.kv.ListQuery} + */ +proto.rivet.pegboard.kv.Request.List.prototype.getQuery = function() { + return /** @type{?proto.rivet.pegboard.kv.ListQuery} */ ( + jspb.Message.getWrapperField(this, proto.rivet.pegboard.kv.ListQuery, 1)); +}; + + +/** + * @param {?proto.rivet.pegboard.kv.ListQuery|undefined} value + * @return {!proto.rivet.pegboard.kv.Request.List} returns this +*/ +proto.rivet.pegboard.kv.Request.List.prototype.setQuery = function(value) { + return jspb.Message.setWrapperField(this, 1, value); +}; + + +/** + * Clears the message field making it undefined. + * @return {!proto.rivet.pegboard.kv.Request.List} returns this + */ +proto.rivet.pegboard.kv.Request.List.prototype.clearQuery = function() { + return this.setQuery(undefined); +}; + + +/** + * Returns whether this field is set. + * @return {boolean} + */ +proto.rivet.pegboard.kv.Request.List.prototype.hasQuery = function() { + return jspb.Message.getField(this, 1) != null; +}; + + +/** + * optional bool reverse = 2; + * @return {boolean} + */ +proto.rivet.pegboard.kv.Request.List.prototype.getReverse = function() { + return /** @type {boolean} */ (jspb.Message.getBooleanFieldWithDefault(this, 2, false)); +}; + + +/** + * @param {boolean} value + * @return {!proto.rivet.pegboard.kv.Request.List} returns this + */ +proto.rivet.pegboard.kv.Request.List.prototype.setReverse = function(value) { + return jspb.Message.setProto3BooleanField(this, 2, value); +}; + + +/** + * optional uint64 limit = 3; + * @return {number} + */ +proto.rivet.pegboard.kv.Request.List.prototype.getLimit = function() { + return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 3, 0)); +}; + + +/** + * @param {number} value + * @return {!proto.rivet.pegboard.kv.Request.List} returns this + */ +proto.rivet.pegboard.kv.Request.List.prototype.setLimit = function(value) { + return jspb.Message.setField(this, 3, value); +}; + + +/** + * Clears the field making it undefined. + * @return {!proto.rivet.pegboard.kv.Request.List} returns this + */ +proto.rivet.pegboard.kv.Request.List.prototype.clearLimit = function() { + return jspb.Message.setField(this, 3, undefined); +}; + + +/** + * Returns whether this field is set. + * @return {boolean} + */ +proto.rivet.pegboard.kv.Request.List.prototype.hasLimit = function() { + return jspb.Message.getField(this, 3) != null; +}; + + + +/** + * List of repeated fields within this message type. + * @private {!Array} + * @const + */ +proto.rivet.pegboard.kv.Request.Put.repeatedFields_ = [1,2]; + + + +if (jspb.Message.GENERATE_TO_OBJECT) { +/** + * Creates an object representation of this proto. + * Field names that are reserved in JavaScript and will be renamed to pb_name. + * Optional fields that are not set will be set to undefined. + * To access a reserved field use, foo.pb_, eg, foo.pb_default. + * For the list of reserved names please see: + * net/proto2/compiler/js/internal/generator.cc#kKeyword. + * @param {boolean=} opt_includeInstance Deprecated. whether to include the + * JSPB instance for transitional soy proto support: + * http://goto/soy-param-migration + * @return {!Object} + */ +proto.rivet.pegboard.kv.Request.Put.prototype.toObject = function(opt_includeInstance) { + return proto.rivet.pegboard.kv.Request.Put.toObject(opt_includeInstance, this); +}; + + +/** + * Static version of the {@see toObject} method. + * @param {boolean|undefined} includeInstance Deprecated. Whether to include + * the JSPB instance for transitional soy proto support: + * http://goto/soy-param-migration + * @param {!proto.rivet.pegboard.kv.Request.Put} msg The msg instance to transform. + * @return {!Object} + * @suppress {unusedLocalVariables} f is only used for nested messages + */ +proto.rivet.pegboard.kv.Request.Put.toObject = function(includeInstance, msg) { + var f, obj = { +keysList: jspb.Message.toObjectList(msg.getKeysList(), + proto.rivet.pegboard.kv.Key.toObject, includeInstance), +valuesList: msg.getValuesList_asB64() + }; + + if (includeInstance) { + obj.$jspbMessageInstance = msg; + } + return obj; +}; +} + + +/** + * Deserializes binary data (in protobuf wire format). + * @param {jspb.ByteSource} bytes The bytes to deserialize. + * @return {!proto.rivet.pegboard.kv.Request.Put} + */ +proto.rivet.pegboard.kv.Request.Put.deserializeBinary = function(bytes) { + var reader = new jspb.BinaryReader(bytes); + var msg = new proto.rivet.pegboard.kv.Request.Put; + return proto.rivet.pegboard.kv.Request.Put.deserializeBinaryFromReader(msg, reader); +}; + + +/** + * Deserializes binary data (in protobuf wire format) from the + * given reader into the given message object. + * @param {!proto.rivet.pegboard.kv.Request.Put} msg The message object to deserialize into. + * @param {!jspb.BinaryReader} reader The BinaryReader to use. + * @return {!proto.rivet.pegboard.kv.Request.Put} + */ +proto.rivet.pegboard.kv.Request.Put.deserializeBinaryFromReader = function(msg, reader) { + while (reader.nextField()) { + if (reader.isEndGroup()) { + break; + } + var field = reader.getFieldNumber(); + switch (field) { + case 1: + var value = new proto.rivet.pegboard.kv.Key; + reader.readMessage(value,proto.rivet.pegboard.kv.Key.deserializeBinaryFromReader); + msg.addKeys(value); + break; + case 2: + var value = /** @type {!Uint8Array} */ (reader.readBytes()); + msg.addValues(value); + break; + default: + reader.skipField(); + break; + } + } + return msg; +}; + + +/** + * Serializes the message to binary data (in protobuf wire format). + * @return {!Uint8Array} + */ +proto.rivet.pegboard.kv.Request.Put.prototype.serializeBinary = function() { + var writer = new jspb.BinaryWriter(); + proto.rivet.pegboard.kv.Request.Put.serializeBinaryToWriter(this, writer); + return writer.getResultBuffer(); +}; + + +/** + * Serializes the given message to binary data (in protobuf wire + * format), writing to the given BinaryWriter. + * @param {!proto.rivet.pegboard.kv.Request.Put} message + * @param {!jspb.BinaryWriter} writer + * @suppress {unusedLocalVariables} f is only used for nested messages + */ +proto.rivet.pegboard.kv.Request.Put.serializeBinaryToWriter = function(message, writer) { + var f = undefined; + f = message.getKeysList(); + if (f.length > 0) { + writer.writeRepeatedMessage( + 1, + f, + proto.rivet.pegboard.kv.Key.serializeBinaryToWriter + ); + } + f = message.getValuesList_asU8(); + if (f.length > 0) { + writer.writeRepeatedBytes( + 2, + f + ); + } +}; + + +/** + * repeated Key keys = 1; + * @return {!Array} + */ +proto.rivet.pegboard.kv.Request.Put.prototype.getKeysList = function() { + return /** @type{!Array} */ ( + jspb.Message.getRepeatedWrapperField(this, proto.rivet.pegboard.kv.Key, 1)); +}; + + +/** + * @param {!Array} value + * @return {!proto.rivet.pegboard.kv.Request.Put} returns this +*/ +proto.rivet.pegboard.kv.Request.Put.prototype.setKeysList = function(value) { + return jspb.Message.setRepeatedWrapperField(this, 1, value); +}; + + +/** + * @param {!proto.rivet.pegboard.kv.Key=} opt_value + * @param {number=} opt_index + * @return {!proto.rivet.pegboard.kv.Key} + */ +proto.rivet.pegboard.kv.Request.Put.prototype.addKeys = function(opt_value, opt_index) { + return jspb.Message.addToRepeatedWrapperField(this, 1, opt_value, proto.rivet.pegboard.kv.Key, opt_index); +}; + + +/** + * Clears the list making it empty but non-null. + * @return {!proto.rivet.pegboard.kv.Request.Put} returns this + */ +proto.rivet.pegboard.kv.Request.Put.prototype.clearKeysList = function() { + return this.setKeysList([]); +}; + + +/** + * repeated bytes values = 2; + * @return {!Array} + */ +proto.rivet.pegboard.kv.Request.Put.prototype.getValuesList = function() { + return /** @type {!Array} */ (jspb.Message.getRepeatedField(this, 2)); +}; + + +/** + * repeated bytes values = 2; + * This is a type-conversion wrapper around `getValuesList()` + * @return {!Array} + */ +proto.rivet.pegboard.kv.Request.Put.prototype.getValuesList_asB64 = function() { + return /** @type {!Array} */ (jspb.Message.bytesListAsB64( + this.getValuesList())); +}; + + +/** + * repeated bytes values = 2; + * Note that Uint8Array is not supported on all browsers. + * @see http://caniuse.com/Uint8Array + * This is a type-conversion wrapper around `getValuesList()` + * @return {!Array} + */ +proto.rivet.pegboard.kv.Request.Put.prototype.getValuesList_asU8 = function() { + return /** @type {!Array} */ (jspb.Message.bytesListAsU8( + this.getValuesList())); +}; + + +/** + * @param {!(Array|Array)} value + * @return {!proto.rivet.pegboard.kv.Request.Put} returns this + */ +proto.rivet.pegboard.kv.Request.Put.prototype.setValuesList = function(value) { + return jspb.Message.setField(this, 2, value || []); +}; + + +/** + * @param {!(string|Uint8Array)} value + * @param {number=} opt_index + * @return {!proto.rivet.pegboard.kv.Request.Put} returns this + */ +proto.rivet.pegboard.kv.Request.Put.prototype.addValues = function(value, opt_index) { + return jspb.Message.addToRepeatedField(this, 2, value, opt_index); +}; + + +/** + * Clears the list making it empty but non-null. + * @return {!proto.rivet.pegboard.kv.Request.Put} returns this + */ +proto.rivet.pegboard.kv.Request.Put.prototype.clearValuesList = function() { + return this.setValuesList([]); +}; + + + +/** + * List of repeated fields within this message type. + * @private {!Array} + * @const + */ +proto.rivet.pegboard.kv.Request.Delete.repeatedFields_ = [1]; + + + +if (jspb.Message.GENERATE_TO_OBJECT) { +/** + * Creates an object representation of this proto. + * Field names that are reserved in JavaScript and will be renamed to pb_name. + * Optional fields that are not set will be set to undefined. + * To access a reserved field use, foo.pb_, eg, foo.pb_default. + * For the list of reserved names please see: + * net/proto2/compiler/js/internal/generator.cc#kKeyword. + * @param {boolean=} opt_includeInstance Deprecated. whether to include the + * JSPB instance for transitional soy proto support: + * http://goto/soy-param-migration + * @return {!Object} + */ +proto.rivet.pegboard.kv.Request.Delete.prototype.toObject = function(opt_includeInstance) { + return proto.rivet.pegboard.kv.Request.Delete.toObject(opt_includeInstance, this); +}; + + +/** + * Static version of the {@see toObject} method. + * @param {boolean|undefined} includeInstance Deprecated. Whether to include + * the JSPB instance for transitional soy proto support: + * http://goto/soy-param-migration + * @param {!proto.rivet.pegboard.kv.Request.Delete} msg The msg instance to transform. + * @return {!Object} + * @suppress {unusedLocalVariables} f is only used for nested messages + */ +proto.rivet.pegboard.kv.Request.Delete.toObject = function(includeInstance, msg) { + var f, obj = { +keysList: jspb.Message.toObjectList(msg.getKeysList(), + proto.rivet.pegboard.kv.Key.toObject, includeInstance) + }; + + if (includeInstance) { + obj.$jspbMessageInstance = msg; + } + return obj; +}; +} + + +/** + * Deserializes binary data (in protobuf wire format). + * @param {jspb.ByteSource} bytes The bytes to deserialize. + * @return {!proto.rivet.pegboard.kv.Request.Delete} + */ +proto.rivet.pegboard.kv.Request.Delete.deserializeBinary = function(bytes) { + var reader = new jspb.BinaryReader(bytes); + var msg = new proto.rivet.pegboard.kv.Request.Delete; + return proto.rivet.pegboard.kv.Request.Delete.deserializeBinaryFromReader(msg, reader); +}; + + +/** + * Deserializes binary data (in protobuf wire format) from the + * given reader into the given message object. + * @param {!proto.rivet.pegboard.kv.Request.Delete} msg The message object to deserialize into. + * @param {!jspb.BinaryReader} reader The BinaryReader to use. + * @return {!proto.rivet.pegboard.kv.Request.Delete} + */ +proto.rivet.pegboard.kv.Request.Delete.deserializeBinaryFromReader = function(msg, reader) { + while (reader.nextField()) { + if (reader.isEndGroup()) { + break; + } + var field = reader.getFieldNumber(); + switch (field) { + case 1: + var value = new proto.rivet.pegboard.kv.Key; + reader.readMessage(value,proto.rivet.pegboard.kv.Key.deserializeBinaryFromReader); + msg.addKeys(value); + break; + default: + reader.skipField(); + break; + } + } + return msg; +}; + + +/** + * Serializes the message to binary data (in protobuf wire format). + * @return {!Uint8Array} + */ +proto.rivet.pegboard.kv.Request.Delete.prototype.serializeBinary = function() { + var writer = new jspb.BinaryWriter(); + proto.rivet.pegboard.kv.Request.Delete.serializeBinaryToWriter(this, writer); + return writer.getResultBuffer(); +}; + + +/** + * Serializes the given message to binary data (in protobuf wire + * format), writing to the given BinaryWriter. + * @param {!proto.rivet.pegboard.kv.Request.Delete} message + * @param {!jspb.BinaryWriter} writer + * @suppress {unusedLocalVariables} f is only used for nested messages + */ +proto.rivet.pegboard.kv.Request.Delete.serializeBinaryToWriter = function(message, writer) { + var f = undefined; + f = message.getKeysList(); + if (f.length > 0) { + writer.writeRepeatedMessage( + 1, + f, + proto.rivet.pegboard.kv.Key.serializeBinaryToWriter + ); + } +}; + + +/** + * repeated Key keys = 1; + * @return {!Array} + */ +proto.rivet.pegboard.kv.Request.Delete.prototype.getKeysList = function() { + return /** @type{!Array} */ ( + jspb.Message.getRepeatedWrapperField(this, proto.rivet.pegboard.kv.Key, 1)); +}; + + +/** + * @param {!Array} value + * @return {!proto.rivet.pegboard.kv.Request.Delete} returns this +*/ +proto.rivet.pegboard.kv.Request.Delete.prototype.setKeysList = function(value) { + return jspb.Message.setRepeatedWrapperField(this, 1, value); +}; + + +/** + * @param {!proto.rivet.pegboard.kv.Key=} opt_value + * @param {number=} opt_index + * @return {!proto.rivet.pegboard.kv.Key} + */ +proto.rivet.pegboard.kv.Request.Delete.prototype.addKeys = function(opt_value, opt_index) { + return jspb.Message.addToRepeatedWrapperField(this, 1, opt_value, proto.rivet.pegboard.kv.Key, opt_index); +}; + + +/** + * Clears the list making it empty but non-null. + * @return {!proto.rivet.pegboard.kv.Request.Delete} returns this + */ +proto.rivet.pegboard.kv.Request.Delete.prototype.clearKeysList = function() { + return this.setKeysList([]); +}; + + + + + +if (jspb.Message.GENERATE_TO_OBJECT) { +/** + * Creates an object representation of this proto. + * Field names that are reserved in JavaScript and will be renamed to pb_name. + * Optional fields that are not set will be set to undefined. + * To access a reserved field use, foo.pb_, eg, foo.pb_default. + * For the list of reserved names please see: + * net/proto2/compiler/js/internal/generator.cc#kKeyword. + * @param {boolean=} opt_includeInstance Deprecated. whether to include the + * JSPB instance for transitional soy proto support: + * http://goto/soy-param-migration + * @return {!Object} + */ +proto.rivet.pegboard.kv.Request.Drop.prototype.toObject = function(opt_includeInstance) { + return proto.rivet.pegboard.kv.Request.Drop.toObject(opt_includeInstance, this); +}; + + +/** + * Static version of the {@see toObject} method. + * @param {boolean|undefined} includeInstance Deprecated. Whether to include + * the JSPB instance for transitional soy proto support: + * http://goto/soy-param-migration + * @param {!proto.rivet.pegboard.kv.Request.Drop} msg The msg instance to transform. + * @return {!Object} + * @suppress {unusedLocalVariables} f is only used for nested messages + */ +proto.rivet.pegboard.kv.Request.Drop.toObject = function(includeInstance, msg) { + var f, obj = { + + }; + + if (includeInstance) { + obj.$jspbMessageInstance = msg; + } + return obj; +}; +} + + +/** + * Deserializes binary data (in protobuf wire format). + * @param {jspb.ByteSource} bytes The bytes to deserialize. + * @return {!proto.rivet.pegboard.kv.Request.Drop} + */ +proto.rivet.pegboard.kv.Request.Drop.deserializeBinary = function(bytes) { + var reader = new jspb.BinaryReader(bytes); + var msg = new proto.rivet.pegboard.kv.Request.Drop; + return proto.rivet.pegboard.kv.Request.Drop.deserializeBinaryFromReader(msg, reader); +}; + + +/** + * Deserializes binary data (in protobuf wire format) from the + * given reader into the given message object. + * @param {!proto.rivet.pegboard.kv.Request.Drop} msg The message object to deserialize into. + * @param {!jspb.BinaryReader} reader The BinaryReader to use. + * @return {!proto.rivet.pegboard.kv.Request.Drop} + */ +proto.rivet.pegboard.kv.Request.Drop.deserializeBinaryFromReader = function(msg, reader) { + while (reader.nextField()) { + if (reader.isEndGroup()) { + break; + } + var field = reader.getFieldNumber(); + switch (field) { + default: + reader.skipField(); + break; + } + } + return msg; +}; + + +/** + * Serializes the message to binary data (in protobuf wire format). + * @return {!Uint8Array} + */ +proto.rivet.pegboard.kv.Request.Drop.prototype.serializeBinary = function() { + var writer = new jspb.BinaryWriter(); + proto.rivet.pegboard.kv.Request.Drop.serializeBinaryToWriter(this, writer); + return writer.getResultBuffer(); +}; + + +/** + * Serializes the given message to binary data (in protobuf wire + * format), writing to the given BinaryWriter. + * @param {!proto.rivet.pegboard.kv.Request.Drop} message + * @param {!jspb.BinaryWriter} writer + * @suppress {unusedLocalVariables} f is only used for nested messages + */ +proto.rivet.pegboard.kv.Request.Drop.serializeBinaryToWriter = function(message, writer) { + var f = undefined; +}; + + +/** + * optional string actor_id = 1; + * @return {string} + */ +proto.rivet.pegboard.kv.Request.prototype.getActorId = function() { + return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, "")); +}; + + +/** + * @param {string} value + * @return {!proto.rivet.pegboard.kv.Request} returns this + */ +proto.rivet.pegboard.kv.Request.prototype.setActorId = function(value) { + return jspb.Message.setProto3StringField(this, 1, value); +}; + + +/** + * optional uint32 generation = 2; + * @return {number} + */ +proto.rivet.pegboard.kv.Request.prototype.getGeneration = function() { + return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 2, 0)); +}; + + +/** + * @param {number} value + * @return {!proto.rivet.pegboard.kv.Request} returns this + */ +proto.rivet.pegboard.kv.Request.prototype.setGeneration = function(value) { + return jspb.Message.setProto3IntField(this, 2, value); +}; + + +/** + * optional uint32 request_id = 3; + * @return {number} + */ +proto.rivet.pegboard.kv.Request.prototype.getRequestId = function() { + return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 3, 0)); +}; + + +/** + * @param {number} value + * @return {!proto.rivet.pegboard.kv.Request} returns this + */ +proto.rivet.pegboard.kv.Request.prototype.setRequestId = function(value) { + return jspb.Message.setProto3IntField(this, 3, value); +}; + + +/** + * optional Get get = 4; + * @return {?proto.rivet.pegboard.kv.Request.Get} + */ +proto.rivet.pegboard.kv.Request.prototype.getGet = function() { + return /** @type{?proto.rivet.pegboard.kv.Request.Get} */ ( + jspb.Message.getWrapperField(this, proto.rivet.pegboard.kv.Request.Get, 4)); +}; + + +/** + * @param {?proto.rivet.pegboard.kv.Request.Get|undefined} value + * @return {!proto.rivet.pegboard.kv.Request} returns this +*/ +proto.rivet.pegboard.kv.Request.prototype.setGet = function(value) { + return jspb.Message.setOneofWrapperField(this, 4, proto.rivet.pegboard.kv.Request.oneofGroups_[0], value); +}; + + +/** + * Clears the message field making it undefined. + * @return {!proto.rivet.pegboard.kv.Request} returns this + */ +proto.rivet.pegboard.kv.Request.prototype.clearGet = function() { + return this.setGet(undefined); +}; + + +/** + * Returns whether this field is set. + * @return {boolean} + */ +proto.rivet.pegboard.kv.Request.prototype.hasGet = function() { + return jspb.Message.getField(this, 4) != null; +}; + + +/** + * optional List list = 5; + * @return {?proto.rivet.pegboard.kv.Request.List} + */ +proto.rivet.pegboard.kv.Request.prototype.getList = function() { + return /** @type{?proto.rivet.pegboard.kv.Request.List} */ ( + jspb.Message.getWrapperField(this, proto.rivet.pegboard.kv.Request.List, 5)); +}; + + +/** + * @param {?proto.rivet.pegboard.kv.Request.List|undefined} value + * @return {!proto.rivet.pegboard.kv.Request} returns this +*/ +proto.rivet.pegboard.kv.Request.prototype.setList = function(value) { + return jspb.Message.setOneofWrapperField(this, 5, proto.rivet.pegboard.kv.Request.oneofGroups_[0], value); +}; + + +/** + * Clears the message field making it undefined. + * @return {!proto.rivet.pegboard.kv.Request} returns this + */ +proto.rivet.pegboard.kv.Request.prototype.clearList = function() { + return this.setList(undefined); +}; + + +/** + * Returns whether this field is set. + * @return {boolean} + */ +proto.rivet.pegboard.kv.Request.prototype.hasList = function() { + return jspb.Message.getField(this, 5) != null; +}; + + +/** + * optional Put put = 6; + * @return {?proto.rivet.pegboard.kv.Request.Put} + */ +proto.rivet.pegboard.kv.Request.prototype.getPut = function() { + return /** @type{?proto.rivet.pegboard.kv.Request.Put} */ ( + jspb.Message.getWrapperField(this, proto.rivet.pegboard.kv.Request.Put, 6)); +}; + + +/** + * @param {?proto.rivet.pegboard.kv.Request.Put|undefined} value + * @return {!proto.rivet.pegboard.kv.Request} returns this +*/ +proto.rivet.pegboard.kv.Request.prototype.setPut = function(value) { + return jspb.Message.setOneofWrapperField(this, 6, proto.rivet.pegboard.kv.Request.oneofGroups_[0], value); +}; + + +/** + * Clears the message field making it undefined. + * @return {!proto.rivet.pegboard.kv.Request} returns this + */ +proto.rivet.pegboard.kv.Request.prototype.clearPut = function() { + return this.setPut(undefined); +}; + + +/** + * Returns whether this field is set. + * @return {boolean} + */ +proto.rivet.pegboard.kv.Request.prototype.hasPut = function() { + return jspb.Message.getField(this, 6) != null; +}; + + +/** + * optional Delete delete = 7; + * @return {?proto.rivet.pegboard.kv.Request.Delete} + */ +proto.rivet.pegboard.kv.Request.prototype.getDelete = function() { + return /** @type{?proto.rivet.pegboard.kv.Request.Delete} */ ( + jspb.Message.getWrapperField(this, proto.rivet.pegboard.kv.Request.Delete, 7)); +}; + + +/** + * @param {?proto.rivet.pegboard.kv.Request.Delete|undefined} value + * @return {!proto.rivet.pegboard.kv.Request} returns this +*/ +proto.rivet.pegboard.kv.Request.prototype.setDelete = function(value) { + return jspb.Message.setOneofWrapperField(this, 7, proto.rivet.pegboard.kv.Request.oneofGroups_[0], value); +}; + + +/** + * Clears the message field making it undefined. + * @return {!proto.rivet.pegboard.kv.Request} returns this + */ +proto.rivet.pegboard.kv.Request.prototype.clearDelete = function() { + return this.setDelete(undefined); +}; + + +/** + * Returns whether this field is set. + * @return {boolean} + */ +proto.rivet.pegboard.kv.Request.prototype.hasDelete = function() { + return jspb.Message.getField(this, 7) != null; +}; + + +/** + * optional Drop drop = 8; + * @return {?proto.rivet.pegboard.kv.Request.Drop} + */ +proto.rivet.pegboard.kv.Request.prototype.getDrop = function() { + return /** @type{?proto.rivet.pegboard.kv.Request.Drop} */ ( + jspb.Message.getWrapperField(this, proto.rivet.pegboard.kv.Request.Drop, 8)); +}; + + +/** + * @param {?proto.rivet.pegboard.kv.Request.Drop|undefined} value + * @return {!proto.rivet.pegboard.kv.Request} returns this +*/ +proto.rivet.pegboard.kv.Request.prototype.setDrop = function(value) { + return jspb.Message.setOneofWrapperField(this, 8, proto.rivet.pegboard.kv.Request.oneofGroups_[0], value); +}; + + +/** + * Clears the message field making it undefined. + * @return {!proto.rivet.pegboard.kv.Request} returns this + */ +proto.rivet.pegboard.kv.Request.prototype.clearDrop = function() { + return this.setDrop(undefined); +}; + + +/** + * Returns whether this field is set. + * @return {boolean} + */ +proto.rivet.pegboard.kv.Request.prototype.hasDrop = function() { + return jspb.Message.getField(this, 8) != null; +}; + + + +/** + * Oneof group definitions for this message. Each group defines the field + * numbers belonging to that group. When of these fields' value is set, all + * other fields in the group are cleared. During deserialization, if multiple + * fields are encountered for a group, only the last value seen will be kept. + * @private {!Array>} + * @const + */ +proto.rivet.pegboard.kv.Response.oneofGroups_ = [[2,3,4,5,6,7]]; + +/** + * @enum {number} + */ +proto.rivet.pegboard.kv.Response.DataCase = { + DATA_NOT_SET: 0, + ERROR: 2, + GET: 3, + LIST: 4, + PUT: 5, + DELETE: 6, + DROP: 7 +}; + +/** + * @return {proto.rivet.pegboard.kv.Response.DataCase} + */ +proto.rivet.pegboard.kv.Response.prototype.getDataCase = function() { + return /** @type {proto.rivet.pegboard.kv.Response.DataCase} */(jspb.Message.computeOneofCase(this, proto.rivet.pegboard.kv.Response.oneofGroups_[0])); +}; + + + +if (jspb.Message.GENERATE_TO_OBJECT) { +/** + * Creates an object representation of this proto. + * Field names that are reserved in JavaScript and will be renamed to pb_name. + * Optional fields that are not set will be set to undefined. + * To access a reserved field use, foo.pb_, eg, foo.pb_default. + * For the list of reserved names please see: + * net/proto2/compiler/js/internal/generator.cc#kKeyword. + * @param {boolean=} opt_includeInstance Deprecated. whether to include the + * JSPB instance for transitional soy proto support: + * http://goto/soy-param-migration + * @return {!Object} + */ +proto.rivet.pegboard.kv.Response.prototype.toObject = function(opt_includeInstance) { + return proto.rivet.pegboard.kv.Response.toObject(opt_includeInstance, this); +}; + + +/** + * Static version of the {@see toObject} method. + * @param {boolean|undefined} includeInstance Deprecated. Whether to include + * the JSPB instance for transitional soy proto support: + * http://goto/soy-param-migration + * @param {!proto.rivet.pegboard.kv.Response} msg The msg instance to transform. + * @return {!Object} + * @suppress {unusedLocalVariables} f is only used for nested messages + */ +proto.rivet.pegboard.kv.Response.toObject = function(includeInstance, msg) { + var f, obj = { +requestId: jspb.Message.getFieldWithDefault(msg, 1, 0), +error: (f = msg.getError()) && proto.rivet.pegboard.kv.Response.Error.toObject(includeInstance, f), +get: (f = msg.getGet()) && proto.rivet.pegboard.kv.Response.Get.toObject(includeInstance, f), +list: (f = msg.getList()) && proto.rivet.pegboard.kv.Response.List.toObject(includeInstance, f), +put: (f = msg.getPut()) && proto.rivet.pegboard.kv.Response.Put.toObject(includeInstance, f), +pb_delete: (f = msg.getDelete()) && proto.rivet.pegboard.kv.Response.Delete.toObject(includeInstance, f), +drop: (f = msg.getDrop()) && proto.rivet.pegboard.kv.Response.Drop.toObject(includeInstance, f) + }; + + if (includeInstance) { + obj.$jspbMessageInstance = msg; + } + return obj; +}; +} + + +/** + * Deserializes binary data (in protobuf wire format). + * @param {jspb.ByteSource} bytes The bytes to deserialize. + * @return {!proto.rivet.pegboard.kv.Response} + */ +proto.rivet.pegboard.kv.Response.deserializeBinary = function(bytes) { + var reader = new jspb.BinaryReader(bytes); + var msg = new proto.rivet.pegboard.kv.Response; + return proto.rivet.pegboard.kv.Response.deserializeBinaryFromReader(msg, reader); +}; + + +/** + * Deserializes binary data (in protobuf wire format) from the + * given reader into the given message object. + * @param {!proto.rivet.pegboard.kv.Response} msg The message object to deserialize into. + * @param {!jspb.BinaryReader} reader The BinaryReader to use. + * @return {!proto.rivet.pegboard.kv.Response} + */ +proto.rivet.pegboard.kv.Response.deserializeBinaryFromReader = function(msg, reader) { + while (reader.nextField()) { + if (reader.isEndGroup()) { + break; + } + var field = reader.getFieldNumber(); + switch (field) { + case 1: + var value = /** @type {number} */ (reader.readUint32()); + msg.setRequestId(value); + break; + case 2: + var value = new proto.rivet.pegboard.kv.Response.Error; + reader.readMessage(value,proto.rivet.pegboard.kv.Response.Error.deserializeBinaryFromReader); + msg.setError(value); + break; + case 3: + var value = new proto.rivet.pegboard.kv.Response.Get; + reader.readMessage(value,proto.rivet.pegboard.kv.Response.Get.deserializeBinaryFromReader); + msg.setGet(value); + break; + case 4: + var value = new proto.rivet.pegboard.kv.Response.List; + reader.readMessage(value,proto.rivet.pegboard.kv.Response.List.deserializeBinaryFromReader); + msg.setList(value); + break; + case 5: + var value = new proto.rivet.pegboard.kv.Response.Put; + reader.readMessage(value,proto.rivet.pegboard.kv.Response.Put.deserializeBinaryFromReader); + msg.setPut(value); + break; + case 6: + var value = new proto.rivet.pegboard.kv.Response.Delete; + reader.readMessage(value,proto.rivet.pegboard.kv.Response.Delete.deserializeBinaryFromReader); + msg.setDelete(value); + break; + case 7: + var value = new proto.rivet.pegboard.kv.Response.Drop; + reader.readMessage(value,proto.rivet.pegboard.kv.Response.Drop.deserializeBinaryFromReader); + msg.setDrop(value); + break; + default: + reader.skipField(); + break; + } + } + return msg; +}; + + +/** + * Serializes the message to binary data (in protobuf wire format). + * @return {!Uint8Array} + */ +proto.rivet.pegboard.kv.Response.prototype.serializeBinary = function() { + var writer = new jspb.BinaryWriter(); + proto.rivet.pegboard.kv.Response.serializeBinaryToWriter(this, writer); + return writer.getResultBuffer(); +}; + + +/** + * Serializes the given message to binary data (in protobuf wire + * format), writing to the given BinaryWriter. + * @param {!proto.rivet.pegboard.kv.Response} message + * @param {!jspb.BinaryWriter} writer + * @suppress {unusedLocalVariables} f is only used for nested messages + */ +proto.rivet.pegboard.kv.Response.serializeBinaryToWriter = function(message, writer) { + var f = undefined; + f = message.getRequestId(); + if (f !== 0) { + writer.writeUint32( + 1, + f + ); + } + f = message.getError(); + if (f != null) { + writer.writeMessage( + 2, + f, + proto.rivet.pegboard.kv.Response.Error.serializeBinaryToWriter + ); + } + f = message.getGet(); + if (f != null) { + writer.writeMessage( + 3, + f, + proto.rivet.pegboard.kv.Response.Get.serializeBinaryToWriter + ); + } + f = message.getList(); + if (f != null) { + writer.writeMessage( + 4, + f, + proto.rivet.pegboard.kv.Response.List.serializeBinaryToWriter + ); + } + f = message.getPut(); + if (f != null) { + writer.writeMessage( + 5, + f, + proto.rivet.pegboard.kv.Response.Put.serializeBinaryToWriter + ); + } + f = message.getDelete(); + if (f != null) { + writer.writeMessage( + 6, + f, + proto.rivet.pegboard.kv.Response.Delete.serializeBinaryToWriter + ); + } + f = message.getDrop(); + if (f != null) { + writer.writeMessage( + 7, + f, + proto.rivet.pegboard.kv.Response.Drop.serializeBinaryToWriter + ); + } +}; + + + + + +if (jspb.Message.GENERATE_TO_OBJECT) { +/** + * Creates an object representation of this proto. + * Field names that are reserved in JavaScript and will be renamed to pb_name. + * Optional fields that are not set will be set to undefined. + * To access a reserved field use, foo.pb_, eg, foo.pb_default. + * For the list of reserved names please see: + * net/proto2/compiler/js/internal/generator.cc#kKeyword. + * @param {boolean=} opt_includeInstance Deprecated. whether to include the + * JSPB instance for transitional soy proto support: + * http://goto/soy-param-migration + * @return {!Object} + */ +proto.rivet.pegboard.kv.Response.Error.prototype.toObject = function(opt_includeInstance) { + return proto.rivet.pegboard.kv.Response.Error.toObject(opt_includeInstance, this); +}; + + +/** + * Static version of the {@see toObject} method. + * @param {boolean|undefined} includeInstance Deprecated. Whether to include + * the JSPB instance for transitional soy proto support: + * http://goto/soy-param-migration + * @param {!proto.rivet.pegboard.kv.Response.Error} msg The msg instance to transform. + * @return {!Object} + * @suppress {unusedLocalVariables} f is only used for nested messages + */ +proto.rivet.pegboard.kv.Response.Error.toObject = function(includeInstance, msg) { + var f, obj = { +message: jspb.Message.getFieldWithDefault(msg, 1, "") + }; + + if (includeInstance) { + obj.$jspbMessageInstance = msg; + } + return obj; +}; +} + + +/** + * Deserializes binary data (in protobuf wire format). + * @param {jspb.ByteSource} bytes The bytes to deserialize. + * @return {!proto.rivet.pegboard.kv.Response.Error} + */ +proto.rivet.pegboard.kv.Response.Error.deserializeBinary = function(bytes) { + var reader = new jspb.BinaryReader(bytes); + var msg = new proto.rivet.pegboard.kv.Response.Error; + return proto.rivet.pegboard.kv.Response.Error.deserializeBinaryFromReader(msg, reader); +}; + + +/** + * Deserializes binary data (in protobuf wire format) from the + * given reader into the given message object. + * @param {!proto.rivet.pegboard.kv.Response.Error} msg The message object to deserialize into. + * @param {!jspb.BinaryReader} reader The BinaryReader to use. + * @return {!proto.rivet.pegboard.kv.Response.Error} + */ +proto.rivet.pegboard.kv.Response.Error.deserializeBinaryFromReader = function(msg, reader) { + while (reader.nextField()) { + if (reader.isEndGroup()) { + break; + } + var field = reader.getFieldNumber(); + switch (field) { + case 1: + var value = /** @type {string} */ (reader.readString()); + msg.setMessage(value); + break; + default: + reader.skipField(); + break; + } + } + return msg; +}; + + +/** + * Serializes the message to binary data (in protobuf wire format). + * @return {!Uint8Array} + */ +proto.rivet.pegboard.kv.Response.Error.prototype.serializeBinary = function() { + var writer = new jspb.BinaryWriter(); + proto.rivet.pegboard.kv.Response.Error.serializeBinaryToWriter(this, writer); + return writer.getResultBuffer(); +}; + + +/** + * Serializes the given message to binary data (in protobuf wire + * format), writing to the given BinaryWriter. + * @param {!proto.rivet.pegboard.kv.Response.Error} message + * @param {!jspb.BinaryWriter} writer + * @suppress {unusedLocalVariables} f is only used for nested messages + */ +proto.rivet.pegboard.kv.Response.Error.serializeBinaryToWriter = function(message, writer) { + var f = undefined; + f = message.getMessage(); + if (f.length > 0) { + writer.writeString( + 1, + f + ); + } +}; + + +/** + * optional string message = 1; + * @return {string} + */ +proto.rivet.pegboard.kv.Response.Error.prototype.getMessage = function() { + return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, "")); +}; + + +/** + * @param {string} value + * @return {!proto.rivet.pegboard.kv.Response.Error} returns this + */ +proto.rivet.pegboard.kv.Response.Error.prototype.setMessage = function(value) { + return jspb.Message.setProto3StringField(this, 1, value); +}; + + + +/** + * List of repeated fields within this message type. + * @private {!Array} + * @const + */ +proto.rivet.pegboard.kv.Response.Get.repeatedFields_ = [1,2]; + + + +if (jspb.Message.GENERATE_TO_OBJECT) { +/** + * Creates an object representation of this proto. + * Field names that are reserved in JavaScript and will be renamed to pb_name. + * Optional fields that are not set will be set to undefined. + * To access a reserved field use, foo.pb_, eg, foo.pb_default. + * For the list of reserved names please see: + * net/proto2/compiler/js/internal/generator.cc#kKeyword. + * @param {boolean=} opt_includeInstance Deprecated. whether to include the + * JSPB instance for transitional soy proto support: + * http://goto/soy-param-migration + * @return {!Object} + */ +proto.rivet.pegboard.kv.Response.Get.prototype.toObject = function(opt_includeInstance) { + return proto.rivet.pegboard.kv.Response.Get.toObject(opt_includeInstance, this); +}; + + +/** + * Static version of the {@see toObject} method. + * @param {boolean|undefined} includeInstance Deprecated. Whether to include + * the JSPB instance for transitional soy proto support: + * http://goto/soy-param-migration + * @param {!proto.rivet.pegboard.kv.Response.Get} msg The msg instance to transform. + * @return {!Object} + * @suppress {unusedLocalVariables} f is only used for nested messages + */ +proto.rivet.pegboard.kv.Response.Get.toObject = function(includeInstance, msg) { + var f, obj = { +keysList: jspb.Message.toObjectList(msg.getKeysList(), + proto.rivet.pegboard.kv.Key.toObject, includeInstance), +valuesList: jspb.Message.toObjectList(msg.getValuesList(), + proto.rivet.pegboard.kv.Entry.toObject, includeInstance) + }; + + if (includeInstance) { + obj.$jspbMessageInstance = msg; + } + return obj; +}; +} + + +/** + * Deserializes binary data (in protobuf wire format). + * @param {jspb.ByteSource} bytes The bytes to deserialize. + * @return {!proto.rivet.pegboard.kv.Response.Get} + */ +proto.rivet.pegboard.kv.Response.Get.deserializeBinary = function(bytes) { + var reader = new jspb.BinaryReader(bytes); + var msg = new proto.rivet.pegboard.kv.Response.Get; + return proto.rivet.pegboard.kv.Response.Get.deserializeBinaryFromReader(msg, reader); +}; + + +/** + * Deserializes binary data (in protobuf wire format) from the + * given reader into the given message object. + * @param {!proto.rivet.pegboard.kv.Response.Get} msg The message object to deserialize into. + * @param {!jspb.BinaryReader} reader The BinaryReader to use. + * @return {!proto.rivet.pegboard.kv.Response.Get} + */ +proto.rivet.pegboard.kv.Response.Get.deserializeBinaryFromReader = function(msg, reader) { + while (reader.nextField()) { + if (reader.isEndGroup()) { + break; + } + var field = reader.getFieldNumber(); + switch (field) { + case 1: + var value = new proto.rivet.pegboard.kv.Key; + reader.readMessage(value,proto.rivet.pegboard.kv.Key.deserializeBinaryFromReader); + msg.addKeys(value); + break; + case 2: + var value = new proto.rivet.pegboard.kv.Entry; + reader.readMessage(value,proto.rivet.pegboard.kv.Entry.deserializeBinaryFromReader); + msg.addValues(value); + break; + default: + reader.skipField(); + break; + } + } + return msg; +}; + + +/** + * Serializes the message to binary data (in protobuf wire format). + * @return {!Uint8Array} + */ +proto.rivet.pegboard.kv.Response.Get.prototype.serializeBinary = function() { + var writer = new jspb.BinaryWriter(); + proto.rivet.pegboard.kv.Response.Get.serializeBinaryToWriter(this, writer); + return writer.getResultBuffer(); +}; + + +/** + * Serializes the given message to binary data (in protobuf wire + * format), writing to the given BinaryWriter. + * @param {!proto.rivet.pegboard.kv.Response.Get} message + * @param {!jspb.BinaryWriter} writer + * @suppress {unusedLocalVariables} f is only used for nested messages + */ +proto.rivet.pegboard.kv.Response.Get.serializeBinaryToWriter = function(message, writer) { + var f = undefined; + f = message.getKeysList(); + if (f.length > 0) { + writer.writeRepeatedMessage( + 1, + f, + proto.rivet.pegboard.kv.Key.serializeBinaryToWriter + ); + } + f = message.getValuesList(); + if (f.length > 0) { + writer.writeRepeatedMessage( + 2, + f, + proto.rivet.pegboard.kv.Entry.serializeBinaryToWriter + ); + } +}; + + +/** + * repeated Key keys = 1; + * @return {!Array} + */ +proto.rivet.pegboard.kv.Response.Get.prototype.getKeysList = function() { + return /** @type{!Array} */ ( + jspb.Message.getRepeatedWrapperField(this, proto.rivet.pegboard.kv.Key, 1)); +}; + + +/** + * @param {!Array} value + * @return {!proto.rivet.pegboard.kv.Response.Get} returns this +*/ +proto.rivet.pegboard.kv.Response.Get.prototype.setKeysList = function(value) { + return jspb.Message.setRepeatedWrapperField(this, 1, value); +}; + + +/** + * @param {!proto.rivet.pegboard.kv.Key=} opt_value + * @param {number=} opt_index + * @return {!proto.rivet.pegboard.kv.Key} + */ +proto.rivet.pegboard.kv.Response.Get.prototype.addKeys = function(opt_value, opt_index) { + return jspb.Message.addToRepeatedWrapperField(this, 1, opt_value, proto.rivet.pegboard.kv.Key, opt_index); +}; + + +/** + * Clears the list making it empty but non-null. + * @return {!proto.rivet.pegboard.kv.Response.Get} returns this + */ +proto.rivet.pegboard.kv.Response.Get.prototype.clearKeysList = function() { + return this.setKeysList([]); +}; + + +/** + * repeated Entry values = 2; + * @return {!Array} + */ +proto.rivet.pegboard.kv.Response.Get.prototype.getValuesList = function() { + return /** @type{!Array} */ ( + jspb.Message.getRepeatedWrapperField(this, proto.rivet.pegboard.kv.Entry, 2)); +}; + + +/** + * @param {!Array} value + * @return {!proto.rivet.pegboard.kv.Response.Get} returns this +*/ +proto.rivet.pegboard.kv.Response.Get.prototype.setValuesList = function(value) { + return jspb.Message.setRepeatedWrapperField(this, 2, value); +}; + + +/** + * @param {!proto.rivet.pegboard.kv.Entry=} opt_value + * @param {number=} opt_index + * @return {!proto.rivet.pegboard.kv.Entry} + */ +proto.rivet.pegboard.kv.Response.Get.prototype.addValues = function(opt_value, opt_index) { + return jspb.Message.addToRepeatedWrapperField(this, 2, opt_value, proto.rivet.pegboard.kv.Entry, opt_index); +}; + + +/** + * Clears the list making it empty but non-null. + * @return {!proto.rivet.pegboard.kv.Response.Get} returns this + */ +proto.rivet.pegboard.kv.Response.Get.prototype.clearValuesList = function() { + return this.setValuesList([]); +}; + + + +/** + * List of repeated fields within this message type. + * @private {!Array} + * @const + */ +proto.rivet.pegboard.kv.Response.List.repeatedFields_ = [1,2]; + + + +if (jspb.Message.GENERATE_TO_OBJECT) { +/** + * Creates an object representation of this proto. + * Field names that are reserved in JavaScript and will be renamed to pb_name. + * Optional fields that are not set will be set to undefined. + * To access a reserved field use, foo.pb_, eg, foo.pb_default. + * For the list of reserved names please see: + * net/proto2/compiler/js/internal/generator.cc#kKeyword. + * @param {boolean=} opt_includeInstance Deprecated. whether to include the + * JSPB instance for transitional soy proto support: + * http://goto/soy-param-migration + * @return {!Object} + */ +proto.rivet.pegboard.kv.Response.List.prototype.toObject = function(opt_includeInstance) { + return proto.rivet.pegboard.kv.Response.List.toObject(opt_includeInstance, this); +}; + + +/** + * Static version of the {@see toObject} method. + * @param {boolean|undefined} includeInstance Deprecated. Whether to include + * the JSPB instance for transitional soy proto support: + * http://goto/soy-param-migration + * @param {!proto.rivet.pegboard.kv.Response.List} msg The msg instance to transform. + * @return {!Object} + * @suppress {unusedLocalVariables} f is only used for nested messages + */ +proto.rivet.pegboard.kv.Response.List.toObject = function(includeInstance, msg) { + var f, obj = { +keysList: jspb.Message.toObjectList(msg.getKeysList(), + proto.rivet.pegboard.kv.Key.toObject, includeInstance), +valuesList: jspb.Message.toObjectList(msg.getValuesList(), + proto.rivet.pegboard.kv.Entry.toObject, includeInstance) + }; + + if (includeInstance) { + obj.$jspbMessageInstance = msg; + } + return obj; +}; +} + + +/** + * Deserializes binary data (in protobuf wire format). + * @param {jspb.ByteSource} bytes The bytes to deserialize. + * @return {!proto.rivet.pegboard.kv.Response.List} + */ +proto.rivet.pegboard.kv.Response.List.deserializeBinary = function(bytes) { + var reader = new jspb.BinaryReader(bytes); + var msg = new proto.rivet.pegboard.kv.Response.List; + return proto.rivet.pegboard.kv.Response.List.deserializeBinaryFromReader(msg, reader); +}; + + +/** + * Deserializes binary data (in protobuf wire format) from the + * given reader into the given message object. + * @param {!proto.rivet.pegboard.kv.Response.List} msg The message object to deserialize into. + * @param {!jspb.BinaryReader} reader The BinaryReader to use. + * @return {!proto.rivet.pegboard.kv.Response.List} + */ +proto.rivet.pegboard.kv.Response.List.deserializeBinaryFromReader = function(msg, reader) { + while (reader.nextField()) { + if (reader.isEndGroup()) { + break; + } + var field = reader.getFieldNumber(); + switch (field) { + case 1: + var value = new proto.rivet.pegboard.kv.Key; + reader.readMessage(value,proto.rivet.pegboard.kv.Key.deserializeBinaryFromReader); + msg.addKeys(value); + break; + case 2: + var value = new proto.rivet.pegboard.kv.Entry; + reader.readMessage(value,proto.rivet.pegboard.kv.Entry.deserializeBinaryFromReader); + msg.addValues(value); + break; + default: + reader.skipField(); + break; + } + } + return msg; +}; + + +/** + * Serializes the message to binary data (in protobuf wire format). + * @return {!Uint8Array} + */ +proto.rivet.pegboard.kv.Response.List.prototype.serializeBinary = function() { + var writer = new jspb.BinaryWriter(); + proto.rivet.pegboard.kv.Response.List.serializeBinaryToWriter(this, writer); + return writer.getResultBuffer(); +}; + + +/** + * Serializes the given message to binary data (in protobuf wire + * format), writing to the given BinaryWriter. + * @param {!proto.rivet.pegboard.kv.Response.List} message + * @param {!jspb.BinaryWriter} writer + * @suppress {unusedLocalVariables} f is only used for nested messages + */ +proto.rivet.pegboard.kv.Response.List.serializeBinaryToWriter = function(message, writer) { + var f = undefined; + f = message.getKeysList(); + if (f.length > 0) { + writer.writeRepeatedMessage( + 1, + f, + proto.rivet.pegboard.kv.Key.serializeBinaryToWriter + ); + } + f = message.getValuesList(); + if (f.length > 0) { + writer.writeRepeatedMessage( + 2, + f, + proto.rivet.pegboard.kv.Entry.serializeBinaryToWriter + ); + } +}; + + +/** + * repeated Key keys = 1; + * @return {!Array} + */ +proto.rivet.pegboard.kv.Response.List.prototype.getKeysList = function() { + return /** @type{!Array} */ ( + jspb.Message.getRepeatedWrapperField(this, proto.rivet.pegboard.kv.Key, 1)); +}; + + +/** + * @param {!Array} value + * @return {!proto.rivet.pegboard.kv.Response.List} returns this +*/ +proto.rivet.pegboard.kv.Response.List.prototype.setKeysList = function(value) { + return jspb.Message.setRepeatedWrapperField(this, 1, value); +}; + + +/** + * @param {!proto.rivet.pegboard.kv.Key=} opt_value + * @param {number=} opt_index + * @return {!proto.rivet.pegboard.kv.Key} + */ +proto.rivet.pegboard.kv.Response.List.prototype.addKeys = function(opt_value, opt_index) { + return jspb.Message.addToRepeatedWrapperField(this, 1, opt_value, proto.rivet.pegboard.kv.Key, opt_index); +}; + + +/** + * Clears the list making it empty but non-null. + * @return {!proto.rivet.pegboard.kv.Response.List} returns this + */ +proto.rivet.pegboard.kv.Response.List.prototype.clearKeysList = function() { + return this.setKeysList([]); +}; + + +/** + * repeated Entry values = 2; + * @return {!Array} + */ +proto.rivet.pegboard.kv.Response.List.prototype.getValuesList = function() { + return /** @type{!Array} */ ( + jspb.Message.getRepeatedWrapperField(this, proto.rivet.pegboard.kv.Entry, 2)); +}; + + +/** + * @param {!Array} value + * @return {!proto.rivet.pegboard.kv.Response.List} returns this +*/ +proto.rivet.pegboard.kv.Response.List.prototype.setValuesList = function(value) { + return jspb.Message.setRepeatedWrapperField(this, 2, value); +}; + + +/** + * @param {!proto.rivet.pegboard.kv.Entry=} opt_value + * @param {number=} opt_index + * @return {!proto.rivet.pegboard.kv.Entry} + */ +proto.rivet.pegboard.kv.Response.List.prototype.addValues = function(opt_value, opt_index) { + return jspb.Message.addToRepeatedWrapperField(this, 2, opt_value, proto.rivet.pegboard.kv.Entry, opt_index); +}; + + +/** + * Clears the list making it empty but non-null. + * @return {!proto.rivet.pegboard.kv.Response.List} returns this + */ +proto.rivet.pegboard.kv.Response.List.prototype.clearValuesList = function() { + return this.setValuesList([]); +}; + + + + + +if (jspb.Message.GENERATE_TO_OBJECT) { +/** + * Creates an object representation of this proto. + * Field names that are reserved in JavaScript and will be renamed to pb_name. + * Optional fields that are not set will be set to undefined. + * To access a reserved field use, foo.pb_, eg, foo.pb_default. + * For the list of reserved names please see: + * net/proto2/compiler/js/internal/generator.cc#kKeyword. + * @param {boolean=} opt_includeInstance Deprecated. whether to include the + * JSPB instance for transitional soy proto support: + * http://goto/soy-param-migration + * @return {!Object} + */ +proto.rivet.pegboard.kv.Response.Put.prototype.toObject = function(opt_includeInstance) { + return proto.rivet.pegboard.kv.Response.Put.toObject(opt_includeInstance, this); +}; + + +/** + * Static version of the {@see toObject} method. + * @param {boolean|undefined} includeInstance Deprecated. Whether to include + * the JSPB instance for transitional soy proto support: + * http://goto/soy-param-migration + * @param {!proto.rivet.pegboard.kv.Response.Put} msg The msg instance to transform. + * @return {!Object} + * @suppress {unusedLocalVariables} f is only used for nested messages + */ +proto.rivet.pegboard.kv.Response.Put.toObject = function(includeInstance, msg) { + var f, obj = { + + }; + + if (includeInstance) { + obj.$jspbMessageInstance = msg; + } + return obj; +}; +} + + +/** + * Deserializes binary data (in protobuf wire format). + * @param {jspb.ByteSource} bytes The bytes to deserialize. + * @return {!proto.rivet.pegboard.kv.Response.Put} + */ +proto.rivet.pegboard.kv.Response.Put.deserializeBinary = function(bytes) { + var reader = new jspb.BinaryReader(bytes); + var msg = new proto.rivet.pegboard.kv.Response.Put; + return proto.rivet.pegboard.kv.Response.Put.deserializeBinaryFromReader(msg, reader); +}; + + +/** + * Deserializes binary data (in protobuf wire format) from the + * given reader into the given message object. + * @param {!proto.rivet.pegboard.kv.Response.Put} msg The message object to deserialize into. + * @param {!jspb.BinaryReader} reader The BinaryReader to use. + * @return {!proto.rivet.pegboard.kv.Response.Put} + */ +proto.rivet.pegboard.kv.Response.Put.deserializeBinaryFromReader = function(msg, reader) { + while (reader.nextField()) { + if (reader.isEndGroup()) { + break; + } + var field = reader.getFieldNumber(); + switch (field) { + default: + reader.skipField(); + break; + } + } + return msg; +}; + + +/** + * Serializes the message to binary data (in protobuf wire format). + * @return {!Uint8Array} + */ +proto.rivet.pegboard.kv.Response.Put.prototype.serializeBinary = function() { + var writer = new jspb.BinaryWriter(); + proto.rivet.pegboard.kv.Response.Put.serializeBinaryToWriter(this, writer); + return writer.getResultBuffer(); +}; + + +/** + * Serializes the given message to binary data (in protobuf wire + * format), writing to the given BinaryWriter. + * @param {!proto.rivet.pegboard.kv.Response.Put} message + * @param {!jspb.BinaryWriter} writer + * @suppress {unusedLocalVariables} f is only used for nested messages + */ +proto.rivet.pegboard.kv.Response.Put.serializeBinaryToWriter = function(message, writer) { + var f = undefined; +}; + + + + + +if (jspb.Message.GENERATE_TO_OBJECT) { +/** + * Creates an object representation of this proto. + * Field names that are reserved in JavaScript and will be renamed to pb_name. + * Optional fields that are not set will be set to undefined. + * To access a reserved field use, foo.pb_, eg, foo.pb_default. + * For the list of reserved names please see: + * net/proto2/compiler/js/internal/generator.cc#kKeyword. + * @param {boolean=} opt_includeInstance Deprecated. whether to include the + * JSPB instance for transitional soy proto support: + * http://goto/soy-param-migration + * @return {!Object} + */ +proto.rivet.pegboard.kv.Response.Delete.prototype.toObject = function(opt_includeInstance) { + return proto.rivet.pegboard.kv.Response.Delete.toObject(opt_includeInstance, this); +}; + + +/** + * Static version of the {@see toObject} method. + * @param {boolean|undefined} includeInstance Deprecated. Whether to include + * the JSPB instance for transitional soy proto support: + * http://goto/soy-param-migration + * @param {!proto.rivet.pegboard.kv.Response.Delete} msg The msg instance to transform. + * @return {!Object} + * @suppress {unusedLocalVariables} f is only used for nested messages + */ +proto.rivet.pegboard.kv.Response.Delete.toObject = function(includeInstance, msg) { + var f, obj = { + + }; + + if (includeInstance) { + obj.$jspbMessageInstance = msg; + } + return obj; +}; +} + + +/** + * Deserializes binary data (in protobuf wire format). + * @param {jspb.ByteSource} bytes The bytes to deserialize. + * @return {!proto.rivet.pegboard.kv.Response.Delete} + */ +proto.rivet.pegboard.kv.Response.Delete.deserializeBinary = function(bytes) { + var reader = new jspb.BinaryReader(bytes); + var msg = new proto.rivet.pegboard.kv.Response.Delete; + return proto.rivet.pegboard.kv.Response.Delete.deserializeBinaryFromReader(msg, reader); +}; + + +/** + * Deserializes binary data (in protobuf wire format) from the + * given reader into the given message object. + * @param {!proto.rivet.pegboard.kv.Response.Delete} msg The message object to deserialize into. + * @param {!jspb.BinaryReader} reader The BinaryReader to use. + * @return {!proto.rivet.pegboard.kv.Response.Delete} + */ +proto.rivet.pegboard.kv.Response.Delete.deserializeBinaryFromReader = function(msg, reader) { + while (reader.nextField()) { + if (reader.isEndGroup()) { + break; + } + var field = reader.getFieldNumber(); + switch (field) { + default: + reader.skipField(); + break; + } + } + return msg; +}; + + +/** + * Serializes the message to binary data (in protobuf wire format). + * @return {!Uint8Array} + */ +proto.rivet.pegboard.kv.Response.Delete.prototype.serializeBinary = function() { + var writer = new jspb.BinaryWriter(); + proto.rivet.pegboard.kv.Response.Delete.serializeBinaryToWriter(this, writer); + return writer.getResultBuffer(); +}; + + +/** + * Serializes the given message to binary data (in protobuf wire + * format), writing to the given BinaryWriter. + * @param {!proto.rivet.pegboard.kv.Response.Delete} message + * @param {!jspb.BinaryWriter} writer + * @suppress {unusedLocalVariables} f is only used for nested messages + */ +proto.rivet.pegboard.kv.Response.Delete.serializeBinaryToWriter = function(message, writer) { + var f = undefined; +}; + + + + + +if (jspb.Message.GENERATE_TO_OBJECT) { +/** + * Creates an object representation of this proto. + * Field names that are reserved in JavaScript and will be renamed to pb_name. + * Optional fields that are not set will be set to undefined. + * To access a reserved field use, foo.pb_, eg, foo.pb_default. + * For the list of reserved names please see: + * net/proto2/compiler/js/internal/generator.cc#kKeyword. + * @param {boolean=} opt_includeInstance Deprecated. whether to include the + * JSPB instance for transitional soy proto support: + * http://goto/soy-param-migration + * @return {!Object} + */ +proto.rivet.pegboard.kv.Response.Drop.prototype.toObject = function(opt_includeInstance) { + return proto.rivet.pegboard.kv.Response.Drop.toObject(opt_includeInstance, this); +}; + + +/** + * Static version of the {@see toObject} method. + * @param {boolean|undefined} includeInstance Deprecated. Whether to include + * the JSPB instance for transitional soy proto support: + * http://goto/soy-param-migration + * @param {!proto.rivet.pegboard.kv.Response.Drop} msg The msg instance to transform. + * @return {!Object} + * @suppress {unusedLocalVariables} f is only used for nested messages + */ +proto.rivet.pegboard.kv.Response.Drop.toObject = function(includeInstance, msg) { + var f, obj = { + + }; + + if (includeInstance) { + obj.$jspbMessageInstance = msg; + } + return obj; +}; +} + + +/** + * Deserializes binary data (in protobuf wire format). + * @param {jspb.ByteSource} bytes The bytes to deserialize. + * @return {!proto.rivet.pegboard.kv.Response.Drop} + */ +proto.rivet.pegboard.kv.Response.Drop.deserializeBinary = function(bytes) { + var reader = new jspb.BinaryReader(bytes); + var msg = new proto.rivet.pegboard.kv.Response.Drop; + return proto.rivet.pegboard.kv.Response.Drop.deserializeBinaryFromReader(msg, reader); +}; + + +/** + * Deserializes binary data (in protobuf wire format) from the + * given reader into the given message object. + * @param {!proto.rivet.pegboard.kv.Response.Drop} msg The message object to deserialize into. + * @param {!jspb.BinaryReader} reader The BinaryReader to use. + * @return {!proto.rivet.pegboard.kv.Response.Drop} + */ +proto.rivet.pegboard.kv.Response.Drop.deserializeBinaryFromReader = function(msg, reader) { + while (reader.nextField()) { + if (reader.isEndGroup()) { + break; + } + var field = reader.getFieldNumber(); + switch (field) { + default: + reader.skipField(); + break; + } + } + return msg; +}; + + +/** + * Serializes the message to binary data (in protobuf wire format). + * @return {!Uint8Array} + */ +proto.rivet.pegboard.kv.Response.Drop.prototype.serializeBinary = function() { + var writer = new jspb.BinaryWriter(); + proto.rivet.pegboard.kv.Response.Drop.serializeBinaryToWriter(this, writer); + return writer.getResultBuffer(); +}; + + +/** + * Serializes the given message to binary data (in protobuf wire + * format), writing to the given BinaryWriter. + * @param {!proto.rivet.pegboard.kv.Response.Drop} message + * @param {!jspb.BinaryWriter} writer + * @suppress {unusedLocalVariables} f is only used for nested messages + */ +proto.rivet.pegboard.kv.Response.Drop.serializeBinaryToWriter = function(message, writer) { + var f = undefined; +}; + + +/** + * optional uint32 request_id = 1; + * @return {number} + */ +proto.rivet.pegboard.kv.Response.prototype.getRequestId = function() { + return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 1, 0)); +}; + + +/** + * @param {number} value + * @return {!proto.rivet.pegboard.kv.Response} returns this + */ +proto.rivet.pegboard.kv.Response.prototype.setRequestId = function(value) { + return jspb.Message.setProto3IntField(this, 1, value); +}; + + +/** + * optional Error error = 2; + * @return {?proto.rivet.pegboard.kv.Response.Error} + */ +proto.rivet.pegboard.kv.Response.prototype.getError = function() { + return /** @type{?proto.rivet.pegboard.kv.Response.Error} */ ( + jspb.Message.getWrapperField(this, proto.rivet.pegboard.kv.Response.Error, 2)); +}; + + +/** + * @param {?proto.rivet.pegboard.kv.Response.Error|undefined} value + * @return {!proto.rivet.pegboard.kv.Response} returns this +*/ +proto.rivet.pegboard.kv.Response.prototype.setError = function(value) { + return jspb.Message.setOneofWrapperField(this, 2, proto.rivet.pegboard.kv.Response.oneofGroups_[0], value); +}; + + +/** + * Clears the message field making it undefined. + * @return {!proto.rivet.pegboard.kv.Response} returns this + */ +proto.rivet.pegboard.kv.Response.prototype.clearError = function() { + return this.setError(undefined); +}; + + +/** + * Returns whether this field is set. + * @return {boolean} + */ +proto.rivet.pegboard.kv.Response.prototype.hasError = function() { + return jspb.Message.getField(this, 2) != null; +}; + + +/** + * optional Get get = 3; + * @return {?proto.rivet.pegboard.kv.Response.Get} + */ +proto.rivet.pegboard.kv.Response.prototype.getGet = function() { + return /** @type{?proto.rivet.pegboard.kv.Response.Get} */ ( + jspb.Message.getWrapperField(this, proto.rivet.pegboard.kv.Response.Get, 3)); +}; + + +/** + * @param {?proto.rivet.pegboard.kv.Response.Get|undefined} value + * @return {!proto.rivet.pegboard.kv.Response} returns this +*/ +proto.rivet.pegboard.kv.Response.prototype.setGet = function(value) { + return jspb.Message.setOneofWrapperField(this, 3, proto.rivet.pegboard.kv.Response.oneofGroups_[0], value); +}; + + +/** + * Clears the message field making it undefined. + * @return {!proto.rivet.pegboard.kv.Response} returns this + */ +proto.rivet.pegboard.kv.Response.prototype.clearGet = function() { + return this.setGet(undefined); +}; + + +/** + * Returns whether this field is set. + * @return {boolean} + */ +proto.rivet.pegboard.kv.Response.prototype.hasGet = function() { + return jspb.Message.getField(this, 3) != null; +}; + + +/** + * optional List list = 4; + * @return {?proto.rivet.pegboard.kv.Response.List} + */ +proto.rivet.pegboard.kv.Response.prototype.getList = function() { + return /** @type{?proto.rivet.pegboard.kv.Response.List} */ ( + jspb.Message.getWrapperField(this, proto.rivet.pegboard.kv.Response.List, 4)); +}; + + +/** + * @param {?proto.rivet.pegboard.kv.Response.List|undefined} value + * @return {!proto.rivet.pegboard.kv.Response} returns this +*/ +proto.rivet.pegboard.kv.Response.prototype.setList = function(value) { + return jspb.Message.setOneofWrapperField(this, 4, proto.rivet.pegboard.kv.Response.oneofGroups_[0], value); +}; + + +/** + * Clears the message field making it undefined. + * @return {!proto.rivet.pegboard.kv.Response} returns this + */ +proto.rivet.pegboard.kv.Response.prototype.clearList = function() { + return this.setList(undefined); +}; + + +/** + * Returns whether this field is set. + * @return {boolean} + */ +proto.rivet.pegboard.kv.Response.prototype.hasList = function() { + return jspb.Message.getField(this, 4) != null; +}; + + +/** + * optional Put put = 5; + * @return {?proto.rivet.pegboard.kv.Response.Put} + */ +proto.rivet.pegboard.kv.Response.prototype.getPut = function() { + return /** @type{?proto.rivet.pegboard.kv.Response.Put} */ ( + jspb.Message.getWrapperField(this, proto.rivet.pegboard.kv.Response.Put, 5)); +}; + + +/** + * @param {?proto.rivet.pegboard.kv.Response.Put|undefined} value + * @return {!proto.rivet.pegboard.kv.Response} returns this +*/ +proto.rivet.pegboard.kv.Response.prototype.setPut = function(value) { + return jspb.Message.setOneofWrapperField(this, 5, proto.rivet.pegboard.kv.Response.oneofGroups_[0], value); +}; + + +/** + * Clears the message field making it undefined. + * @return {!proto.rivet.pegboard.kv.Response} returns this + */ +proto.rivet.pegboard.kv.Response.prototype.clearPut = function() { + return this.setPut(undefined); +}; + + +/** + * Returns whether this field is set. + * @return {boolean} + */ +proto.rivet.pegboard.kv.Response.prototype.hasPut = function() { + return jspb.Message.getField(this, 5) != null; +}; + + +/** + * optional Delete delete = 6; + * @return {?proto.rivet.pegboard.kv.Response.Delete} + */ +proto.rivet.pegboard.kv.Response.prototype.getDelete = function() { + return /** @type{?proto.rivet.pegboard.kv.Response.Delete} */ ( + jspb.Message.getWrapperField(this, proto.rivet.pegboard.kv.Response.Delete, 6)); +}; + + +/** + * @param {?proto.rivet.pegboard.kv.Response.Delete|undefined} value + * @return {!proto.rivet.pegboard.kv.Response} returns this +*/ +proto.rivet.pegboard.kv.Response.prototype.setDelete = function(value) { + return jspb.Message.setOneofWrapperField(this, 6, proto.rivet.pegboard.kv.Response.oneofGroups_[0], value); +}; + + +/** + * Clears the message field making it undefined. + * @return {!proto.rivet.pegboard.kv.Response} returns this + */ +proto.rivet.pegboard.kv.Response.prototype.clearDelete = function() { + return this.setDelete(undefined); +}; + + +/** + * Returns whether this field is set. + * @return {boolean} + */ +proto.rivet.pegboard.kv.Response.prototype.hasDelete = function() { + return jspb.Message.getField(this, 6) != null; +}; + + +/** + * optional Drop drop = 7; + * @return {?proto.rivet.pegboard.kv.Response.Drop} + */ +proto.rivet.pegboard.kv.Response.prototype.getDrop = function() { + return /** @type{?proto.rivet.pegboard.kv.Response.Drop} */ ( + jspb.Message.getWrapperField(this, proto.rivet.pegboard.kv.Response.Drop, 7)); +}; + + +/** + * @param {?proto.rivet.pegboard.kv.Response.Drop|undefined} value + * @return {!proto.rivet.pegboard.kv.Response} returns this +*/ +proto.rivet.pegboard.kv.Response.prototype.setDrop = function(value) { + return jspb.Message.setOneofWrapperField(this, 7, proto.rivet.pegboard.kv.Response.oneofGroups_[0], value); +}; + + +/** + * Clears the message field making it undefined. + * @return {!proto.rivet.pegboard.kv.Response} returns this + */ +proto.rivet.pegboard.kv.Response.prototype.clearDrop = function() { + return this.setDrop(undefined); +}; + + +/** + * Returns whether this field is set. + * @return {boolean} + */ +proto.rivet.pegboard.kv.Response.prototype.hasDrop = function() { + return jspb.Message.getField(this, 7) != null; +}; + + + +/** + * List of repeated fields within this message type. + * @private {!Array} + * @const + */ +proto.rivet.pegboard.kv.Key.repeatedFields_ = [1]; + + + +if (jspb.Message.GENERATE_TO_OBJECT) { +/** + * Creates an object representation of this proto. + * Field names that are reserved in JavaScript and will be renamed to pb_name. + * Optional fields that are not set will be set to undefined. + * To access a reserved field use, foo.pb_, eg, foo.pb_default. + * For the list of reserved names please see: + * net/proto2/compiler/js/internal/generator.cc#kKeyword. + * @param {boolean=} opt_includeInstance Deprecated. whether to include the + * JSPB instance for transitional soy proto support: + * http://goto/soy-param-migration + * @return {!Object} + */ +proto.rivet.pegboard.kv.Key.prototype.toObject = function(opt_includeInstance) { + return proto.rivet.pegboard.kv.Key.toObject(opt_includeInstance, this); +}; + + +/** + * Static version of the {@see toObject} method. + * @param {boolean|undefined} includeInstance Deprecated. Whether to include + * the JSPB instance for transitional soy proto support: + * http://goto/soy-param-migration + * @param {!proto.rivet.pegboard.kv.Key} msg The msg instance to transform. + * @return {!Object} + * @suppress {unusedLocalVariables} f is only used for nested messages + */ +proto.rivet.pegboard.kv.Key.toObject = function(includeInstance, msg) { + var f, obj = { +segmentsList: msg.getSegmentsList_asB64() + }; + + if (includeInstance) { + obj.$jspbMessageInstance = msg; + } + return obj; +}; +} + + +/** + * Deserializes binary data (in protobuf wire format). + * @param {jspb.ByteSource} bytes The bytes to deserialize. + * @return {!proto.rivet.pegboard.kv.Key} + */ +proto.rivet.pegboard.kv.Key.deserializeBinary = function(bytes) { + var reader = new jspb.BinaryReader(bytes); + var msg = new proto.rivet.pegboard.kv.Key; + return proto.rivet.pegboard.kv.Key.deserializeBinaryFromReader(msg, reader); +}; + + +/** + * Deserializes binary data (in protobuf wire format) from the + * given reader into the given message object. + * @param {!proto.rivet.pegboard.kv.Key} msg The message object to deserialize into. + * @param {!jspb.BinaryReader} reader The BinaryReader to use. + * @return {!proto.rivet.pegboard.kv.Key} + */ +proto.rivet.pegboard.kv.Key.deserializeBinaryFromReader = function(msg, reader) { + while (reader.nextField()) { + if (reader.isEndGroup()) { + break; + } + var field = reader.getFieldNumber(); + switch (field) { + case 1: + var value = /** @type {!Uint8Array} */ (reader.readBytes()); + msg.addSegments(value); + break; + default: + reader.skipField(); + break; + } + } + return msg; +}; + + +/** + * Serializes the message to binary data (in protobuf wire format). + * @return {!Uint8Array} + */ +proto.rivet.pegboard.kv.Key.prototype.serializeBinary = function() { + var writer = new jspb.BinaryWriter(); + proto.rivet.pegboard.kv.Key.serializeBinaryToWriter(this, writer); + return writer.getResultBuffer(); +}; + + +/** + * Serializes the given message to binary data (in protobuf wire + * format), writing to the given BinaryWriter. + * @param {!proto.rivet.pegboard.kv.Key} message + * @param {!jspb.BinaryWriter} writer + * @suppress {unusedLocalVariables} f is only used for nested messages + */ +proto.rivet.pegboard.kv.Key.serializeBinaryToWriter = function(message, writer) { + var f = undefined; + f = message.getSegmentsList_asU8(); + if (f.length > 0) { + writer.writeRepeatedBytes( + 1, + f + ); + } +}; + + +/** + * repeated bytes segments = 1; + * @return {!Array} + */ +proto.rivet.pegboard.kv.Key.prototype.getSegmentsList = function() { + return /** @type {!Array} */ (jspb.Message.getRepeatedField(this, 1)); +}; + + +/** + * repeated bytes segments = 1; + * This is a type-conversion wrapper around `getSegmentsList()` + * @return {!Array} + */ +proto.rivet.pegboard.kv.Key.prototype.getSegmentsList_asB64 = function() { + return /** @type {!Array} */ (jspb.Message.bytesListAsB64( + this.getSegmentsList())); +}; + + +/** + * repeated bytes segments = 1; + * Note that Uint8Array is not supported on all browsers. + * @see http://caniuse.com/Uint8Array + * This is a type-conversion wrapper around `getSegmentsList()` + * @return {!Array} + */ +proto.rivet.pegboard.kv.Key.prototype.getSegmentsList_asU8 = function() { + return /** @type {!Array} */ (jspb.Message.bytesListAsU8( + this.getSegmentsList())); +}; + + +/** + * @param {!(Array|Array)} value + * @return {!proto.rivet.pegboard.kv.Key} returns this + */ +proto.rivet.pegboard.kv.Key.prototype.setSegmentsList = function(value) { + return jspb.Message.setField(this, 1, value || []); +}; + + +/** + * @param {!(string|Uint8Array)} value + * @param {number=} opt_index + * @return {!proto.rivet.pegboard.kv.Key} returns this + */ +proto.rivet.pegboard.kv.Key.prototype.addSegments = function(value, opt_index) { + return jspb.Message.addToRepeatedField(this, 1, value, opt_index); +}; + + +/** + * Clears the list making it empty but non-null. + * @return {!proto.rivet.pegboard.kv.Key} returns this + */ +proto.rivet.pegboard.kv.Key.prototype.clearSegmentsList = function() { + return this.setSegmentsList([]); +}; + + + + + +if (jspb.Message.GENERATE_TO_OBJECT) { +/** + * Creates an object representation of this proto. + * Field names that are reserved in JavaScript and will be renamed to pb_name. + * Optional fields that are not set will be set to undefined. + * To access a reserved field use, foo.pb_, eg, foo.pb_default. + * For the list of reserved names please see: + * net/proto2/compiler/js/internal/generator.cc#kKeyword. + * @param {boolean=} opt_includeInstance Deprecated. whether to include the + * JSPB instance for transitional soy proto support: + * http://goto/soy-param-migration + * @return {!Object} + */ +proto.rivet.pegboard.kv.Entry.prototype.toObject = function(opt_includeInstance) { + return proto.rivet.pegboard.kv.Entry.toObject(opt_includeInstance, this); +}; + + +/** + * Static version of the {@see toObject} method. + * @param {boolean|undefined} includeInstance Deprecated. Whether to include + * the JSPB instance for transitional soy proto support: + * http://goto/soy-param-migration + * @param {!proto.rivet.pegboard.kv.Entry} msg The msg instance to transform. + * @return {!Object} + * @suppress {unusedLocalVariables} f is only used for nested messages + */ +proto.rivet.pegboard.kv.Entry.toObject = function(includeInstance, msg) { + var f, obj = { +value: msg.getValue_asB64(), +metadata: (f = msg.getMetadata()) && proto.rivet.pegboard.kv.Metadata.toObject(includeInstance, f) + }; + + if (includeInstance) { + obj.$jspbMessageInstance = msg; + } + return obj; +}; +} + + +/** + * Deserializes binary data (in protobuf wire format). + * @param {jspb.ByteSource} bytes The bytes to deserialize. + * @return {!proto.rivet.pegboard.kv.Entry} + */ +proto.rivet.pegboard.kv.Entry.deserializeBinary = function(bytes) { + var reader = new jspb.BinaryReader(bytes); + var msg = new proto.rivet.pegboard.kv.Entry; + return proto.rivet.pegboard.kv.Entry.deserializeBinaryFromReader(msg, reader); +}; + + +/** + * Deserializes binary data (in protobuf wire format) from the + * given reader into the given message object. + * @param {!proto.rivet.pegboard.kv.Entry} msg The message object to deserialize into. + * @param {!jspb.BinaryReader} reader The BinaryReader to use. + * @return {!proto.rivet.pegboard.kv.Entry} + */ +proto.rivet.pegboard.kv.Entry.deserializeBinaryFromReader = function(msg, reader) { + while (reader.nextField()) { + if (reader.isEndGroup()) { + break; + } + var field = reader.getFieldNumber(); + switch (field) { + case 1: + var value = /** @type {!Uint8Array} */ (reader.readBytes()); + msg.setValue(value); + break; + case 2: + var value = new proto.rivet.pegboard.kv.Metadata; + reader.readMessage(value,proto.rivet.pegboard.kv.Metadata.deserializeBinaryFromReader); + msg.setMetadata(value); + break; + default: + reader.skipField(); + break; + } + } + return msg; +}; + + +/** + * Serializes the message to binary data (in protobuf wire format). + * @return {!Uint8Array} + */ +proto.rivet.pegboard.kv.Entry.prototype.serializeBinary = function() { + var writer = new jspb.BinaryWriter(); + proto.rivet.pegboard.kv.Entry.serializeBinaryToWriter(this, writer); + return writer.getResultBuffer(); +}; + + +/** + * Serializes the given message to binary data (in protobuf wire + * format), writing to the given BinaryWriter. + * @param {!proto.rivet.pegboard.kv.Entry} message + * @param {!jspb.BinaryWriter} writer + * @suppress {unusedLocalVariables} f is only used for nested messages + */ +proto.rivet.pegboard.kv.Entry.serializeBinaryToWriter = function(message, writer) { + var f = undefined; + f = message.getValue_asU8(); + if (f.length > 0) { + writer.writeBytes( + 1, + f + ); + } + f = message.getMetadata(); + if (f != null) { + writer.writeMessage( + 2, + f, + proto.rivet.pegboard.kv.Metadata.serializeBinaryToWriter + ); + } +}; + + +/** + * optional bytes value = 1; + * @return {string} + */ +proto.rivet.pegboard.kv.Entry.prototype.getValue = function() { + return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, "")); +}; + + +/** + * optional bytes value = 1; + * This is a type-conversion wrapper around `getValue()` + * @return {string} + */ +proto.rivet.pegboard.kv.Entry.prototype.getValue_asB64 = function() { + return /** @type {string} */ (jspb.Message.bytesAsB64( + this.getValue())); +}; + + +/** + * optional bytes value = 1; + * Note that Uint8Array is not supported on all browsers. + * @see http://caniuse.com/Uint8Array + * This is a type-conversion wrapper around `getValue()` + * @return {!Uint8Array} + */ +proto.rivet.pegboard.kv.Entry.prototype.getValue_asU8 = function() { + return /** @type {!Uint8Array} */ (jspb.Message.bytesAsU8( + this.getValue())); +}; + + +/** + * @param {!(string|Uint8Array)} value + * @return {!proto.rivet.pegboard.kv.Entry} returns this + */ +proto.rivet.pegboard.kv.Entry.prototype.setValue = function(value) { + return jspb.Message.setProto3BytesField(this, 1, value); +}; + + +/** + * optional Metadata metadata = 2; + * @return {?proto.rivet.pegboard.kv.Metadata} + */ +proto.rivet.pegboard.kv.Entry.prototype.getMetadata = function() { + return /** @type{?proto.rivet.pegboard.kv.Metadata} */ ( + jspb.Message.getWrapperField(this, proto.rivet.pegboard.kv.Metadata, 2)); +}; + + +/** + * @param {?proto.rivet.pegboard.kv.Metadata|undefined} value + * @return {!proto.rivet.pegboard.kv.Entry} returns this +*/ +proto.rivet.pegboard.kv.Entry.prototype.setMetadata = function(value) { + return jspb.Message.setWrapperField(this, 2, value); +}; + + +/** + * Clears the message field making it undefined. + * @return {!proto.rivet.pegboard.kv.Entry} returns this + */ +proto.rivet.pegboard.kv.Entry.prototype.clearMetadata = function() { + return this.setMetadata(undefined); +}; + + +/** + * Returns whether this field is set. + * @return {boolean} + */ +proto.rivet.pegboard.kv.Entry.prototype.hasMetadata = function() { + return jspb.Message.getField(this, 2) != null; +}; + + + + + +if (jspb.Message.GENERATE_TO_OBJECT) { +/** + * Creates an object representation of this proto. + * Field names that are reserved in JavaScript and will be renamed to pb_name. + * Optional fields that are not set will be set to undefined. + * To access a reserved field use, foo.pb_, eg, foo.pb_default. + * For the list of reserved names please see: + * net/proto2/compiler/js/internal/generator.cc#kKeyword. + * @param {boolean=} opt_includeInstance Deprecated. whether to include the + * JSPB instance for transitional soy proto support: + * http://goto/soy-param-migration + * @return {!Object} + */ +proto.rivet.pegboard.kv.Metadata.prototype.toObject = function(opt_includeInstance) { + return proto.rivet.pegboard.kv.Metadata.toObject(opt_includeInstance, this); +}; + + +/** + * Static version of the {@see toObject} method. + * @param {boolean|undefined} includeInstance Deprecated. Whether to include + * the JSPB instance for transitional soy proto support: + * http://goto/soy-param-migration + * @param {!proto.rivet.pegboard.kv.Metadata} msg The msg instance to transform. + * @return {!Object} + * @suppress {unusedLocalVariables} f is only used for nested messages + */ +proto.rivet.pegboard.kv.Metadata.toObject = function(includeInstance, msg) { + var f, obj = { +version: msg.getVersion_asB64(), +createTs: jspb.Message.getFieldWithDefault(msg, 2, 0) + }; + + if (includeInstance) { + obj.$jspbMessageInstance = msg; + } + return obj; +}; +} + + +/** + * Deserializes binary data (in protobuf wire format). + * @param {jspb.ByteSource} bytes The bytes to deserialize. + * @return {!proto.rivet.pegboard.kv.Metadata} + */ +proto.rivet.pegboard.kv.Metadata.deserializeBinary = function(bytes) { + var reader = new jspb.BinaryReader(bytes); + var msg = new proto.rivet.pegboard.kv.Metadata; + return proto.rivet.pegboard.kv.Metadata.deserializeBinaryFromReader(msg, reader); +}; + + +/** + * Deserializes binary data (in protobuf wire format) from the + * given reader into the given message object. + * @param {!proto.rivet.pegboard.kv.Metadata} msg The message object to deserialize into. + * @param {!jspb.BinaryReader} reader The BinaryReader to use. + * @return {!proto.rivet.pegboard.kv.Metadata} + */ +proto.rivet.pegboard.kv.Metadata.deserializeBinaryFromReader = function(msg, reader) { + while (reader.nextField()) { + if (reader.isEndGroup()) { + break; + } + var field = reader.getFieldNumber(); + switch (field) { + case 1: + var value = /** @type {!Uint8Array} */ (reader.readBytes()); + msg.setVersion(value); + break; + case 2: + var value = /** @type {number} */ (reader.readInt64()); + msg.setCreateTs(value); + break; + default: + reader.skipField(); + break; + } + } + return msg; +}; + + +/** + * Serializes the message to binary data (in protobuf wire format). + * @return {!Uint8Array} + */ +proto.rivet.pegboard.kv.Metadata.prototype.serializeBinary = function() { + var writer = new jspb.BinaryWriter(); + proto.rivet.pegboard.kv.Metadata.serializeBinaryToWriter(this, writer); + return writer.getResultBuffer(); +}; + + +/** + * Serializes the given message to binary data (in protobuf wire + * format), writing to the given BinaryWriter. + * @param {!proto.rivet.pegboard.kv.Metadata} message + * @param {!jspb.BinaryWriter} writer + * @suppress {unusedLocalVariables} f is only used for nested messages + */ +proto.rivet.pegboard.kv.Metadata.serializeBinaryToWriter = function(message, writer) { + var f = undefined; + f = message.getVersion_asU8(); + if (f.length > 0) { + writer.writeBytes( + 1, + f + ); + } + f = message.getCreateTs(); + if (f !== 0) { + writer.writeInt64( + 2, + f + ); + } +}; + + +/** + * optional bytes _version = 1; + * @return {string} + */ +proto.rivet.pegboard.kv.Metadata.prototype.getVersion = function() { + return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, "")); +}; + + +/** + * optional bytes _version = 1; + * This is a type-conversion wrapper around `getVersion()` + * @return {string} + */ +proto.rivet.pegboard.kv.Metadata.prototype.getVersion_asB64 = function() { + return /** @type {string} */ (jspb.Message.bytesAsB64( + this.getVersion())); +}; + + +/** + * optional bytes _version = 1; + * Note that Uint8Array is not supported on all browsers. + * @see http://caniuse.com/Uint8Array + * This is a type-conversion wrapper around `getVersion()` + * @return {!Uint8Array} + */ +proto.rivet.pegboard.kv.Metadata.prototype.getVersion_asU8 = function() { + return /** @type {!Uint8Array} */ (jspb.Message.bytesAsU8( + this.getVersion())); +}; + + +/** + * @param {!(string|Uint8Array)} value + * @return {!proto.rivet.pegboard.kv.Metadata} returns this + */ +proto.rivet.pegboard.kv.Metadata.prototype.setVersion = function(value) { + return jspb.Message.setProto3BytesField(this, 1, value); +}; + + +/** + * optional int64 create_ts = 2; + * @return {number} + */ +proto.rivet.pegboard.kv.Metadata.prototype.getCreateTs = function() { + return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 2, 0)); +}; + + +/** + * @param {number} value + * @return {!proto.rivet.pegboard.kv.Metadata} returns this + */ +proto.rivet.pegboard.kv.Metadata.prototype.setCreateTs = function(value) { + return jspb.Message.setProto3IntField(this, 2, value); +}; + + + +/** + * Oneof group definitions for this message. Each group defines the field + * numbers belonging to that group. When of these fields' value is set, all + * other fields in the group are cleared. During deserialization, if multiple + * fields are encountered for a group, only the last value seen will be kept. + * @private {!Array>} + * @const + */ +proto.rivet.pegboard.kv.ListQuery.oneofGroups_ = [[1,2,3]]; + +/** + * @enum {number} + */ +proto.rivet.pegboard.kv.ListQuery.KindCase = { + KIND_NOT_SET: 0, + ALL: 1, + RANGE: 2, + PREFIX: 3 +}; + +/** + * @return {proto.rivet.pegboard.kv.ListQuery.KindCase} + */ +proto.rivet.pegboard.kv.ListQuery.prototype.getKindCase = function() { + return /** @type {proto.rivet.pegboard.kv.ListQuery.KindCase} */(jspb.Message.computeOneofCase(this, proto.rivet.pegboard.kv.ListQuery.oneofGroups_[0])); +}; + + + +if (jspb.Message.GENERATE_TO_OBJECT) { +/** + * Creates an object representation of this proto. + * Field names that are reserved in JavaScript and will be renamed to pb_name. + * Optional fields that are not set will be set to undefined. + * To access a reserved field use, foo.pb_, eg, foo.pb_default. + * For the list of reserved names please see: + * net/proto2/compiler/js/internal/generator.cc#kKeyword. + * @param {boolean=} opt_includeInstance Deprecated. whether to include the + * JSPB instance for transitional soy proto support: + * http://goto/soy-param-migration + * @return {!Object} + */ +proto.rivet.pegboard.kv.ListQuery.prototype.toObject = function(opt_includeInstance) { + return proto.rivet.pegboard.kv.ListQuery.toObject(opt_includeInstance, this); +}; + + +/** + * Static version of the {@see toObject} method. + * @param {boolean|undefined} includeInstance Deprecated. Whether to include + * the JSPB instance for transitional soy proto support: + * http://goto/soy-param-migration + * @param {!proto.rivet.pegboard.kv.ListQuery} msg The msg instance to transform. + * @return {!Object} + * @suppress {unusedLocalVariables} f is only used for nested messages + */ +proto.rivet.pegboard.kv.ListQuery.toObject = function(includeInstance, msg) { + var f, obj = { +all: (f = msg.getAll()) && proto.rivet.pegboard.kv.ListQuery.All.toObject(includeInstance, f), +range: (f = msg.getRange()) && proto.rivet.pegboard.kv.ListQuery.Range.toObject(includeInstance, f), +prefix: (f = msg.getPrefix()) && proto.rivet.pegboard.kv.ListQuery.Prefix.toObject(includeInstance, f) + }; + + if (includeInstance) { + obj.$jspbMessageInstance = msg; + } + return obj; +}; +} + + +/** + * Deserializes binary data (in protobuf wire format). + * @param {jspb.ByteSource} bytes The bytes to deserialize. + * @return {!proto.rivet.pegboard.kv.ListQuery} + */ +proto.rivet.pegboard.kv.ListQuery.deserializeBinary = function(bytes) { + var reader = new jspb.BinaryReader(bytes); + var msg = new proto.rivet.pegboard.kv.ListQuery; + return proto.rivet.pegboard.kv.ListQuery.deserializeBinaryFromReader(msg, reader); +}; + + +/** + * Deserializes binary data (in protobuf wire format) from the + * given reader into the given message object. + * @param {!proto.rivet.pegboard.kv.ListQuery} msg The message object to deserialize into. + * @param {!jspb.BinaryReader} reader The BinaryReader to use. + * @return {!proto.rivet.pegboard.kv.ListQuery} + */ +proto.rivet.pegboard.kv.ListQuery.deserializeBinaryFromReader = function(msg, reader) { + while (reader.nextField()) { + if (reader.isEndGroup()) { + break; + } + var field = reader.getFieldNumber(); + switch (field) { + case 1: + var value = new proto.rivet.pegboard.kv.ListQuery.All; + reader.readMessage(value,proto.rivet.pegboard.kv.ListQuery.All.deserializeBinaryFromReader); + msg.setAll(value); + break; + case 2: + var value = new proto.rivet.pegboard.kv.ListQuery.Range; + reader.readMessage(value,proto.rivet.pegboard.kv.ListQuery.Range.deserializeBinaryFromReader); + msg.setRange(value); + break; + case 3: + var value = new proto.rivet.pegboard.kv.ListQuery.Prefix; + reader.readMessage(value,proto.rivet.pegboard.kv.ListQuery.Prefix.deserializeBinaryFromReader); + msg.setPrefix(value); + break; + default: + reader.skipField(); + break; + } + } + return msg; +}; + + +/** + * Serializes the message to binary data (in protobuf wire format). + * @return {!Uint8Array} + */ +proto.rivet.pegboard.kv.ListQuery.prototype.serializeBinary = function() { + var writer = new jspb.BinaryWriter(); + proto.rivet.pegboard.kv.ListQuery.serializeBinaryToWriter(this, writer); + return writer.getResultBuffer(); +}; + + +/** + * Serializes the given message to binary data (in protobuf wire + * format), writing to the given BinaryWriter. + * @param {!proto.rivet.pegboard.kv.ListQuery} message + * @param {!jspb.BinaryWriter} writer + * @suppress {unusedLocalVariables} f is only used for nested messages + */ +proto.rivet.pegboard.kv.ListQuery.serializeBinaryToWriter = function(message, writer) { + var f = undefined; + f = message.getAll(); + if (f != null) { + writer.writeMessage( + 1, + f, + proto.rivet.pegboard.kv.ListQuery.All.serializeBinaryToWriter + ); + } + f = message.getRange(); + if (f != null) { + writer.writeMessage( + 2, + f, + proto.rivet.pegboard.kv.ListQuery.Range.serializeBinaryToWriter + ); + } + f = message.getPrefix(); + if (f != null) { + writer.writeMessage( + 3, + f, + proto.rivet.pegboard.kv.ListQuery.Prefix.serializeBinaryToWriter + ); + } +}; + + + + + +if (jspb.Message.GENERATE_TO_OBJECT) { +/** + * Creates an object representation of this proto. + * Field names that are reserved in JavaScript and will be renamed to pb_name. + * Optional fields that are not set will be set to undefined. + * To access a reserved field use, foo.pb_, eg, foo.pb_default. + * For the list of reserved names please see: + * net/proto2/compiler/js/internal/generator.cc#kKeyword. + * @param {boolean=} opt_includeInstance Deprecated. whether to include the + * JSPB instance for transitional soy proto support: + * http://goto/soy-param-migration + * @return {!Object} + */ +proto.rivet.pegboard.kv.ListQuery.All.prototype.toObject = function(opt_includeInstance) { + return proto.rivet.pegboard.kv.ListQuery.All.toObject(opt_includeInstance, this); +}; + + +/** + * Static version of the {@see toObject} method. + * @param {boolean|undefined} includeInstance Deprecated. Whether to include + * the JSPB instance for transitional soy proto support: + * http://goto/soy-param-migration + * @param {!proto.rivet.pegboard.kv.ListQuery.All} msg The msg instance to transform. + * @return {!Object} + * @suppress {unusedLocalVariables} f is only used for nested messages + */ +proto.rivet.pegboard.kv.ListQuery.All.toObject = function(includeInstance, msg) { + var f, obj = { + + }; + + if (includeInstance) { + obj.$jspbMessageInstance = msg; + } + return obj; +}; +} + + +/** + * Deserializes binary data (in protobuf wire format). + * @param {jspb.ByteSource} bytes The bytes to deserialize. + * @return {!proto.rivet.pegboard.kv.ListQuery.All} + */ +proto.rivet.pegboard.kv.ListQuery.All.deserializeBinary = function(bytes) { + var reader = new jspb.BinaryReader(bytes); + var msg = new proto.rivet.pegboard.kv.ListQuery.All; + return proto.rivet.pegboard.kv.ListQuery.All.deserializeBinaryFromReader(msg, reader); +}; + + +/** + * Deserializes binary data (in protobuf wire format) from the + * given reader into the given message object. + * @param {!proto.rivet.pegboard.kv.ListQuery.All} msg The message object to deserialize into. + * @param {!jspb.BinaryReader} reader The BinaryReader to use. + * @return {!proto.rivet.pegboard.kv.ListQuery.All} + */ +proto.rivet.pegboard.kv.ListQuery.All.deserializeBinaryFromReader = function(msg, reader) { + while (reader.nextField()) { + if (reader.isEndGroup()) { + break; + } + var field = reader.getFieldNumber(); + switch (field) { + default: + reader.skipField(); + break; + } + } + return msg; +}; + + +/** + * Serializes the message to binary data (in protobuf wire format). + * @return {!Uint8Array} + */ +proto.rivet.pegboard.kv.ListQuery.All.prototype.serializeBinary = function() { + var writer = new jspb.BinaryWriter(); + proto.rivet.pegboard.kv.ListQuery.All.serializeBinaryToWriter(this, writer); + return writer.getResultBuffer(); +}; + + +/** + * Serializes the given message to binary data (in protobuf wire + * format), writing to the given BinaryWriter. + * @param {!proto.rivet.pegboard.kv.ListQuery.All} message + * @param {!jspb.BinaryWriter} writer + * @suppress {unusedLocalVariables} f is only used for nested messages + */ +proto.rivet.pegboard.kv.ListQuery.All.serializeBinaryToWriter = function(message, writer) { + var f = undefined; +}; + + + + + +if (jspb.Message.GENERATE_TO_OBJECT) { +/** + * Creates an object representation of this proto. + * Field names that are reserved in JavaScript and will be renamed to pb_name. + * Optional fields that are not set will be set to undefined. + * To access a reserved field use, foo.pb_, eg, foo.pb_default. + * For the list of reserved names please see: + * net/proto2/compiler/js/internal/generator.cc#kKeyword. + * @param {boolean=} opt_includeInstance Deprecated. whether to include the + * JSPB instance for transitional soy proto support: + * http://goto/soy-param-migration + * @return {!Object} + */ +proto.rivet.pegboard.kv.ListQuery.Range.prototype.toObject = function(opt_includeInstance) { + return proto.rivet.pegboard.kv.ListQuery.Range.toObject(opt_includeInstance, this); +}; + + +/** + * Static version of the {@see toObject} method. + * @param {boolean|undefined} includeInstance Deprecated. Whether to include + * the JSPB instance for transitional soy proto support: + * http://goto/soy-param-migration + * @param {!proto.rivet.pegboard.kv.ListQuery.Range} msg The msg instance to transform. + * @return {!Object} + * @suppress {unusedLocalVariables} f is only used for nested messages + */ +proto.rivet.pegboard.kv.ListQuery.Range.toObject = function(includeInstance, msg) { + var f, obj = { +start: (f = msg.getStart()) && proto.rivet.pegboard.kv.Key.toObject(includeInstance, f), +end: (f = msg.getEnd()) && proto.rivet.pegboard.kv.Key.toObject(includeInstance, f), +exclusive: jspb.Message.getBooleanFieldWithDefault(msg, 3, false) + }; + + if (includeInstance) { + obj.$jspbMessageInstance = msg; + } + return obj; +}; +} + + +/** + * Deserializes binary data (in protobuf wire format). + * @param {jspb.ByteSource} bytes The bytes to deserialize. + * @return {!proto.rivet.pegboard.kv.ListQuery.Range} + */ +proto.rivet.pegboard.kv.ListQuery.Range.deserializeBinary = function(bytes) { + var reader = new jspb.BinaryReader(bytes); + var msg = new proto.rivet.pegboard.kv.ListQuery.Range; + return proto.rivet.pegboard.kv.ListQuery.Range.deserializeBinaryFromReader(msg, reader); +}; + + +/** + * Deserializes binary data (in protobuf wire format) from the + * given reader into the given message object. + * @param {!proto.rivet.pegboard.kv.ListQuery.Range} msg The message object to deserialize into. + * @param {!jspb.BinaryReader} reader The BinaryReader to use. + * @return {!proto.rivet.pegboard.kv.ListQuery.Range} + */ +proto.rivet.pegboard.kv.ListQuery.Range.deserializeBinaryFromReader = function(msg, reader) { + while (reader.nextField()) { + if (reader.isEndGroup()) { + break; + } + var field = reader.getFieldNumber(); + switch (field) { + case 1: + var value = new proto.rivet.pegboard.kv.Key; + reader.readMessage(value,proto.rivet.pegboard.kv.Key.deserializeBinaryFromReader); + msg.setStart(value); + break; + case 2: + var value = new proto.rivet.pegboard.kv.Key; + reader.readMessage(value,proto.rivet.pegboard.kv.Key.deserializeBinaryFromReader); + msg.setEnd(value); + break; + case 3: + var value = /** @type {boolean} */ (reader.readBool()); + msg.setExclusive(value); + break; + default: + reader.skipField(); + break; + } + } + return msg; +}; + + +/** + * Serializes the message to binary data (in protobuf wire format). + * @return {!Uint8Array} + */ +proto.rivet.pegboard.kv.ListQuery.Range.prototype.serializeBinary = function() { + var writer = new jspb.BinaryWriter(); + proto.rivet.pegboard.kv.ListQuery.Range.serializeBinaryToWriter(this, writer); + return writer.getResultBuffer(); +}; + + +/** + * Serializes the given message to binary data (in protobuf wire + * format), writing to the given BinaryWriter. + * @param {!proto.rivet.pegboard.kv.ListQuery.Range} message + * @param {!jspb.BinaryWriter} writer + * @suppress {unusedLocalVariables} f is only used for nested messages + */ +proto.rivet.pegboard.kv.ListQuery.Range.serializeBinaryToWriter = function(message, writer) { + var f = undefined; + f = message.getStart(); + if (f != null) { + writer.writeMessage( + 1, + f, + proto.rivet.pegboard.kv.Key.serializeBinaryToWriter + ); + } + f = message.getEnd(); + if (f != null) { + writer.writeMessage( + 2, + f, + proto.rivet.pegboard.kv.Key.serializeBinaryToWriter + ); + } + f = message.getExclusive(); + if (f) { + writer.writeBool( + 3, + f + ); + } +}; + + +/** + * optional Key start = 1; + * @return {?proto.rivet.pegboard.kv.Key} + */ +proto.rivet.pegboard.kv.ListQuery.Range.prototype.getStart = function() { + return /** @type{?proto.rivet.pegboard.kv.Key} */ ( + jspb.Message.getWrapperField(this, proto.rivet.pegboard.kv.Key, 1)); +}; + + +/** + * @param {?proto.rivet.pegboard.kv.Key|undefined} value + * @return {!proto.rivet.pegboard.kv.ListQuery.Range} returns this +*/ +proto.rivet.pegboard.kv.ListQuery.Range.prototype.setStart = function(value) { + return jspb.Message.setWrapperField(this, 1, value); +}; + + +/** + * Clears the message field making it undefined. + * @return {!proto.rivet.pegboard.kv.ListQuery.Range} returns this + */ +proto.rivet.pegboard.kv.ListQuery.Range.prototype.clearStart = function() { + return this.setStart(undefined); +}; + + +/** + * Returns whether this field is set. + * @return {boolean} + */ +proto.rivet.pegboard.kv.ListQuery.Range.prototype.hasStart = function() { + return jspb.Message.getField(this, 1) != null; +}; + + +/** + * optional Key end = 2; + * @return {?proto.rivet.pegboard.kv.Key} + */ +proto.rivet.pegboard.kv.ListQuery.Range.prototype.getEnd = function() { + return /** @type{?proto.rivet.pegboard.kv.Key} */ ( + jspb.Message.getWrapperField(this, proto.rivet.pegboard.kv.Key, 2)); +}; + + +/** + * @param {?proto.rivet.pegboard.kv.Key|undefined} value + * @return {!proto.rivet.pegboard.kv.ListQuery.Range} returns this +*/ +proto.rivet.pegboard.kv.ListQuery.Range.prototype.setEnd = function(value) { + return jspb.Message.setWrapperField(this, 2, value); +}; + + +/** + * Clears the message field making it undefined. + * @return {!proto.rivet.pegboard.kv.ListQuery.Range} returns this + */ +proto.rivet.pegboard.kv.ListQuery.Range.prototype.clearEnd = function() { + return this.setEnd(undefined); +}; + + +/** + * Returns whether this field is set. + * @return {boolean} + */ +proto.rivet.pegboard.kv.ListQuery.Range.prototype.hasEnd = function() { + return jspb.Message.getField(this, 2) != null; +}; + + +/** + * optional bool exclusive = 3; + * @return {boolean} + */ +proto.rivet.pegboard.kv.ListQuery.Range.prototype.getExclusive = function() { + return /** @type {boolean} */ (jspb.Message.getBooleanFieldWithDefault(this, 3, false)); +}; + + +/** + * @param {boolean} value + * @return {!proto.rivet.pegboard.kv.ListQuery.Range} returns this + */ +proto.rivet.pegboard.kv.ListQuery.Range.prototype.setExclusive = function(value) { + return jspb.Message.setProto3BooleanField(this, 3, value); +}; + + + + + +if (jspb.Message.GENERATE_TO_OBJECT) { +/** + * Creates an object representation of this proto. + * Field names that are reserved in JavaScript and will be renamed to pb_name. + * Optional fields that are not set will be set to undefined. + * To access a reserved field use, foo.pb_, eg, foo.pb_default. + * For the list of reserved names please see: + * net/proto2/compiler/js/internal/generator.cc#kKeyword. + * @param {boolean=} opt_includeInstance Deprecated. whether to include the + * JSPB instance for transitional soy proto support: + * http://goto/soy-param-migration + * @return {!Object} + */ +proto.rivet.pegboard.kv.ListQuery.Prefix.prototype.toObject = function(opt_includeInstance) { + return proto.rivet.pegboard.kv.ListQuery.Prefix.toObject(opt_includeInstance, this); +}; + + +/** + * Static version of the {@see toObject} method. + * @param {boolean|undefined} includeInstance Deprecated. Whether to include + * the JSPB instance for transitional soy proto support: + * http://goto/soy-param-migration + * @param {!proto.rivet.pegboard.kv.ListQuery.Prefix} msg The msg instance to transform. + * @return {!Object} + * @suppress {unusedLocalVariables} f is only used for nested messages + */ +proto.rivet.pegboard.kv.ListQuery.Prefix.toObject = function(includeInstance, msg) { + var f, obj = { +key: (f = msg.getKey()) && proto.rivet.pegboard.kv.Key.toObject(includeInstance, f) + }; + + if (includeInstance) { + obj.$jspbMessageInstance = msg; + } + return obj; +}; +} + + +/** + * Deserializes binary data (in protobuf wire format). + * @param {jspb.ByteSource} bytes The bytes to deserialize. + * @return {!proto.rivet.pegboard.kv.ListQuery.Prefix} + */ +proto.rivet.pegboard.kv.ListQuery.Prefix.deserializeBinary = function(bytes) { + var reader = new jspb.BinaryReader(bytes); + var msg = new proto.rivet.pegboard.kv.ListQuery.Prefix; + return proto.rivet.pegboard.kv.ListQuery.Prefix.deserializeBinaryFromReader(msg, reader); +}; + + +/** + * Deserializes binary data (in protobuf wire format) from the + * given reader into the given message object. + * @param {!proto.rivet.pegboard.kv.ListQuery.Prefix} msg The message object to deserialize into. + * @param {!jspb.BinaryReader} reader The BinaryReader to use. + * @return {!proto.rivet.pegboard.kv.ListQuery.Prefix} + */ +proto.rivet.pegboard.kv.ListQuery.Prefix.deserializeBinaryFromReader = function(msg, reader) { + while (reader.nextField()) { + if (reader.isEndGroup()) { + break; + } + var field = reader.getFieldNumber(); + switch (field) { + case 1: + var value = new proto.rivet.pegboard.kv.Key; + reader.readMessage(value,proto.rivet.pegboard.kv.Key.deserializeBinaryFromReader); + msg.setKey(value); + break; + default: + reader.skipField(); + break; + } + } + return msg; +}; + + +/** + * Serializes the message to binary data (in protobuf wire format). + * @return {!Uint8Array} + */ +proto.rivet.pegboard.kv.ListQuery.Prefix.prototype.serializeBinary = function() { + var writer = new jspb.BinaryWriter(); + proto.rivet.pegboard.kv.ListQuery.Prefix.serializeBinaryToWriter(this, writer); + return writer.getResultBuffer(); +}; + + +/** + * Serializes the given message to binary data (in protobuf wire + * format), writing to the given BinaryWriter. + * @param {!proto.rivet.pegboard.kv.ListQuery.Prefix} message + * @param {!jspb.BinaryWriter} writer + * @suppress {unusedLocalVariables} f is only used for nested messages + */ +proto.rivet.pegboard.kv.ListQuery.Prefix.serializeBinaryToWriter = function(message, writer) { + var f = undefined; + f = message.getKey(); + if (f != null) { + writer.writeMessage( + 1, + f, + proto.rivet.pegboard.kv.Key.serializeBinaryToWriter + ); + } +}; + + +/** + * optional Key key = 1; + * @return {?proto.rivet.pegboard.kv.Key} + */ +proto.rivet.pegboard.kv.ListQuery.Prefix.prototype.getKey = function() { + return /** @type{?proto.rivet.pegboard.kv.Key} */ ( + jspb.Message.getWrapperField(this, proto.rivet.pegboard.kv.Key, 1)); +}; + + +/** + * @param {?proto.rivet.pegboard.kv.Key|undefined} value + * @return {!proto.rivet.pegboard.kv.ListQuery.Prefix} returns this +*/ +proto.rivet.pegboard.kv.ListQuery.Prefix.prototype.setKey = function(value) { + return jspb.Message.setWrapperField(this, 1, value); +}; + + +/** + * Clears the message field making it undefined. + * @return {!proto.rivet.pegboard.kv.ListQuery.Prefix} returns this + */ +proto.rivet.pegboard.kv.ListQuery.Prefix.prototype.clearKey = function() { + return this.setKey(undefined); +}; + + +/** + * Returns whether this field is set. + * @return {boolean} + */ +proto.rivet.pegboard.kv.ListQuery.Prefix.prototype.hasKey = function() { + return jspb.Message.getField(this, 1) != null; +}; + + +/** + * optional All all = 1; + * @return {?proto.rivet.pegboard.kv.ListQuery.All} + */ +proto.rivet.pegboard.kv.ListQuery.prototype.getAll = function() { + return /** @type{?proto.rivet.pegboard.kv.ListQuery.All} */ ( + jspb.Message.getWrapperField(this, proto.rivet.pegboard.kv.ListQuery.All, 1)); +}; + + +/** + * @param {?proto.rivet.pegboard.kv.ListQuery.All|undefined} value + * @return {!proto.rivet.pegboard.kv.ListQuery} returns this +*/ +proto.rivet.pegboard.kv.ListQuery.prototype.setAll = function(value) { + return jspb.Message.setOneofWrapperField(this, 1, proto.rivet.pegboard.kv.ListQuery.oneofGroups_[0], value); +}; + + +/** + * Clears the message field making it undefined. + * @return {!proto.rivet.pegboard.kv.ListQuery} returns this + */ +proto.rivet.pegboard.kv.ListQuery.prototype.clearAll = function() { + return this.setAll(undefined); +}; + + +/** + * Returns whether this field is set. + * @return {boolean} + */ +proto.rivet.pegboard.kv.ListQuery.prototype.hasAll = function() { + return jspb.Message.getField(this, 1) != null; +}; + + +/** + * optional Range range = 2; + * @return {?proto.rivet.pegboard.kv.ListQuery.Range} + */ +proto.rivet.pegboard.kv.ListQuery.prototype.getRange = function() { + return /** @type{?proto.rivet.pegboard.kv.ListQuery.Range} */ ( + jspb.Message.getWrapperField(this, proto.rivet.pegboard.kv.ListQuery.Range, 2)); +}; + + +/** + * @param {?proto.rivet.pegboard.kv.ListQuery.Range|undefined} value + * @return {!proto.rivet.pegboard.kv.ListQuery} returns this +*/ +proto.rivet.pegboard.kv.ListQuery.prototype.setRange = function(value) { + return jspb.Message.setOneofWrapperField(this, 2, proto.rivet.pegboard.kv.ListQuery.oneofGroups_[0], value); +}; + + +/** + * Clears the message field making it undefined. + * @return {!proto.rivet.pegboard.kv.ListQuery} returns this + */ +proto.rivet.pegboard.kv.ListQuery.prototype.clearRange = function() { + return this.setRange(undefined); +}; + + +/** + * Returns whether this field is set. + * @return {boolean} + */ +proto.rivet.pegboard.kv.ListQuery.prototype.hasRange = function() { + return jspb.Message.getField(this, 2) != null; +}; + + +/** + * optional Prefix prefix = 3; + * @return {?proto.rivet.pegboard.kv.ListQuery.Prefix} + */ +proto.rivet.pegboard.kv.ListQuery.prototype.getPrefix = function() { + return /** @type{?proto.rivet.pegboard.kv.ListQuery.Prefix} */ ( + jspb.Message.getWrapperField(this, proto.rivet.pegboard.kv.ListQuery.Prefix, 3)); +}; + + +/** + * @param {?proto.rivet.pegboard.kv.ListQuery.Prefix|undefined} value + * @return {!proto.rivet.pegboard.kv.ListQuery} returns this +*/ +proto.rivet.pegboard.kv.ListQuery.prototype.setPrefix = function(value) { + return jspb.Message.setOneofWrapperField(this, 3, proto.rivet.pegboard.kv.ListQuery.oneofGroups_[0], value); +}; + + +/** + * Clears the message field making it undefined. + * @return {!proto.rivet.pegboard.kv.ListQuery} returns this + */ +proto.rivet.pegboard.kv.ListQuery.prototype.clearPrefix = function() { + return this.setPrefix(undefined); +}; + + +/** + * Returns whether this field is set. + * @return {boolean} + */ +proto.rivet.pegboard.kv.ListQuery.prototype.hasPrefix = function() { + return jspb.Message.getField(this, 3) != null; +}; + + +goog.object.extend(exports, proto.rivet.pegboard.kv); diff --git a/sdks/runner-protocol/package.json b/sdks/runner-protocol/package.json new file mode 100644 index 0000000000..c809001b66 --- /dev/null +++ b/sdks/runner-protocol/package.json @@ -0,0 +1,25 @@ +{ + "name": "@rivet-gg/runner-protocol", + "version": "1.0.0", + "description": "JavaScript SDK for Rivet Runner Protocol", + "type": "module", + "main": "index.js", + "types": "index.d.ts", + "scripts": { + "build": "tsc", + "prepublishOnly": "npm run build" + }, + "dependencies": { + "google-protobuf": "^3.21.0" + }, + "devDependencies": { + "@types/google-protobuf": "^3.15.0", + "typescript": "^5.0.0" + }, + "files": [ + "*.js", + "*.d.ts", + "*.ts", + "!*.test.*" + ] +} \ No newline at end of file diff --git a/sdks/runner-protocol/runner_protocol.ts b/sdks/runner-protocol/runner_protocol.ts new file mode 100644 index 0000000000..bed00470cf --- /dev/null +++ b/sdks/runner-protocol/runner_protocol.ts @@ -0,0 +1,2566 @@ +/** + * Generated by the protoc-gen-ts. DO NOT EDIT! + * compiler version: 3.21.12 + * source: runner_protocol.proto + * git: https://github.com/thesayyn/protoc-gen-ts */ +import * as dependency_1 from "./kv"; +import * as pb_1 from "google-protobuf"; +export namespace rivet.pegboard.runner_protocol { + export enum GameGuardProtocol { + GG_HTTP = 0, + GG_HTTPS = 1, + GG_TCP = 2, + GG_TCP_TLS = 3, + GG_UDP = 4 + } + export enum HostProtocol { + HOST_TCP = 0, + HOST_UDP = 1 + } + export class ToManager extends pb_1.Message { + #one_of_decls: number[][] = [[1, 2, 3]]; + constructor(data?: any[] | ({} & (({ + actor_state_update?: ToManager.ActorStateUpdate; + ping?: never; + kv?: never; + } | { + actor_state_update?: never; + ping?: ToManager.Ping; + kv?: never; + } | { + actor_state_update?: never; + ping?: never; + kv?: dependency_1.rivet.pegboard.kv.Request; + })))) { + super(); + pb_1.Message.initialize(this, Array.isArray(data) ? data : [], 0, -1, [], this.#one_of_decls); + if (!Array.isArray(data) && typeof data == "object") { + if ("actor_state_update" in data && data.actor_state_update != undefined) { + this.actor_state_update = data.actor_state_update; + } + if ("ping" in data && data.ping != undefined) { + this.ping = data.ping; + } + if ("kv" in data && data.kv != undefined) { + this.kv = data.kv; + } + } + } + get actor_state_update() { + return pb_1.Message.getWrapperField(this, ToManager.ActorStateUpdate, 1) as ToManager.ActorStateUpdate; + } + set actor_state_update(value: ToManager.ActorStateUpdate) { + pb_1.Message.setOneofWrapperField(this, 1, this.#one_of_decls[0], value); + } + get has_actor_state_update() { + return pb_1.Message.getField(this, 1) != null; + } + get ping() { + return pb_1.Message.getWrapperField(this, ToManager.Ping, 2) as ToManager.Ping; + } + set ping(value: ToManager.Ping) { + pb_1.Message.setOneofWrapperField(this, 2, this.#one_of_decls[0], value); + } + get has_ping() { + return pb_1.Message.getField(this, 2) != null; + } + get kv() { + return pb_1.Message.getWrapperField(this, dependency_1.rivet.pegboard.kv.Request, 3) as dependency_1.rivet.pegboard.kv.Request; + } + set kv(value: dependency_1.rivet.pegboard.kv.Request) { + pb_1.Message.setOneofWrapperField(this, 3, this.#one_of_decls[0], value); + } + get has_kv() { + return pb_1.Message.getField(this, 3) != null; + } + get message() { + const cases: { + [index: number]: "none" | "actor_state_update" | "ping" | "kv"; + } = { + 0: "none", + 1: "actor_state_update", + 2: "ping", + 3: "kv" + }; + return cases[pb_1.Message.computeOneofCase(this, [1, 2, 3])]; + } + static fromObject(data: { + actor_state_update?: ReturnType; + ping?: ReturnType; + kv?: ReturnType; + }): ToManager { + const message = new ToManager({}); + if (data.actor_state_update != null) { + message.actor_state_update = ToManager.ActorStateUpdate.fromObject(data.actor_state_update); + } + if (data.ping != null) { + message.ping = ToManager.Ping.fromObject(data.ping); + } + if (data.kv != null) { + message.kv = dependency_1.rivet.pegboard.kv.Request.fromObject(data.kv); + } + return message; + } + toObject() { + const data: { + actor_state_update?: ReturnType; + ping?: ReturnType; + kv?: ReturnType; + } = {}; + if (this.actor_state_update != null) { + data.actor_state_update = this.actor_state_update.toObject(); + } + if (this.ping != null) { + data.ping = this.ping.toObject(); + } + if (this.kv != null) { + data.kv = this.kv.toObject(); + } + return data; + } + serialize(): Uint8Array; + serialize(w: pb_1.BinaryWriter): void; + serialize(w?: pb_1.BinaryWriter): Uint8Array | void { + const writer = w || new pb_1.BinaryWriter(); + if (this.has_actor_state_update) + writer.writeMessage(1, this.actor_state_update, () => this.actor_state_update.serialize(writer)); + if (this.has_ping) + writer.writeMessage(2, this.ping, () => this.ping.serialize(writer)); + if (this.has_kv) + writer.writeMessage(3, this.kv, () => this.kv.serialize(writer)); + if (!w) + return writer.getResultBuffer(); + } + static deserialize(bytes: Uint8Array | pb_1.BinaryReader): ToManager { + const reader = bytes instanceof pb_1.BinaryReader ? bytes : new pb_1.BinaryReader(bytes), message = new ToManager(); + while (reader.nextField()) { + if (reader.isEndGroup()) + break; + switch (reader.getFieldNumber()) { + case 1: + reader.readMessage(message.actor_state_update, () => message.actor_state_update = ToManager.ActorStateUpdate.deserialize(reader)); + break; + case 2: + reader.readMessage(message.ping, () => message.ping = ToManager.Ping.deserialize(reader)); + break; + case 3: + reader.readMessage(message.kv, () => message.kv = dependency_1.rivet.pegboard.kv.Request.deserialize(reader)); + break; + default: reader.skipField(); + } + } + return message; + } + serializeBinary(): Uint8Array { + return this.serialize(); + } + static deserializeBinary(bytes: Uint8Array): ToManager { + return ToManager.deserialize(bytes); + } + } + export namespace ToManager { + export class ActorStateUpdate extends pb_1.Message { + #one_of_decls: number[][] = []; + constructor(data?: any[] | { + actor_id?: string; + generation?: number; + state?: ActorState; + }) { + super(); + pb_1.Message.initialize(this, Array.isArray(data) ? data : [], 0, -1, [], this.#one_of_decls); + if (!Array.isArray(data) && typeof data == "object") { + if ("actor_id" in data && data.actor_id != undefined) { + this.actor_id = data.actor_id; + } + if ("generation" in data && data.generation != undefined) { + this.generation = data.generation; + } + if ("state" in data && data.state != undefined) { + this.state = data.state; + } + } + } + get actor_id() { + return pb_1.Message.getFieldWithDefault(this, 1, "") as string; + } + set actor_id(value: string) { + pb_1.Message.setField(this, 1, value); + } + get generation() { + return pb_1.Message.getFieldWithDefault(this, 2, 0) as number; + } + set generation(value: number) { + pb_1.Message.setField(this, 2, value); + } + get state() { + return pb_1.Message.getWrapperField(this, ActorState, 3) as ActorState; + } + set state(value: ActorState) { + pb_1.Message.setWrapperField(this, 3, value); + } + get has_state() { + return pb_1.Message.getField(this, 3) != null; + } + static fromObject(data: { + actor_id?: string; + generation?: number; + state?: ReturnType; + }): ActorStateUpdate { + const message = new ActorStateUpdate({}); + if (data.actor_id != null) { + message.actor_id = data.actor_id; + } + if (data.generation != null) { + message.generation = data.generation; + } + if (data.state != null) { + message.state = ActorState.fromObject(data.state); + } + return message; + } + toObject() { + const data: { + actor_id?: string; + generation?: number; + state?: ReturnType; + } = {}; + if (this.actor_id != null) { + data.actor_id = this.actor_id; + } + if (this.generation != null) { + data.generation = this.generation; + } + if (this.state != null) { + data.state = this.state.toObject(); + } + return data; + } + serialize(): Uint8Array; + serialize(w: pb_1.BinaryWriter): void; + serialize(w?: pb_1.BinaryWriter): Uint8Array | void { + const writer = w || new pb_1.BinaryWriter(); + if (this.actor_id.length) + writer.writeString(1, this.actor_id); + if (this.generation != 0) + writer.writeUint32(2, this.generation); + if (this.has_state) + writer.writeMessage(3, this.state, () => this.state.serialize(writer)); + if (!w) + return writer.getResultBuffer(); + } + static deserialize(bytes: Uint8Array | pb_1.BinaryReader): ActorStateUpdate { + const reader = bytes instanceof pb_1.BinaryReader ? bytes : new pb_1.BinaryReader(bytes), message = new ActorStateUpdate(); + while (reader.nextField()) { + if (reader.isEndGroup()) + break; + switch (reader.getFieldNumber()) { + case 1: + message.actor_id = reader.readString(); + break; + case 2: + message.generation = reader.readUint32(); + break; + case 3: + reader.readMessage(message.state, () => message.state = ActorState.deserialize(reader)); + break; + default: reader.skipField(); + } + } + return message; + } + serializeBinary(): Uint8Array { + return this.serialize(); + } + static deserializeBinary(bytes: Uint8Array): ActorStateUpdate { + return ActorStateUpdate.deserialize(bytes); + } + } + export class Ping extends pb_1.Message { + #one_of_decls: number[][] = []; + constructor(data?: any[] | {}) { + super(); + pb_1.Message.initialize(this, Array.isArray(data) ? data : [], 0, -1, [], this.#one_of_decls); + if (!Array.isArray(data) && typeof data == "object") { } + } + static fromObject(data: {}): Ping { + const message = new Ping({}); + return message; + } + toObject() { + const data: {} = {}; + return data; + } + serialize(): Uint8Array; + serialize(w: pb_1.BinaryWriter): void; + serialize(w?: pb_1.BinaryWriter): Uint8Array | void { + const writer = w || new pb_1.BinaryWriter(); + if (!w) + return writer.getResultBuffer(); + } + static deserialize(bytes: Uint8Array | pb_1.BinaryReader): Ping { + const reader = bytes instanceof pb_1.BinaryReader ? bytes : new pb_1.BinaryReader(bytes), message = new Ping(); + while (reader.nextField()) { + if (reader.isEndGroup()) + break; + switch (reader.getFieldNumber()) { + default: reader.skipField(); + } + } + return message; + } + serializeBinary(): Uint8Array { + return this.serialize(); + } + static deserializeBinary(bytes: Uint8Array): Ping { + return Ping.deserialize(bytes); + } + } + } + export class ToRunner extends pb_1.Message { + #one_of_decls: number[][] = [[1, 2, 3, 4, 5, 6]]; + constructor(data?: any[] | ({} & (({ + init?: ToRunner.Init; + pong?: never; + close?: never; + start_actor?: never; + signal_actor?: never; + kv?: never; + } | { + init?: never; + pong?: ToRunner.Pong; + close?: never; + start_actor?: never; + signal_actor?: never; + kv?: never; + } | { + init?: never; + pong?: never; + close?: ToRunner.Close; + start_actor?: never; + signal_actor?: never; + kv?: never; + } | { + init?: never; + pong?: never; + close?: never; + start_actor?: ToRunner.StartActor; + signal_actor?: never; + kv?: never; + } | { + init?: never; + pong?: never; + close?: never; + start_actor?: never; + signal_actor?: ToRunner.SignalActor; + kv?: never; + } | { + init?: never; + pong?: never; + close?: never; + start_actor?: never; + signal_actor?: never; + kv?: dependency_1.rivet.pegboard.kv.Response; + })))) { + super(); + pb_1.Message.initialize(this, Array.isArray(data) ? data : [], 0, -1, [], this.#one_of_decls); + if (!Array.isArray(data) && typeof data == "object") { + if ("init" in data && data.init != undefined) { + this.init = data.init; + } + if ("pong" in data && data.pong != undefined) { + this.pong = data.pong; + } + if ("close" in data && data.close != undefined) { + this.close = data.close; + } + if ("start_actor" in data && data.start_actor != undefined) { + this.start_actor = data.start_actor; + } + if ("signal_actor" in data && data.signal_actor != undefined) { + this.signal_actor = data.signal_actor; + } + if ("kv" in data && data.kv != undefined) { + this.kv = data.kv; + } + } + } + get init() { + return pb_1.Message.getWrapperField(this, ToRunner.Init, 1) as ToRunner.Init; + } + set init(value: ToRunner.Init) { + pb_1.Message.setOneofWrapperField(this, 1, this.#one_of_decls[0], value); + } + get has_init() { + return pb_1.Message.getField(this, 1) != null; + } + get pong() { + return pb_1.Message.getWrapperField(this, ToRunner.Pong, 2) as ToRunner.Pong; + } + set pong(value: ToRunner.Pong) { + pb_1.Message.setOneofWrapperField(this, 2, this.#one_of_decls[0], value); + } + get has_pong() { + return pb_1.Message.getField(this, 2) != null; + } + get close() { + return pb_1.Message.getWrapperField(this, ToRunner.Close, 3) as ToRunner.Close; + } + set close(value: ToRunner.Close) { + pb_1.Message.setOneofWrapperField(this, 3, this.#one_of_decls[0], value); + } + get has_close() { + return pb_1.Message.getField(this, 3) != null; + } + get start_actor() { + return pb_1.Message.getWrapperField(this, ToRunner.StartActor, 4) as ToRunner.StartActor; + } + set start_actor(value: ToRunner.StartActor) { + pb_1.Message.setOneofWrapperField(this, 4, this.#one_of_decls[0], value); + } + get has_start_actor() { + return pb_1.Message.getField(this, 4) != null; + } + get signal_actor() { + return pb_1.Message.getWrapperField(this, ToRunner.SignalActor, 5) as ToRunner.SignalActor; + } + set signal_actor(value: ToRunner.SignalActor) { + pb_1.Message.setOneofWrapperField(this, 5, this.#one_of_decls[0], value); + } + get has_signal_actor() { + return pb_1.Message.getField(this, 5) != null; + } + get kv() { + return pb_1.Message.getWrapperField(this, dependency_1.rivet.pegboard.kv.Response, 6) as dependency_1.rivet.pegboard.kv.Response; + } + set kv(value: dependency_1.rivet.pegboard.kv.Response) { + pb_1.Message.setOneofWrapperField(this, 6, this.#one_of_decls[0], value); + } + get has_kv() { + return pb_1.Message.getField(this, 6) != null; + } + get message() { + const cases: { + [index: number]: "none" | "init" | "pong" | "close" | "start_actor" | "signal_actor" | "kv"; + } = { + 0: "none", + 1: "init", + 2: "pong", + 3: "close", + 4: "start_actor", + 5: "signal_actor", + 6: "kv" + }; + return cases[pb_1.Message.computeOneofCase(this, [1, 2, 3, 4, 5, 6])]; + } + static fromObject(data: { + init?: ReturnType; + pong?: ReturnType; + close?: ReturnType; + start_actor?: ReturnType; + signal_actor?: ReturnType; + kv?: ReturnType; + }): ToRunner { + const message = new ToRunner({}); + if (data.init != null) { + message.init = ToRunner.Init.fromObject(data.init); + } + if (data.pong != null) { + message.pong = ToRunner.Pong.fromObject(data.pong); + } + if (data.close != null) { + message.close = ToRunner.Close.fromObject(data.close); + } + if (data.start_actor != null) { + message.start_actor = ToRunner.StartActor.fromObject(data.start_actor); + } + if (data.signal_actor != null) { + message.signal_actor = ToRunner.SignalActor.fromObject(data.signal_actor); + } + if (data.kv != null) { + message.kv = dependency_1.rivet.pegboard.kv.Response.fromObject(data.kv); + } + return message; + } + toObject() { + const data: { + init?: ReturnType; + pong?: ReturnType; + close?: ReturnType; + start_actor?: ReturnType; + signal_actor?: ReturnType; + kv?: ReturnType; + } = {}; + if (this.init != null) { + data.init = this.init.toObject(); + } + if (this.pong != null) { + data.pong = this.pong.toObject(); + } + if (this.close != null) { + data.close = this.close.toObject(); + } + if (this.start_actor != null) { + data.start_actor = this.start_actor.toObject(); + } + if (this.signal_actor != null) { + data.signal_actor = this.signal_actor.toObject(); + } + if (this.kv != null) { + data.kv = this.kv.toObject(); + } + return data; + } + serialize(): Uint8Array; + serialize(w: pb_1.BinaryWriter): void; + serialize(w?: pb_1.BinaryWriter): Uint8Array | void { + const writer = w || new pb_1.BinaryWriter(); + if (this.has_init) + writer.writeMessage(1, this.init, () => this.init.serialize(writer)); + if (this.has_pong) + writer.writeMessage(2, this.pong, () => this.pong.serialize(writer)); + if (this.has_close) + writer.writeMessage(3, this.close, () => this.close.serialize(writer)); + if (this.has_start_actor) + writer.writeMessage(4, this.start_actor, () => this.start_actor.serialize(writer)); + if (this.has_signal_actor) + writer.writeMessage(5, this.signal_actor, () => this.signal_actor.serialize(writer)); + if (this.has_kv) + writer.writeMessage(6, this.kv, () => this.kv.serialize(writer)); + if (!w) + return writer.getResultBuffer(); + } + static deserialize(bytes: Uint8Array | pb_1.BinaryReader): ToRunner { + const reader = bytes instanceof pb_1.BinaryReader ? bytes : new pb_1.BinaryReader(bytes), message = new ToRunner(); + while (reader.nextField()) { + if (reader.isEndGroup()) + break; + switch (reader.getFieldNumber()) { + case 1: + reader.readMessage(message.init, () => message.init = ToRunner.Init.deserialize(reader)); + break; + case 2: + reader.readMessage(message.pong, () => message.pong = ToRunner.Pong.deserialize(reader)); + break; + case 3: + reader.readMessage(message.close, () => message.close = ToRunner.Close.deserialize(reader)); + break; + case 4: + reader.readMessage(message.start_actor, () => message.start_actor = ToRunner.StartActor.deserialize(reader)); + break; + case 5: + reader.readMessage(message.signal_actor, () => message.signal_actor = ToRunner.SignalActor.deserialize(reader)); + break; + case 6: + reader.readMessage(message.kv, () => message.kv = dependency_1.rivet.pegboard.kv.Response.deserialize(reader)); + break; + default: reader.skipField(); + } + } + return message; + } + serializeBinary(): Uint8Array { + return this.serialize(); + } + static deserializeBinary(bytes: Uint8Array): ToRunner { + return ToRunner.deserialize(bytes); + } + } + export namespace ToRunner { + export class Init extends pb_1.Message { + #one_of_decls: number[][] = []; + constructor(data?: any[] | { + input?: Uint8Array; + }) { + super(); + pb_1.Message.initialize(this, Array.isArray(data) ? data : [], 0, -1, [], this.#one_of_decls); + if (!Array.isArray(data) && typeof data == "object") { + if ("input" in data && data.input != undefined) { + this.input = data.input; + } + } + } + get input() { + return pb_1.Message.getFieldWithDefault(this, 1, new Uint8Array(0)) as Uint8Array; + } + set input(value: Uint8Array) { + pb_1.Message.setField(this, 1, value); + } + static fromObject(data: { + input?: Uint8Array; + }): Init { + const message = new Init({}); + if (data.input != null) { + message.input = data.input; + } + return message; + } + toObject() { + const data: { + input?: Uint8Array; + } = {}; + if (this.input != null) { + data.input = this.input; + } + return data; + } + serialize(): Uint8Array; + serialize(w: pb_1.BinaryWriter): void; + serialize(w?: pb_1.BinaryWriter): Uint8Array | void { + const writer = w || new pb_1.BinaryWriter(); + if (this.input.length) + writer.writeBytes(1, this.input); + if (!w) + return writer.getResultBuffer(); + } + static deserialize(bytes: Uint8Array | pb_1.BinaryReader): Init { + const reader = bytes instanceof pb_1.BinaryReader ? bytes : new pb_1.BinaryReader(bytes), message = new Init(); + while (reader.nextField()) { + if (reader.isEndGroup()) + break; + switch (reader.getFieldNumber()) { + case 1: + message.input = reader.readBytes(); + break; + default: reader.skipField(); + } + } + return message; + } + serializeBinary(): Uint8Array { + return this.serialize(); + } + static deserializeBinary(bytes: Uint8Array): Init { + return Init.deserialize(bytes); + } + } + export class Pong extends pb_1.Message { + #one_of_decls: number[][] = []; + constructor(data?: any[] | {}) { + super(); + pb_1.Message.initialize(this, Array.isArray(data) ? data : [], 0, -1, [], this.#one_of_decls); + if (!Array.isArray(data) && typeof data == "object") { } + } + static fromObject(data: {}): Pong { + const message = new Pong({}); + return message; + } + toObject() { + const data: {} = {}; + return data; + } + serialize(): Uint8Array; + serialize(w: pb_1.BinaryWriter): void; + serialize(w?: pb_1.BinaryWriter): Uint8Array | void { + const writer = w || new pb_1.BinaryWriter(); + if (!w) + return writer.getResultBuffer(); + } + static deserialize(bytes: Uint8Array | pb_1.BinaryReader): Pong { + const reader = bytes instanceof pb_1.BinaryReader ? bytes : new pb_1.BinaryReader(bytes), message = new Pong(); + while (reader.nextField()) { + if (reader.isEndGroup()) + break; + switch (reader.getFieldNumber()) { + default: reader.skipField(); + } + } + return message; + } + serializeBinary(): Uint8Array { + return this.serialize(); + } + static deserializeBinary(bytes: Uint8Array): Pong { + return Pong.deserialize(bytes); + } + } + export class Close extends pb_1.Message { + #one_of_decls: number[][] = [[1]]; + constructor(data?: any[] | ({} & (({ + reason?: string; + })))) { + super(); + pb_1.Message.initialize(this, Array.isArray(data) ? data : [], 0, -1, [], this.#one_of_decls); + if (!Array.isArray(data) && typeof data == "object") { + if ("reason" in data && data.reason != undefined) { + this.reason = data.reason; + } + } + } + get reason() { + return pb_1.Message.getFieldWithDefault(this, 1, "") as string; + } + set reason(value: string) { + pb_1.Message.setOneofField(this, 1, this.#one_of_decls[0], value); + } + get has_reason() { + return pb_1.Message.getField(this, 1) != null; + } + get _reason() { + const cases: { + [index: number]: "none" | "reason"; + } = { + 0: "none", + 1: "reason" + }; + return cases[pb_1.Message.computeOneofCase(this, [1])]; + } + static fromObject(data: { + reason?: string; + }): Close { + const message = new Close({}); + if (data.reason != null) { + message.reason = data.reason; + } + return message; + } + toObject() { + const data: { + reason?: string; + } = {}; + if (this.reason != null) { + data.reason = this.reason; + } + return data; + } + serialize(): Uint8Array; + serialize(w: pb_1.BinaryWriter): void; + serialize(w?: pb_1.BinaryWriter): Uint8Array | void { + const writer = w || new pb_1.BinaryWriter(); + if (this.has_reason) + writer.writeString(1, this.reason); + if (!w) + return writer.getResultBuffer(); + } + static deserialize(bytes: Uint8Array | pb_1.BinaryReader): Close { + const reader = bytes instanceof pb_1.BinaryReader ? bytes : new pb_1.BinaryReader(bytes), message = new Close(); + while (reader.nextField()) { + if (reader.isEndGroup()) + break; + switch (reader.getFieldNumber()) { + case 1: + message.reason = reader.readString(); + break; + default: reader.skipField(); + } + } + return message; + } + serializeBinary(): Uint8Array { + return this.serialize(); + } + static deserializeBinary(bytes: Uint8Array): Close { + return Close.deserialize(bytes); + } + } + export class StartActor extends pb_1.Message { + #one_of_decls: number[][] = []; + constructor(data?: any[] | { + actor_id?: string; + generation?: number; + env?: Map; + metadata?: ActorMetadata; + }) { + super(); + pb_1.Message.initialize(this, Array.isArray(data) ? data : [], 0, -1, [], this.#one_of_decls); + if (!Array.isArray(data) && typeof data == "object") { + if ("actor_id" in data && data.actor_id != undefined) { + this.actor_id = data.actor_id; + } + if ("generation" in data && data.generation != undefined) { + this.generation = data.generation; + } + if ("env" in data && data.env != undefined) { + this.env = data.env; + } + if ("metadata" in data && data.metadata != undefined) { + this.metadata = data.metadata; + } + } + if (!this.env) + this.env = new Map(); + } + get actor_id() { + return pb_1.Message.getFieldWithDefault(this, 1, "") as string; + } + set actor_id(value: string) { + pb_1.Message.setField(this, 1, value); + } + get generation() { + return pb_1.Message.getFieldWithDefault(this, 2, 0) as number; + } + set generation(value: number) { + pb_1.Message.setField(this, 2, value); + } + get env() { + return pb_1.Message.getField(this, 3) as any as Map; + } + set env(value: Map) { + pb_1.Message.setField(this, 3, value as any); + } + get metadata() { + return pb_1.Message.getWrapperField(this, ActorMetadata, 4) as ActorMetadata; + } + set metadata(value: ActorMetadata) { + pb_1.Message.setWrapperField(this, 4, value); + } + get has_metadata() { + return pb_1.Message.getField(this, 4) != null; + } + static fromObject(data: { + actor_id?: string; + generation?: number; + env?: { + [key: string]: string; + }; + metadata?: ReturnType; + }): StartActor { + const message = new StartActor({}); + if (data.actor_id != null) { + message.actor_id = data.actor_id; + } + if (data.generation != null) { + message.generation = data.generation; + } + if (typeof data.env == "object") { + message.env = new Map(Object.entries(data.env)); + } + if (data.metadata != null) { + message.metadata = ActorMetadata.fromObject(data.metadata); + } + return message; + } + toObject() { + const data: { + actor_id?: string; + generation?: number; + env?: { + [key: string]: string; + }; + metadata?: ReturnType; + } = {}; + if (this.actor_id != null) { + data.actor_id = this.actor_id; + } + if (this.generation != null) { + data.generation = this.generation; + } + if (this.env != null) { + data.env = (Object.fromEntries)(this.env); + } + if (this.metadata != null) { + data.metadata = this.metadata.toObject(); + } + return data; + } + serialize(): Uint8Array; + serialize(w: pb_1.BinaryWriter): void; + serialize(w?: pb_1.BinaryWriter): Uint8Array | void { + const writer = w || new pb_1.BinaryWriter(); + if (this.actor_id.length) + writer.writeString(1, this.actor_id); + if (this.generation != 0) + writer.writeUint32(2, this.generation); + for (const [key, value] of this.env) { + writer.writeMessage(3, this.env, () => { + writer.writeString(1, key); + writer.writeString(2, value); + }); + } + if (this.has_metadata) + writer.writeMessage(4, this.metadata, () => this.metadata.serialize(writer)); + if (!w) + return writer.getResultBuffer(); + } + static deserialize(bytes: Uint8Array | pb_1.BinaryReader): StartActor { + const reader = bytes instanceof pb_1.BinaryReader ? bytes : new pb_1.BinaryReader(bytes), message = new StartActor(); + while (reader.nextField()) { + if (reader.isEndGroup()) + break; + switch (reader.getFieldNumber()) { + case 1: + message.actor_id = reader.readString(); + break; + case 2: + message.generation = reader.readUint32(); + break; + case 3: + reader.readMessage(message, () => pb_1.Map.deserializeBinary(message.env as any, reader, reader.readString, reader.readString)); + break; + case 4: + reader.readMessage(message.metadata, () => message.metadata = ActorMetadata.deserialize(reader)); + break; + default: reader.skipField(); + } + } + return message; + } + serializeBinary(): Uint8Array { + return this.serialize(); + } + static deserializeBinary(bytes: Uint8Array): StartActor { + return StartActor.deserialize(bytes); + } + } + export class SignalActor extends pb_1.Message { + #one_of_decls: number[][] = []; + constructor(data?: any[] | { + actor_id?: string; + generation?: number; + signal?: number; + persist_storage?: boolean; + }) { + super(); + pb_1.Message.initialize(this, Array.isArray(data) ? data : [], 0, -1, [], this.#one_of_decls); + if (!Array.isArray(data) && typeof data == "object") { + if ("actor_id" in data && data.actor_id != undefined) { + this.actor_id = data.actor_id; + } + if ("generation" in data && data.generation != undefined) { + this.generation = data.generation; + } + if ("signal" in data && data.signal != undefined) { + this.signal = data.signal; + } + if ("persist_storage" in data && data.persist_storage != undefined) { + this.persist_storage = data.persist_storage; + } + } + } + get actor_id() { + return pb_1.Message.getFieldWithDefault(this, 1, "") as string; + } + set actor_id(value: string) { + pb_1.Message.setField(this, 1, value); + } + get generation() { + return pb_1.Message.getFieldWithDefault(this, 2, 0) as number; + } + set generation(value: number) { + pb_1.Message.setField(this, 2, value); + } + get signal() { + return pb_1.Message.getFieldWithDefault(this, 3, 0) as number; + } + set signal(value: number) { + pb_1.Message.setField(this, 3, value); + } + get persist_storage() { + return pb_1.Message.getFieldWithDefault(this, 4, false) as boolean; + } + set persist_storage(value: boolean) { + pb_1.Message.setField(this, 4, value); + } + static fromObject(data: { + actor_id?: string; + generation?: number; + signal?: number; + persist_storage?: boolean; + }): SignalActor { + const message = new SignalActor({}); + if (data.actor_id != null) { + message.actor_id = data.actor_id; + } + if (data.generation != null) { + message.generation = data.generation; + } + if (data.signal != null) { + message.signal = data.signal; + } + if (data.persist_storage != null) { + message.persist_storage = data.persist_storage; + } + return message; + } + toObject() { + const data: { + actor_id?: string; + generation?: number; + signal?: number; + persist_storage?: boolean; + } = {}; + if (this.actor_id != null) { + data.actor_id = this.actor_id; + } + if (this.generation != null) { + data.generation = this.generation; + } + if (this.signal != null) { + data.signal = this.signal; + } + if (this.persist_storage != null) { + data.persist_storage = this.persist_storage; + } + return data; + } + serialize(): Uint8Array; + serialize(w: pb_1.BinaryWriter): void; + serialize(w?: pb_1.BinaryWriter): Uint8Array | void { + const writer = w || new pb_1.BinaryWriter(); + if (this.actor_id.length) + writer.writeString(1, this.actor_id); + if (this.generation != 0) + writer.writeUint32(2, this.generation); + if (this.signal != 0) + writer.writeInt32(3, this.signal); + if (this.persist_storage != false) + writer.writeBool(4, this.persist_storage); + if (!w) + return writer.getResultBuffer(); + } + static deserialize(bytes: Uint8Array | pb_1.BinaryReader): SignalActor { + const reader = bytes instanceof pb_1.BinaryReader ? bytes : new pb_1.BinaryReader(bytes), message = new SignalActor(); + while (reader.nextField()) { + if (reader.isEndGroup()) + break; + switch (reader.getFieldNumber()) { + case 1: + message.actor_id = reader.readString(); + break; + case 2: + message.generation = reader.readUint32(); + break; + case 3: + message.signal = reader.readInt32(); + break; + case 4: + message.persist_storage = reader.readBool(); + break; + default: reader.skipField(); + } + } + return message; + } + serializeBinary(): Uint8Array { + return this.serialize(); + } + static deserializeBinary(bytes: Uint8Array): SignalActor { + return SignalActor.deserialize(bytes); + } + } + } + export class ActorMetadata extends pb_1.Message { + #one_of_decls: number[][] = []; + constructor(data?: any[] | { + actor?: ActorMetadata.Actor; + network?: ActorMetadata.Network; + project?: ActorMetadata.Project; + environment?: ActorMetadata.Environment; + datacenter?: ActorMetadata.Datacenter; + cluster?: ActorMetadata.Cluster; + build?: ActorMetadata.Build; + }) { + super(); + pb_1.Message.initialize(this, Array.isArray(data) ? data : [], 0, -1, [], this.#one_of_decls); + if (!Array.isArray(data) && typeof data == "object") { + if ("actor" in data && data.actor != undefined) { + this.actor = data.actor; + } + if ("network" in data && data.network != undefined) { + this.network = data.network; + } + if ("project" in data && data.project != undefined) { + this.project = data.project; + } + if ("environment" in data && data.environment != undefined) { + this.environment = data.environment; + } + if ("datacenter" in data && data.datacenter != undefined) { + this.datacenter = data.datacenter; + } + if ("cluster" in data && data.cluster != undefined) { + this.cluster = data.cluster; + } + if ("build" in data && data.build != undefined) { + this.build = data.build; + } + } + } + get actor() { + return pb_1.Message.getWrapperField(this, ActorMetadata.Actor, 1) as ActorMetadata.Actor; + } + set actor(value: ActorMetadata.Actor) { + pb_1.Message.setWrapperField(this, 1, value); + } + get has_actor() { + return pb_1.Message.getField(this, 1) != null; + } + get network() { + return pb_1.Message.getWrapperField(this, ActorMetadata.Network, 2) as ActorMetadata.Network; + } + set network(value: ActorMetadata.Network) { + pb_1.Message.setWrapperField(this, 2, value); + } + get has_network() { + return pb_1.Message.getField(this, 2) != null; + } + get project() { + return pb_1.Message.getWrapperField(this, ActorMetadata.Project, 3) as ActorMetadata.Project; + } + set project(value: ActorMetadata.Project) { + pb_1.Message.setWrapperField(this, 3, value); + } + get has_project() { + return pb_1.Message.getField(this, 3) != null; + } + get environment() { + return pb_1.Message.getWrapperField(this, ActorMetadata.Environment, 4) as ActorMetadata.Environment; + } + set environment(value: ActorMetadata.Environment) { + pb_1.Message.setWrapperField(this, 4, value); + } + get has_environment() { + return pb_1.Message.getField(this, 4) != null; + } + get datacenter() { + return pb_1.Message.getWrapperField(this, ActorMetadata.Datacenter, 5) as ActorMetadata.Datacenter; + } + set datacenter(value: ActorMetadata.Datacenter) { + pb_1.Message.setWrapperField(this, 5, value); + } + get has_datacenter() { + return pb_1.Message.getField(this, 5) != null; + } + get cluster() { + return pb_1.Message.getWrapperField(this, ActorMetadata.Cluster, 6) as ActorMetadata.Cluster; + } + set cluster(value: ActorMetadata.Cluster) { + pb_1.Message.setWrapperField(this, 6, value); + } + get has_cluster() { + return pb_1.Message.getField(this, 6) != null; + } + get build() { + return pb_1.Message.getWrapperField(this, ActorMetadata.Build, 7) as ActorMetadata.Build; + } + set build(value: ActorMetadata.Build) { + pb_1.Message.setWrapperField(this, 7, value); + } + get has_build() { + return pb_1.Message.getField(this, 7) != null; + } + static fromObject(data: { + actor?: ReturnType; + network?: ReturnType; + project?: ReturnType; + environment?: ReturnType; + datacenter?: ReturnType; + cluster?: ReturnType; + build?: ReturnType; + }): ActorMetadata { + const message = new ActorMetadata({}); + if (data.actor != null) { + message.actor = ActorMetadata.Actor.fromObject(data.actor); + } + if (data.network != null) { + message.network = ActorMetadata.Network.fromObject(data.network); + } + if (data.project != null) { + message.project = ActorMetadata.Project.fromObject(data.project); + } + if (data.environment != null) { + message.environment = ActorMetadata.Environment.fromObject(data.environment); + } + if (data.datacenter != null) { + message.datacenter = ActorMetadata.Datacenter.fromObject(data.datacenter); + } + if (data.cluster != null) { + message.cluster = ActorMetadata.Cluster.fromObject(data.cluster); + } + if (data.build != null) { + message.build = ActorMetadata.Build.fromObject(data.build); + } + return message; + } + toObject() { + const data: { + actor?: ReturnType; + network?: ReturnType; + project?: ReturnType; + environment?: ReturnType; + datacenter?: ReturnType; + cluster?: ReturnType; + build?: ReturnType; + } = {}; + if (this.actor != null) { + data.actor = this.actor.toObject(); + } + if (this.network != null) { + data.network = this.network.toObject(); + } + if (this.project != null) { + data.project = this.project.toObject(); + } + if (this.environment != null) { + data.environment = this.environment.toObject(); + } + if (this.datacenter != null) { + data.datacenter = this.datacenter.toObject(); + } + if (this.cluster != null) { + data.cluster = this.cluster.toObject(); + } + if (this.build != null) { + data.build = this.build.toObject(); + } + return data; + } + serialize(): Uint8Array; + serialize(w: pb_1.BinaryWriter): void; + serialize(w?: pb_1.BinaryWriter): Uint8Array | void { + const writer = w || new pb_1.BinaryWriter(); + if (this.has_actor) + writer.writeMessage(1, this.actor, () => this.actor.serialize(writer)); + if (this.has_network) + writer.writeMessage(2, this.network, () => this.network.serialize(writer)); + if (this.has_project) + writer.writeMessage(3, this.project, () => this.project.serialize(writer)); + if (this.has_environment) + writer.writeMessage(4, this.environment, () => this.environment.serialize(writer)); + if (this.has_datacenter) + writer.writeMessage(5, this.datacenter, () => this.datacenter.serialize(writer)); + if (this.has_cluster) + writer.writeMessage(6, this.cluster, () => this.cluster.serialize(writer)); + if (this.has_build) + writer.writeMessage(7, this.build, () => this.build.serialize(writer)); + if (!w) + return writer.getResultBuffer(); + } + static deserialize(bytes: Uint8Array | pb_1.BinaryReader): ActorMetadata { + const reader = bytes instanceof pb_1.BinaryReader ? bytes : new pb_1.BinaryReader(bytes), message = new ActorMetadata(); + while (reader.nextField()) { + if (reader.isEndGroup()) + break; + switch (reader.getFieldNumber()) { + case 1: + reader.readMessage(message.actor, () => message.actor = ActorMetadata.Actor.deserialize(reader)); + break; + case 2: + reader.readMessage(message.network, () => message.network = ActorMetadata.Network.deserialize(reader)); + break; + case 3: + reader.readMessage(message.project, () => message.project = ActorMetadata.Project.deserialize(reader)); + break; + case 4: + reader.readMessage(message.environment, () => message.environment = ActorMetadata.Environment.deserialize(reader)); + break; + case 5: + reader.readMessage(message.datacenter, () => message.datacenter = ActorMetadata.Datacenter.deserialize(reader)); + break; + case 6: + reader.readMessage(message.cluster, () => message.cluster = ActorMetadata.Cluster.deserialize(reader)); + break; + case 7: + reader.readMessage(message.build, () => message.build = ActorMetadata.Build.deserialize(reader)); + break; + default: reader.skipField(); + } + } + return message; + } + serializeBinary(): Uint8Array { + return this.serialize(); + } + static deserializeBinary(bytes: Uint8Array): ActorMetadata { + return ActorMetadata.deserialize(bytes); + } + } + export namespace ActorMetadata { + export class Actor extends pb_1.Message { + #one_of_decls: number[][] = []; + constructor(data?: any[] | { + actor_id?: string; + tags?: Map; + create_ts?: number; + }) { + super(); + pb_1.Message.initialize(this, Array.isArray(data) ? data : [], 0, -1, [], this.#one_of_decls); + if (!Array.isArray(data) && typeof data == "object") { + if ("actor_id" in data && data.actor_id != undefined) { + this.actor_id = data.actor_id; + } + if ("tags" in data && data.tags != undefined) { + this.tags = data.tags; + } + if ("create_ts" in data && data.create_ts != undefined) { + this.create_ts = data.create_ts; + } + } + if (!this.tags) + this.tags = new Map(); + } + get actor_id() { + return pb_1.Message.getFieldWithDefault(this, 1, "") as string; + } + set actor_id(value: string) { + pb_1.Message.setField(this, 1, value); + } + get tags() { + return pb_1.Message.getField(this, 2) as any as Map; + } + set tags(value: Map) { + pb_1.Message.setField(this, 2, value as any); + } + get create_ts() { + return pb_1.Message.getFieldWithDefault(this, 3, 0) as number; + } + set create_ts(value: number) { + pb_1.Message.setField(this, 3, value); + } + static fromObject(data: { + actor_id?: string; + tags?: { + [key: string]: string; + }; + create_ts?: number; + }): Actor { + const message = new Actor({}); + if (data.actor_id != null) { + message.actor_id = data.actor_id; + } + if (typeof data.tags == "object") { + message.tags = new Map(Object.entries(data.tags)); + } + if (data.create_ts != null) { + message.create_ts = data.create_ts; + } + return message; + } + toObject() { + const data: { + actor_id?: string; + tags?: { + [key: string]: string; + }; + create_ts?: number; + } = {}; + if (this.actor_id != null) { + data.actor_id = this.actor_id; + } + if (this.tags != null) { + data.tags = (Object.fromEntries)(this.tags); + } + if (this.create_ts != null) { + data.create_ts = this.create_ts; + } + return data; + } + serialize(): Uint8Array; + serialize(w: pb_1.BinaryWriter): void; + serialize(w?: pb_1.BinaryWriter): Uint8Array | void { + const writer = w || new pb_1.BinaryWriter(); + if (this.actor_id.length) + writer.writeString(1, this.actor_id); + for (const [key, value] of this.tags) { + writer.writeMessage(2, this.tags, () => { + writer.writeString(1, key); + writer.writeString(2, value); + }); + } + if (this.create_ts != 0) + writer.writeInt64(3, this.create_ts); + if (!w) + return writer.getResultBuffer(); + } + static deserialize(bytes: Uint8Array | pb_1.BinaryReader): Actor { + const reader = bytes instanceof pb_1.BinaryReader ? bytes : new pb_1.BinaryReader(bytes), message = new Actor(); + while (reader.nextField()) { + if (reader.isEndGroup()) + break; + switch (reader.getFieldNumber()) { + case 1: + message.actor_id = reader.readString(); + break; + case 2: + reader.readMessage(message, () => pb_1.Map.deserializeBinary(message.tags as any, reader, reader.readString, reader.readString)); + break; + case 3: + message.create_ts = reader.readInt64(); + break; + default: reader.skipField(); + } + } + return message; + } + serializeBinary(): Uint8Array { + return this.serialize(); + } + static deserializeBinary(bytes: Uint8Array): Actor { + return Actor.deserialize(bytes); + } + } + export class Network extends pb_1.Message { + #one_of_decls: number[][] = []; + constructor(data?: any[] | { + ports?: Map; + }) { + super(); + pb_1.Message.initialize(this, Array.isArray(data) ? data : [], 0, -1, [], this.#one_of_decls); + if (!Array.isArray(data) && typeof data == "object") { + if ("ports" in data && data.ports != undefined) { + this.ports = data.ports; + } + } + if (!this.ports) + this.ports = new Map(); + } + get ports() { + return pb_1.Message.getField(this, 1) as any as Map; + } + set ports(value: Map) { + pb_1.Message.setField(this, 1, value as any); + } + static fromObject(data: { + ports?: { + [key: string]: ReturnType; + }; + }): Network { + const message = new Network({}); + if (typeof data.ports == "object") { + message.ports = new Map(Object.entries(data.ports).map(([key, value]) => [key, Port.fromObject(value)])); + } + return message; + } + toObject() { + const data: { + ports?: { + [key: string]: ReturnType; + }; + } = {}; + if (this.ports != null) { + data.ports = (Object.fromEntries)((Array.from)(this.ports).map(([key, value]) => [key, value.toObject()])); + } + return data; + } + serialize(): Uint8Array; + serialize(w: pb_1.BinaryWriter): void; + serialize(w?: pb_1.BinaryWriter): Uint8Array | void { + const writer = w || new pb_1.BinaryWriter(); + for (const [key, value] of this.ports) { + writer.writeMessage(1, this.ports, () => { + writer.writeString(1, key); + writer.writeMessage(2, value, () => value.serialize(writer)); + }); + } + if (!w) + return writer.getResultBuffer(); + } + static deserialize(bytes: Uint8Array | pb_1.BinaryReader): Network { + const reader = bytes instanceof pb_1.BinaryReader ? bytes : new pb_1.BinaryReader(bytes), message = new Network(); + while (reader.nextField()) { + if (reader.isEndGroup()) + break; + switch (reader.getFieldNumber()) { + case 1: + reader.readMessage(message, () => pb_1.Map.deserializeBinary(message.ports as any, reader, reader.readString, () => { + let value; + reader.readMessage(message, () => value = Port.deserialize(reader)); + return value; + })); + break; + default: reader.skipField(); + } + } + return message; + } + serializeBinary(): Uint8Array { + return this.serialize(); + } + static deserializeBinary(bytes: Uint8Array): Network { + return Network.deserialize(bytes); + } + } + export class Project extends pb_1.Message { + #one_of_decls: number[][] = []; + constructor(data?: any[] | { + project_id?: string; + slug?: string; + }) { + super(); + pb_1.Message.initialize(this, Array.isArray(data) ? data : [], 0, -1, [], this.#one_of_decls); + if (!Array.isArray(data) && typeof data == "object") { + if ("project_id" in data && data.project_id != undefined) { + this.project_id = data.project_id; + } + if ("slug" in data && data.slug != undefined) { + this.slug = data.slug; + } + } + } + get project_id() { + return pb_1.Message.getFieldWithDefault(this, 1, "") as string; + } + set project_id(value: string) { + pb_1.Message.setField(this, 1, value); + } + get slug() { + return pb_1.Message.getFieldWithDefault(this, 2, "") as string; + } + set slug(value: string) { + pb_1.Message.setField(this, 2, value); + } + static fromObject(data: { + project_id?: string; + slug?: string; + }): Project { + const message = new Project({}); + if (data.project_id != null) { + message.project_id = data.project_id; + } + if (data.slug != null) { + message.slug = data.slug; + } + return message; + } + toObject() { + const data: { + project_id?: string; + slug?: string; + } = {}; + if (this.project_id != null) { + data.project_id = this.project_id; + } + if (this.slug != null) { + data.slug = this.slug; + } + return data; + } + serialize(): Uint8Array; + serialize(w: pb_1.BinaryWriter): void; + serialize(w?: pb_1.BinaryWriter): Uint8Array | void { + const writer = w || new pb_1.BinaryWriter(); + if (this.project_id.length) + writer.writeString(1, this.project_id); + if (this.slug.length) + writer.writeString(2, this.slug); + if (!w) + return writer.getResultBuffer(); + } + static deserialize(bytes: Uint8Array | pb_1.BinaryReader): Project { + const reader = bytes instanceof pb_1.BinaryReader ? bytes : new pb_1.BinaryReader(bytes), message = new Project(); + while (reader.nextField()) { + if (reader.isEndGroup()) + break; + switch (reader.getFieldNumber()) { + case 1: + message.project_id = reader.readString(); + break; + case 2: + message.slug = reader.readString(); + break; + default: reader.skipField(); + } + } + return message; + } + serializeBinary(): Uint8Array { + return this.serialize(); + } + static deserializeBinary(bytes: Uint8Array): Project { + return Project.deserialize(bytes); + } + } + export class Environment extends pb_1.Message { + #one_of_decls: number[][] = []; + constructor(data?: any[] | { + env_id?: string; + slug?: string; + }) { + super(); + pb_1.Message.initialize(this, Array.isArray(data) ? data : [], 0, -1, [], this.#one_of_decls); + if (!Array.isArray(data) && typeof data == "object") { + if ("env_id" in data && data.env_id != undefined) { + this.env_id = data.env_id; + } + if ("slug" in data && data.slug != undefined) { + this.slug = data.slug; + } + } + } + get env_id() { + return pb_1.Message.getFieldWithDefault(this, 1, "") as string; + } + set env_id(value: string) { + pb_1.Message.setField(this, 1, value); + } + get slug() { + return pb_1.Message.getFieldWithDefault(this, 2, "") as string; + } + set slug(value: string) { + pb_1.Message.setField(this, 2, value); + } + static fromObject(data: { + env_id?: string; + slug?: string; + }): Environment { + const message = new Environment({}); + if (data.env_id != null) { + message.env_id = data.env_id; + } + if (data.slug != null) { + message.slug = data.slug; + } + return message; + } + toObject() { + const data: { + env_id?: string; + slug?: string; + } = {}; + if (this.env_id != null) { + data.env_id = this.env_id; + } + if (this.slug != null) { + data.slug = this.slug; + } + return data; + } + serialize(): Uint8Array; + serialize(w: pb_1.BinaryWriter): void; + serialize(w?: pb_1.BinaryWriter): Uint8Array | void { + const writer = w || new pb_1.BinaryWriter(); + if (this.env_id.length) + writer.writeString(1, this.env_id); + if (this.slug.length) + writer.writeString(2, this.slug); + if (!w) + return writer.getResultBuffer(); + } + static deserialize(bytes: Uint8Array | pb_1.BinaryReader): Environment { + const reader = bytes instanceof pb_1.BinaryReader ? bytes : new pb_1.BinaryReader(bytes), message = new Environment(); + while (reader.nextField()) { + if (reader.isEndGroup()) + break; + switch (reader.getFieldNumber()) { + case 1: + message.env_id = reader.readString(); + break; + case 2: + message.slug = reader.readString(); + break; + default: reader.skipField(); + } + } + return message; + } + serializeBinary(): Uint8Array { + return this.serialize(); + } + static deserializeBinary(bytes: Uint8Array): Environment { + return Environment.deserialize(bytes); + } + } + export class Datacenter extends pb_1.Message { + #one_of_decls: number[][] = []; + constructor(data?: any[] | { + name_id?: string; + display_name?: string; + }) { + super(); + pb_1.Message.initialize(this, Array.isArray(data) ? data : [], 0, -1, [], this.#one_of_decls); + if (!Array.isArray(data) && typeof data == "object") { + if ("name_id" in data && data.name_id != undefined) { + this.name_id = data.name_id; + } + if ("display_name" in data && data.display_name != undefined) { + this.display_name = data.display_name; + } + } + } + get name_id() { + return pb_1.Message.getFieldWithDefault(this, 1, "") as string; + } + set name_id(value: string) { + pb_1.Message.setField(this, 1, value); + } + get display_name() { + return pb_1.Message.getFieldWithDefault(this, 2, "") as string; + } + set display_name(value: string) { + pb_1.Message.setField(this, 2, value); + } + static fromObject(data: { + name_id?: string; + display_name?: string; + }): Datacenter { + const message = new Datacenter({}); + if (data.name_id != null) { + message.name_id = data.name_id; + } + if (data.display_name != null) { + message.display_name = data.display_name; + } + return message; + } + toObject() { + const data: { + name_id?: string; + display_name?: string; + } = {}; + if (this.name_id != null) { + data.name_id = this.name_id; + } + if (this.display_name != null) { + data.display_name = this.display_name; + } + return data; + } + serialize(): Uint8Array; + serialize(w: pb_1.BinaryWriter): void; + serialize(w?: pb_1.BinaryWriter): Uint8Array | void { + const writer = w || new pb_1.BinaryWriter(); + if (this.name_id.length) + writer.writeString(1, this.name_id); + if (this.display_name.length) + writer.writeString(2, this.display_name); + if (!w) + return writer.getResultBuffer(); + } + static deserialize(bytes: Uint8Array | pb_1.BinaryReader): Datacenter { + const reader = bytes instanceof pb_1.BinaryReader ? bytes : new pb_1.BinaryReader(bytes), message = new Datacenter(); + while (reader.nextField()) { + if (reader.isEndGroup()) + break; + switch (reader.getFieldNumber()) { + case 1: + message.name_id = reader.readString(); + break; + case 2: + message.display_name = reader.readString(); + break; + default: reader.skipField(); + } + } + return message; + } + serializeBinary(): Uint8Array { + return this.serialize(); + } + static deserializeBinary(bytes: Uint8Array): Datacenter { + return Datacenter.deserialize(bytes); + } + } + export class Cluster extends pb_1.Message { + #one_of_decls: number[][] = []; + constructor(data?: any[] | { + cluster_id?: string; + }) { + super(); + pb_1.Message.initialize(this, Array.isArray(data) ? data : [], 0, -1, [], this.#one_of_decls); + if (!Array.isArray(data) && typeof data == "object") { + if ("cluster_id" in data && data.cluster_id != undefined) { + this.cluster_id = data.cluster_id; + } + } + } + get cluster_id() { + return pb_1.Message.getFieldWithDefault(this, 1, "") as string; + } + set cluster_id(value: string) { + pb_1.Message.setField(this, 1, value); + } + static fromObject(data: { + cluster_id?: string; + }): Cluster { + const message = new Cluster({}); + if (data.cluster_id != null) { + message.cluster_id = data.cluster_id; + } + return message; + } + toObject() { + const data: { + cluster_id?: string; + } = {}; + if (this.cluster_id != null) { + data.cluster_id = this.cluster_id; + } + return data; + } + serialize(): Uint8Array; + serialize(w: pb_1.BinaryWriter): void; + serialize(w?: pb_1.BinaryWriter): Uint8Array | void { + const writer = w || new pb_1.BinaryWriter(); + if (this.cluster_id.length) + writer.writeString(1, this.cluster_id); + if (!w) + return writer.getResultBuffer(); + } + static deserialize(bytes: Uint8Array | pb_1.BinaryReader): Cluster { + const reader = bytes instanceof pb_1.BinaryReader ? bytes : new pb_1.BinaryReader(bytes), message = new Cluster(); + while (reader.nextField()) { + if (reader.isEndGroup()) + break; + switch (reader.getFieldNumber()) { + case 1: + message.cluster_id = reader.readString(); + break; + default: reader.skipField(); + } + } + return message; + } + serializeBinary(): Uint8Array { + return this.serialize(); + } + static deserializeBinary(bytes: Uint8Array): Cluster { + return Cluster.deserialize(bytes); + } + } + export class Build extends pb_1.Message { + #one_of_decls: number[][] = []; + constructor(data?: any[] | { + build_id?: string; + }) { + super(); + pb_1.Message.initialize(this, Array.isArray(data) ? data : [], 0, -1, [], this.#one_of_decls); + if (!Array.isArray(data) && typeof data == "object") { + if ("build_id" in data && data.build_id != undefined) { + this.build_id = data.build_id; + } + } + } + get build_id() { + return pb_1.Message.getFieldWithDefault(this, 1, "") as string; + } + set build_id(value: string) { + pb_1.Message.setField(this, 1, value); + } + static fromObject(data: { + build_id?: string; + }): Build { + const message = new Build({}); + if (data.build_id != null) { + message.build_id = data.build_id; + } + return message; + } + toObject() { + const data: { + build_id?: string; + } = {}; + if (this.build_id != null) { + data.build_id = this.build_id; + } + return data; + } + serialize(): Uint8Array; + serialize(w: pb_1.BinaryWriter): void; + serialize(w?: pb_1.BinaryWriter): Uint8Array | void { + const writer = w || new pb_1.BinaryWriter(); + if (this.build_id.length) + writer.writeString(1, this.build_id); + if (!w) + return writer.getResultBuffer(); + } + static deserialize(bytes: Uint8Array | pb_1.BinaryReader): Build { + const reader = bytes instanceof pb_1.BinaryReader ? bytes : new pb_1.BinaryReader(bytes), message = new Build(); + while (reader.nextField()) { + if (reader.isEndGroup()) + break; + switch (reader.getFieldNumber()) { + case 1: + message.build_id = reader.readString(); + break; + default: reader.skipField(); + } + } + return message; + } + serializeBinary(): Uint8Array { + return this.serialize(); + } + static deserializeBinary(bytes: Uint8Array): Build { + return Build.deserialize(bytes); + } + } + } + export class Port extends pb_1.Message { + #one_of_decls: number[][] = [[1], [2], [3], [4]]; + constructor(data?: any[] | ({ + routing?: Routing; + } & (({ + internal_port?: number; + }) | ({ + public_hostname?: string; + }) | ({ + public_port?: number; + }) | ({ + public_path?: string; + })))) { + super(); + pb_1.Message.initialize(this, Array.isArray(data) ? data : [], 0, -1, [], this.#one_of_decls); + if (!Array.isArray(data) && typeof data == "object") { + if ("internal_port" in data && data.internal_port != undefined) { + this.internal_port = data.internal_port; + } + if ("public_hostname" in data && data.public_hostname != undefined) { + this.public_hostname = data.public_hostname; + } + if ("public_port" in data && data.public_port != undefined) { + this.public_port = data.public_port; + } + if ("public_path" in data && data.public_path != undefined) { + this.public_path = data.public_path; + } + if ("routing" in data && data.routing != undefined) { + this.routing = data.routing; + } + } + } + get internal_port() { + return pb_1.Message.getFieldWithDefault(this, 1, 0) as number; + } + set internal_port(value: number) { + pb_1.Message.setOneofField(this, 1, this.#one_of_decls[0], value); + } + get has_internal_port() { + return pb_1.Message.getField(this, 1) != null; + } + get public_hostname() { + return pb_1.Message.getFieldWithDefault(this, 2, "") as string; + } + set public_hostname(value: string) { + pb_1.Message.setOneofField(this, 2, this.#one_of_decls[1], value); + } + get has_public_hostname() { + return pb_1.Message.getField(this, 2) != null; + } + get public_port() { + return pb_1.Message.getFieldWithDefault(this, 3, 0) as number; + } + set public_port(value: number) { + pb_1.Message.setOneofField(this, 3, this.#one_of_decls[2], value); + } + get has_public_port() { + return pb_1.Message.getField(this, 3) != null; + } + get public_path() { + return pb_1.Message.getFieldWithDefault(this, 4, "") as string; + } + set public_path(value: string) { + pb_1.Message.setOneofField(this, 4, this.#one_of_decls[3], value); + } + get has_public_path() { + return pb_1.Message.getField(this, 4) != null; + } + get routing() { + return pb_1.Message.getWrapperField(this, Routing, 5) as Routing; + } + set routing(value: Routing) { + pb_1.Message.setWrapperField(this, 5, value); + } + get has_routing() { + return pb_1.Message.getField(this, 5) != null; + } + get _internal_port() { + const cases: { + [index: number]: "none" | "internal_port"; + } = { + 0: "none", + 1: "internal_port" + }; + return cases[pb_1.Message.computeOneofCase(this, [1])]; + } + get _public_hostname() { + const cases: { + [index: number]: "none" | "public_hostname"; + } = { + 0: "none", + 2: "public_hostname" + }; + return cases[pb_1.Message.computeOneofCase(this, [2])]; + } + get _public_port() { + const cases: { + [index: number]: "none" | "public_port"; + } = { + 0: "none", + 3: "public_port" + }; + return cases[pb_1.Message.computeOneofCase(this, [3])]; + } + get _public_path() { + const cases: { + [index: number]: "none" | "public_path"; + } = { + 0: "none", + 4: "public_path" + }; + return cases[pb_1.Message.computeOneofCase(this, [4])]; + } + static fromObject(data: { + internal_port?: number; + public_hostname?: string; + public_port?: number; + public_path?: string; + routing?: ReturnType; + }): Port { + const message = new Port({}); + if (data.internal_port != null) { + message.internal_port = data.internal_port; + } + if (data.public_hostname != null) { + message.public_hostname = data.public_hostname; + } + if (data.public_port != null) { + message.public_port = data.public_port; + } + if (data.public_path != null) { + message.public_path = data.public_path; + } + if (data.routing != null) { + message.routing = Routing.fromObject(data.routing); + } + return message; + } + toObject() { + const data: { + internal_port?: number; + public_hostname?: string; + public_port?: number; + public_path?: string; + routing?: ReturnType; + } = {}; + if (this.internal_port != null) { + data.internal_port = this.internal_port; + } + if (this.public_hostname != null) { + data.public_hostname = this.public_hostname; + } + if (this.public_port != null) { + data.public_port = this.public_port; + } + if (this.public_path != null) { + data.public_path = this.public_path; + } + if (this.routing != null) { + data.routing = this.routing.toObject(); + } + return data; + } + serialize(): Uint8Array; + serialize(w: pb_1.BinaryWriter): void; + serialize(w?: pb_1.BinaryWriter): Uint8Array | void { + const writer = w || new pb_1.BinaryWriter(); + if (this.has_internal_port) + writer.writeInt32(1, this.internal_port); + if (this.has_public_hostname) + writer.writeString(2, this.public_hostname); + if (this.has_public_port) + writer.writeInt32(3, this.public_port); + if (this.has_public_path) + writer.writeString(4, this.public_path); + if (this.has_routing) + writer.writeMessage(5, this.routing, () => this.routing.serialize(writer)); + if (!w) + return writer.getResultBuffer(); + } + static deserialize(bytes: Uint8Array | pb_1.BinaryReader): Port { + const reader = bytes instanceof pb_1.BinaryReader ? bytes : new pb_1.BinaryReader(bytes), message = new Port(); + while (reader.nextField()) { + if (reader.isEndGroup()) + break; + switch (reader.getFieldNumber()) { + case 1: + message.internal_port = reader.readInt32(); + break; + case 2: + message.public_hostname = reader.readString(); + break; + case 3: + message.public_port = reader.readInt32(); + break; + case 4: + message.public_path = reader.readString(); + break; + case 5: + reader.readMessage(message.routing, () => message.routing = Routing.deserialize(reader)); + break; + default: reader.skipField(); + } + } + return message; + } + serializeBinary(): Uint8Array { + return this.serialize(); + } + static deserializeBinary(bytes: Uint8Array): Port { + return Port.deserialize(bytes); + } + } + export class Routing extends pb_1.Message { + #one_of_decls: number[][] = [[1, 2]]; + constructor(data?: any[] | ({} & (({ + game_guard?: Routing.GameGuard; + host?: never; + } | { + game_guard?: never; + host?: Routing.Host; + })))) { + super(); + pb_1.Message.initialize(this, Array.isArray(data) ? data : [], 0, -1, [], this.#one_of_decls); + if (!Array.isArray(data) && typeof data == "object") { + if ("game_guard" in data && data.game_guard != undefined) { + this.game_guard = data.game_guard; + } + if ("host" in data && data.host != undefined) { + this.host = data.host; + } + } + } + get game_guard() { + return pb_1.Message.getWrapperField(this, Routing.GameGuard, 1) as Routing.GameGuard; + } + set game_guard(value: Routing.GameGuard) { + pb_1.Message.setOneofWrapperField(this, 1, this.#one_of_decls[0], value); + } + get has_game_guard() { + return pb_1.Message.getField(this, 1) != null; + } + get host() { + return pb_1.Message.getWrapperField(this, Routing.Host, 2) as Routing.Host; + } + set host(value: Routing.Host) { + pb_1.Message.setOneofWrapperField(this, 2, this.#one_of_decls[0], value); + } + get has_host() { + return pb_1.Message.getField(this, 2) != null; + } + get routing() { + const cases: { + [index: number]: "none" | "game_guard" | "host"; + } = { + 0: "none", + 1: "game_guard", + 2: "host" + }; + return cases[pb_1.Message.computeOneofCase(this, [1, 2])]; + } + static fromObject(data: { + game_guard?: ReturnType; + host?: ReturnType; + }): Routing { + const message = new Routing({}); + if (data.game_guard != null) { + message.game_guard = Routing.GameGuard.fromObject(data.game_guard); + } + if (data.host != null) { + message.host = Routing.Host.fromObject(data.host); + } + return message; + } + toObject() { + const data: { + game_guard?: ReturnType; + host?: ReturnType; + } = {}; + if (this.game_guard != null) { + data.game_guard = this.game_guard.toObject(); + } + if (this.host != null) { + data.host = this.host.toObject(); + } + return data; + } + serialize(): Uint8Array; + serialize(w: pb_1.BinaryWriter): void; + serialize(w?: pb_1.BinaryWriter): Uint8Array | void { + const writer = w || new pb_1.BinaryWriter(); + if (this.has_game_guard) + writer.writeMessage(1, this.game_guard, () => this.game_guard.serialize(writer)); + if (this.has_host) + writer.writeMessage(2, this.host, () => this.host.serialize(writer)); + if (!w) + return writer.getResultBuffer(); + } + static deserialize(bytes: Uint8Array | pb_1.BinaryReader): Routing { + const reader = bytes instanceof pb_1.BinaryReader ? bytes : new pb_1.BinaryReader(bytes), message = new Routing(); + while (reader.nextField()) { + if (reader.isEndGroup()) + break; + switch (reader.getFieldNumber()) { + case 1: + reader.readMessage(message.game_guard, () => message.game_guard = Routing.GameGuard.deserialize(reader)); + break; + case 2: + reader.readMessage(message.host, () => message.host = Routing.Host.deserialize(reader)); + break; + default: reader.skipField(); + } + } + return message; + } + serializeBinary(): Uint8Array { + return this.serialize(); + } + static deserializeBinary(bytes: Uint8Array): Routing { + return Routing.deserialize(bytes); + } + } + export namespace Routing { + export class GameGuard extends pb_1.Message { + #one_of_decls: number[][] = []; + constructor(data?: any[] | { + protocol?: GameGuardProtocol; + }) { + super(); + pb_1.Message.initialize(this, Array.isArray(data) ? data : [], 0, -1, [], this.#one_of_decls); + if (!Array.isArray(data) && typeof data == "object") { + if ("protocol" in data && data.protocol != undefined) { + this.protocol = data.protocol; + } + } + } + get protocol() { + return pb_1.Message.getFieldWithDefault(this, 1, GameGuardProtocol.GG_HTTP) as GameGuardProtocol; + } + set protocol(value: GameGuardProtocol) { + pb_1.Message.setField(this, 1, value); + } + static fromObject(data: { + protocol?: GameGuardProtocol; + }): GameGuard { + const message = new GameGuard({}); + if (data.protocol != null) { + message.protocol = data.protocol; + } + return message; + } + toObject() { + const data: { + protocol?: GameGuardProtocol; + } = {}; + if (this.protocol != null) { + data.protocol = this.protocol; + } + return data; + } + serialize(): Uint8Array; + serialize(w: pb_1.BinaryWriter): void; + serialize(w?: pb_1.BinaryWriter): Uint8Array | void { + const writer = w || new pb_1.BinaryWriter(); + if (this.protocol != GameGuardProtocol.GG_HTTP) + writer.writeEnum(1, this.protocol); + if (!w) + return writer.getResultBuffer(); + } + static deserialize(bytes: Uint8Array | pb_1.BinaryReader): GameGuard { + const reader = bytes instanceof pb_1.BinaryReader ? bytes : new pb_1.BinaryReader(bytes), message = new GameGuard(); + while (reader.nextField()) { + if (reader.isEndGroup()) + break; + switch (reader.getFieldNumber()) { + case 1: + message.protocol = reader.readEnum(); + break; + default: reader.skipField(); + } + } + return message; + } + serializeBinary(): Uint8Array { + return this.serialize(); + } + static deserializeBinary(bytes: Uint8Array): GameGuard { + return GameGuard.deserialize(bytes); + } + } + export class Host extends pb_1.Message { + #one_of_decls: number[][] = []; + constructor(data?: any[] | { + protocol?: HostProtocol; + }) { + super(); + pb_1.Message.initialize(this, Array.isArray(data) ? data : [], 0, -1, [], this.#one_of_decls); + if (!Array.isArray(data) && typeof data == "object") { + if ("protocol" in data && data.protocol != undefined) { + this.protocol = data.protocol; + } + } + } + get protocol() { + return pb_1.Message.getFieldWithDefault(this, 1, HostProtocol.HOST_TCP) as HostProtocol; + } + set protocol(value: HostProtocol) { + pb_1.Message.setField(this, 1, value); + } + static fromObject(data: { + protocol?: HostProtocol; + }): Host { + const message = new Host({}); + if (data.protocol != null) { + message.protocol = data.protocol; + } + return message; + } + toObject() { + const data: { + protocol?: HostProtocol; + } = {}; + if (this.protocol != null) { + data.protocol = this.protocol; + } + return data; + } + serialize(): Uint8Array; + serialize(w: pb_1.BinaryWriter): void; + serialize(w?: pb_1.BinaryWriter): Uint8Array | void { + const writer = w || new pb_1.BinaryWriter(); + if (this.protocol != HostProtocol.HOST_TCP) + writer.writeEnum(1, this.protocol); + if (!w) + return writer.getResultBuffer(); + } + static deserialize(bytes: Uint8Array | pb_1.BinaryReader): Host { + const reader = bytes instanceof pb_1.BinaryReader ? bytes : new pb_1.BinaryReader(bytes), message = new Host(); + while (reader.nextField()) { + if (reader.isEndGroup()) + break; + switch (reader.getFieldNumber()) { + case 1: + message.protocol = reader.readEnum(); + break; + default: reader.skipField(); + } + } + return message; + } + serializeBinary(): Uint8Array { + return this.serialize(); + } + static deserializeBinary(bytes: Uint8Array): Host { + return Host.deserialize(bytes); + } + } + } + export class ActorState extends pb_1.Message { + #one_of_decls: number[][] = [[1, 2]]; + constructor(data?: any[] | ({} & (({ + running?: ActorState.Running; + exited?: never; + } | { + running?: never; + exited?: ActorState.Exited; + })))) { + super(); + pb_1.Message.initialize(this, Array.isArray(data) ? data : [], 0, -1, [], this.#one_of_decls); + if (!Array.isArray(data) && typeof data == "object") { + if ("running" in data && data.running != undefined) { + this.running = data.running; + } + if ("exited" in data && data.exited != undefined) { + this.exited = data.exited; + } + } + } + get running() { + return pb_1.Message.getWrapperField(this, ActorState.Running, 1) as ActorState.Running; + } + set running(value: ActorState.Running) { + pb_1.Message.setOneofWrapperField(this, 1, this.#one_of_decls[0], value); + } + get has_running() { + return pb_1.Message.getField(this, 1) != null; + } + get exited() { + return pb_1.Message.getWrapperField(this, ActorState.Exited, 2) as ActorState.Exited; + } + set exited(value: ActorState.Exited) { + pb_1.Message.setOneofWrapperField(this, 2, this.#one_of_decls[0], value); + } + get has_exited() { + return pb_1.Message.getField(this, 2) != null; + } + get state() { + const cases: { + [index: number]: "none" | "running" | "exited"; + } = { + 0: "none", + 1: "running", + 2: "exited" + }; + return cases[pb_1.Message.computeOneofCase(this, [1, 2])]; + } + static fromObject(data: { + running?: ReturnType; + exited?: ReturnType; + }): ActorState { + const message = new ActorState({}); + if (data.running != null) { + message.running = ActorState.Running.fromObject(data.running); + } + if (data.exited != null) { + message.exited = ActorState.Exited.fromObject(data.exited); + } + return message; + } + toObject() { + const data: { + running?: ReturnType; + exited?: ReturnType; + } = {}; + if (this.running != null) { + data.running = this.running.toObject(); + } + if (this.exited != null) { + data.exited = this.exited.toObject(); + } + return data; + } + serialize(): Uint8Array; + serialize(w: pb_1.BinaryWriter): void; + serialize(w?: pb_1.BinaryWriter): Uint8Array | void { + const writer = w || new pb_1.BinaryWriter(); + if (this.has_running) + writer.writeMessage(1, this.running, () => this.running.serialize(writer)); + if (this.has_exited) + writer.writeMessage(2, this.exited, () => this.exited.serialize(writer)); + if (!w) + return writer.getResultBuffer(); + } + static deserialize(bytes: Uint8Array | pb_1.BinaryReader): ActorState { + const reader = bytes instanceof pb_1.BinaryReader ? bytes : new pb_1.BinaryReader(bytes), message = new ActorState(); + while (reader.nextField()) { + if (reader.isEndGroup()) + break; + switch (reader.getFieldNumber()) { + case 1: + reader.readMessage(message.running, () => message.running = ActorState.Running.deserialize(reader)); + break; + case 2: + reader.readMessage(message.exited, () => message.exited = ActorState.Exited.deserialize(reader)); + break; + default: reader.skipField(); + } + } + return message; + } + serializeBinary(): Uint8Array { + return this.serialize(); + } + static deserializeBinary(bytes: Uint8Array): ActorState { + return ActorState.deserialize(bytes); + } + } + export namespace ActorState { + export class Running extends pb_1.Message { + #one_of_decls: number[][] = []; + constructor(data?: any[] | {}) { + super(); + pb_1.Message.initialize(this, Array.isArray(data) ? data : [], 0, -1, [], this.#one_of_decls); + if (!Array.isArray(data) && typeof data == "object") { } + } + static fromObject(data: {}): Running { + const message = new Running({}); + return message; + } + toObject() { + const data: {} = {}; + return data; + } + serialize(): Uint8Array; + serialize(w: pb_1.BinaryWriter): void; + serialize(w?: pb_1.BinaryWriter): Uint8Array | void { + const writer = w || new pb_1.BinaryWriter(); + if (!w) + return writer.getResultBuffer(); + } + static deserialize(bytes: Uint8Array | pb_1.BinaryReader): Running { + const reader = bytes instanceof pb_1.BinaryReader ? bytes : new pb_1.BinaryReader(bytes), message = new Running(); + while (reader.nextField()) { + if (reader.isEndGroup()) + break; + switch (reader.getFieldNumber()) { + default: reader.skipField(); + } + } + return message; + } + serializeBinary(): Uint8Array { + return this.serialize(); + } + static deserializeBinary(bytes: Uint8Array): Running { + return Running.deserialize(bytes); + } + } + export class Exited extends pb_1.Message { + #one_of_decls: number[][] = [[1]]; + constructor(data?: any[] | ({} & (({ + exit_code?: number; + })))) { + super(); + pb_1.Message.initialize(this, Array.isArray(data) ? data : [], 0, -1, [], this.#one_of_decls); + if (!Array.isArray(data) && typeof data == "object") { + if ("exit_code" in data && data.exit_code != undefined) { + this.exit_code = data.exit_code; + } + } + } + get exit_code() { + return pb_1.Message.getFieldWithDefault(this, 1, 0) as number; + } + set exit_code(value: number) { + pb_1.Message.setOneofField(this, 1, this.#one_of_decls[0], value); + } + get has_exit_code() { + return pb_1.Message.getField(this, 1) != null; + } + get _exit_code() { + const cases: { + [index: number]: "none" | "exit_code"; + } = { + 0: "none", + 1: "exit_code" + }; + return cases[pb_1.Message.computeOneofCase(this, [1])]; + } + static fromObject(data: { + exit_code?: number; + }): Exited { + const message = new Exited({}); + if (data.exit_code != null) { + message.exit_code = data.exit_code; + } + return message; + } + toObject() { + const data: { + exit_code?: number; + } = {}; + if (this.exit_code != null) { + data.exit_code = this.exit_code; + } + return data; + } + serialize(): Uint8Array; + serialize(w: pb_1.BinaryWriter): void; + serialize(w?: pb_1.BinaryWriter): Uint8Array | void { + const writer = w || new pb_1.BinaryWriter(); + if (this.has_exit_code) + writer.writeInt32(1, this.exit_code); + if (!w) + return writer.getResultBuffer(); + } + static deserialize(bytes: Uint8Array | pb_1.BinaryReader): Exited { + const reader = bytes instanceof pb_1.BinaryReader ? bytes : new pb_1.BinaryReader(bytes), message = new Exited(); + while (reader.nextField()) { + if (reader.isEndGroup()) + break; + switch (reader.getFieldNumber()) { + case 1: + message.exit_code = reader.readInt32(); + break; + default: reader.skipField(); + } + } + return message; + } + serializeBinary(): Uint8Array { + return this.serialize(); + } + static deserializeBinary(bytes: Uint8Array): Exited { + return Exited.deserialize(bytes); + } + } + } +} diff --git a/sdks/runner-protocol/runner_protocol_pb.js b/sdks/runner-protocol/runner_protocol_pb.js new file mode 100644 index 0000000000..5f82ad5234 --- /dev/null +++ b/sdks/runner-protocol/runner_protocol_pb.js @@ -0,0 +1,5308 @@ +// source: runner_protocol.proto +/** + * @fileoverview + * @enhanceable + * @suppress {missingRequire} reports error on implicit type usages. + * @suppress {messageConventions} JS Compiler reports an error if a variable or + * field starts with 'MSG_' and isn't a translatable message. + * @public + */ +// GENERATED CODE -- DO NOT EDIT! +/* eslint-disable */ +// @ts-nocheck + +var jspb = require('google-protobuf'); +var goog = jspb; +var global = + (typeof globalThis !== 'undefined' && globalThis) || + (typeof window !== 'undefined' && window) || + (typeof global !== 'undefined' && global) || + (typeof self !== 'undefined' && self) || + (function () { return this; }).call(null) || + Function('return this')(); + +var kv_pb = require('./kv_pb.js'); +goog.object.extend(proto, kv_pb); +goog.exportSymbol('proto.rivet.pegboard.runner_protocol.ActorMetadata', null, global); +goog.exportSymbol('proto.rivet.pegboard.runner_protocol.ActorMetadata.Actor', null, global); +goog.exportSymbol('proto.rivet.pegboard.runner_protocol.ActorMetadata.Build', null, global); +goog.exportSymbol('proto.rivet.pegboard.runner_protocol.ActorMetadata.Cluster', null, global); +goog.exportSymbol('proto.rivet.pegboard.runner_protocol.ActorMetadata.Datacenter', null, global); +goog.exportSymbol('proto.rivet.pegboard.runner_protocol.ActorMetadata.Environment', null, global); +goog.exportSymbol('proto.rivet.pegboard.runner_protocol.ActorMetadata.Network', null, global); +goog.exportSymbol('proto.rivet.pegboard.runner_protocol.ActorMetadata.Project', null, global); +goog.exportSymbol('proto.rivet.pegboard.runner_protocol.ActorState', null, global); +goog.exportSymbol('proto.rivet.pegboard.runner_protocol.ActorState.Exited', null, global); +goog.exportSymbol('proto.rivet.pegboard.runner_protocol.ActorState.Running', null, global); +goog.exportSymbol('proto.rivet.pegboard.runner_protocol.ActorState.StateCase', null, global); +goog.exportSymbol('proto.rivet.pegboard.runner_protocol.GameGuardProtocol', null, global); +goog.exportSymbol('proto.rivet.pegboard.runner_protocol.HostProtocol', null, global); +goog.exportSymbol('proto.rivet.pegboard.runner_protocol.Port', null, global); +goog.exportSymbol('proto.rivet.pegboard.runner_protocol.Routing', null, global); +goog.exportSymbol('proto.rivet.pegboard.runner_protocol.Routing.GameGuard', null, global); +goog.exportSymbol('proto.rivet.pegboard.runner_protocol.Routing.Host', null, global); +goog.exportSymbol('proto.rivet.pegboard.runner_protocol.Routing.RoutingCase', null, global); +goog.exportSymbol('proto.rivet.pegboard.runner_protocol.ToManager', null, global); +goog.exportSymbol('proto.rivet.pegboard.runner_protocol.ToManager.ActorStateUpdate', null, global); +goog.exportSymbol('proto.rivet.pegboard.runner_protocol.ToManager.MessageCase', null, global); +goog.exportSymbol('proto.rivet.pegboard.runner_protocol.ToManager.Ping', null, global); +goog.exportSymbol('proto.rivet.pegboard.runner_protocol.ToRunner', null, global); +goog.exportSymbol('proto.rivet.pegboard.runner_protocol.ToRunner.Close', null, global); +goog.exportSymbol('proto.rivet.pegboard.runner_protocol.ToRunner.Init', null, global); +goog.exportSymbol('proto.rivet.pegboard.runner_protocol.ToRunner.MessageCase', null, global); +goog.exportSymbol('proto.rivet.pegboard.runner_protocol.ToRunner.Pong', null, global); +goog.exportSymbol('proto.rivet.pegboard.runner_protocol.ToRunner.SignalActor', null, global); +goog.exportSymbol('proto.rivet.pegboard.runner_protocol.ToRunner.StartActor', null, global); +/** + * Generated by JsPbCodeGenerator. + * @param {Array=} opt_data Optional initial data array, typically from a + * server response, or constructed directly in Javascript. The array is used + * in place and becomes part of the constructed object. It is not cloned. + * If no data is provided, the constructed object will be empty, but still + * valid. + * @extends {jspb.Message} + * @constructor + */ +proto.rivet.pegboard.runner_protocol.ToManager = function(opt_data) { + jspb.Message.initialize(this, opt_data, 0, -1, null, proto.rivet.pegboard.runner_protocol.ToManager.oneofGroups_); +}; +goog.inherits(proto.rivet.pegboard.runner_protocol.ToManager, jspb.Message); +if (goog.DEBUG && !COMPILED) { + /** + * @public + * @override + */ + proto.rivet.pegboard.runner_protocol.ToManager.displayName = 'proto.rivet.pegboard.runner_protocol.ToManager'; +} +/** + * Generated by JsPbCodeGenerator. + * @param {Array=} opt_data Optional initial data array, typically from a + * server response, or constructed directly in Javascript. The array is used + * in place and becomes part of the constructed object. It is not cloned. + * If no data is provided, the constructed object will be empty, but still + * valid. + * @extends {jspb.Message} + * @constructor + */ +proto.rivet.pegboard.runner_protocol.ToManager.ActorStateUpdate = function(opt_data) { + jspb.Message.initialize(this, opt_data, 0, -1, null, null); +}; +goog.inherits(proto.rivet.pegboard.runner_protocol.ToManager.ActorStateUpdate, jspb.Message); +if (goog.DEBUG && !COMPILED) { + /** + * @public + * @override + */ + proto.rivet.pegboard.runner_protocol.ToManager.ActorStateUpdate.displayName = 'proto.rivet.pegboard.runner_protocol.ToManager.ActorStateUpdate'; +} +/** + * Generated by JsPbCodeGenerator. + * @param {Array=} opt_data Optional initial data array, typically from a + * server response, or constructed directly in Javascript. The array is used + * in place and becomes part of the constructed object. It is not cloned. + * If no data is provided, the constructed object will be empty, but still + * valid. + * @extends {jspb.Message} + * @constructor + */ +proto.rivet.pegboard.runner_protocol.ToManager.Ping = function(opt_data) { + jspb.Message.initialize(this, opt_data, 0, -1, null, null); +}; +goog.inherits(proto.rivet.pegboard.runner_protocol.ToManager.Ping, jspb.Message); +if (goog.DEBUG && !COMPILED) { + /** + * @public + * @override + */ + proto.rivet.pegboard.runner_protocol.ToManager.Ping.displayName = 'proto.rivet.pegboard.runner_protocol.ToManager.Ping'; +} +/** + * Generated by JsPbCodeGenerator. + * @param {Array=} opt_data Optional initial data array, typically from a + * server response, or constructed directly in Javascript. The array is used + * in place and becomes part of the constructed object. It is not cloned. + * If no data is provided, the constructed object will be empty, but still + * valid. + * @extends {jspb.Message} + * @constructor + */ +proto.rivet.pegboard.runner_protocol.ToRunner = function(opt_data) { + jspb.Message.initialize(this, opt_data, 0, -1, null, proto.rivet.pegboard.runner_protocol.ToRunner.oneofGroups_); +}; +goog.inherits(proto.rivet.pegboard.runner_protocol.ToRunner, jspb.Message); +if (goog.DEBUG && !COMPILED) { + /** + * @public + * @override + */ + proto.rivet.pegboard.runner_protocol.ToRunner.displayName = 'proto.rivet.pegboard.runner_protocol.ToRunner'; +} +/** + * Generated by JsPbCodeGenerator. + * @param {Array=} opt_data Optional initial data array, typically from a + * server response, or constructed directly in Javascript. The array is used + * in place and becomes part of the constructed object. It is not cloned. + * If no data is provided, the constructed object will be empty, but still + * valid. + * @extends {jspb.Message} + * @constructor + */ +proto.rivet.pegboard.runner_protocol.ToRunner.Init = function(opt_data) { + jspb.Message.initialize(this, opt_data, 0, -1, null, null); +}; +goog.inherits(proto.rivet.pegboard.runner_protocol.ToRunner.Init, jspb.Message); +if (goog.DEBUG && !COMPILED) { + /** + * @public + * @override + */ + proto.rivet.pegboard.runner_protocol.ToRunner.Init.displayName = 'proto.rivet.pegboard.runner_protocol.ToRunner.Init'; +} +/** + * Generated by JsPbCodeGenerator. + * @param {Array=} opt_data Optional initial data array, typically from a + * server response, or constructed directly in Javascript. The array is used + * in place and becomes part of the constructed object. It is not cloned. + * If no data is provided, the constructed object will be empty, but still + * valid. + * @extends {jspb.Message} + * @constructor + */ +proto.rivet.pegboard.runner_protocol.ToRunner.Pong = function(opt_data) { + jspb.Message.initialize(this, opt_data, 0, -1, null, null); +}; +goog.inherits(proto.rivet.pegboard.runner_protocol.ToRunner.Pong, jspb.Message); +if (goog.DEBUG && !COMPILED) { + /** + * @public + * @override + */ + proto.rivet.pegboard.runner_protocol.ToRunner.Pong.displayName = 'proto.rivet.pegboard.runner_protocol.ToRunner.Pong'; +} +/** + * Generated by JsPbCodeGenerator. + * @param {Array=} opt_data Optional initial data array, typically from a + * server response, or constructed directly in Javascript. The array is used + * in place and becomes part of the constructed object. It is not cloned. + * If no data is provided, the constructed object will be empty, but still + * valid. + * @extends {jspb.Message} + * @constructor + */ +proto.rivet.pegboard.runner_protocol.ToRunner.Close = function(opt_data) { + jspb.Message.initialize(this, opt_data, 0, -1, null, null); +}; +goog.inherits(proto.rivet.pegboard.runner_protocol.ToRunner.Close, jspb.Message); +if (goog.DEBUG && !COMPILED) { + /** + * @public + * @override + */ + proto.rivet.pegboard.runner_protocol.ToRunner.Close.displayName = 'proto.rivet.pegboard.runner_protocol.ToRunner.Close'; +} +/** + * Generated by JsPbCodeGenerator. + * @param {Array=} opt_data Optional initial data array, typically from a + * server response, or constructed directly in Javascript. The array is used + * in place and becomes part of the constructed object. It is not cloned. + * If no data is provided, the constructed object will be empty, but still + * valid. + * @extends {jspb.Message} + * @constructor + */ +proto.rivet.pegboard.runner_protocol.ToRunner.StartActor = function(opt_data) { + jspb.Message.initialize(this, opt_data, 0, -1, null, null); +}; +goog.inherits(proto.rivet.pegboard.runner_protocol.ToRunner.StartActor, jspb.Message); +if (goog.DEBUG && !COMPILED) { + /** + * @public + * @override + */ + proto.rivet.pegboard.runner_protocol.ToRunner.StartActor.displayName = 'proto.rivet.pegboard.runner_protocol.ToRunner.StartActor'; +} +/** + * Generated by JsPbCodeGenerator. + * @param {Array=} opt_data Optional initial data array, typically from a + * server response, or constructed directly in Javascript. The array is used + * in place and becomes part of the constructed object. It is not cloned. + * If no data is provided, the constructed object will be empty, but still + * valid. + * @extends {jspb.Message} + * @constructor + */ +proto.rivet.pegboard.runner_protocol.ToRunner.SignalActor = function(opt_data) { + jspb.Message.initialize(this, opt_data, 0, -1, null, null); +}; +goog.inherits(proto.rivet.pegboard.runner_protocol.ToRunner.SignalActor, jspb.Message); +if (goog.DEBUG && !COMPILED) { + /** + * @public + * @override + */ + proto.rivet.pegboard.runner_protocol.ToRunner.SignalActor.displayName = 'proto.rivet.pegboard.runner_protocol.ToRunner.SignalActor'; +} +/** + * Generated by JsPbCodeGenerator. + * @param {Array=} opt_data Optional initial data array, typically from a + * server response, or constructed directly in Javascript. The array is used + * in place and becomes part of the constructed object. It is not cloned. + * If no data is provided, the constructed object will be empty, but still + * valid. + * @extends {jspb.Message} + * @constructor + */ +proto.rivet.pegboard.runner_protocol.ActorMetadata = function(opt_data) { + jspb.Message.initialize(this, opt_data, 0, -1, null, null); +}; +goog.inherits(proto.rivet.pegboard.runner_protocol.ActorMetadata, jspb.Message); +if (goog.DEBUG && !COMPILED) { + /** + * @public + * @override + */ + proto.rivet.pegboard.runner_protocol.ActorMetadata.displayName = 'proto.rivet.pegboard.runner_protocol.ActorMetadata'; +} +/** + * Generated by JsPbCodeGenerator. + * @param {Array=} opt_data Optional initial data array, typically from a + * server response, or constructed directly in Javascript. The array is used + * in place and becomes part of the constructed object. It is not cloned. + * If no data is provided, the constructed object will be empty, but still + * valid. + * @extends {jspb.Message} + * @constructor + */ +proto.rivet.pegboard.runner_protocol.ActorMetadata.Actor = function(opt_data) { + jspb.Message.initialize(this, opt_data, 0, -1, null, null); +}; +goog.inherits(proto.rivet.pegboard.runner_protocol.ActorMetadata.Actor, jspb.Message); +if (goog.DEBUG && !COMPILED) { + /** + * @public + * @override + */ + proto.rivet.pegboard.runner_protocol.ActorMetadata.Actor.displayName = 'proto.rivet.pegboard.runner_protocol.ActorMetadata.Actor'; +} +/** + * Generated by JsPbCodeGenerator. + * @param {Array=} opt_data Optional initial data array, typically from a + * server response, or constructed directly in Javascript. The array is used + * in place and becomes part of the constructed object. It is not cloned. + * If no data is provided, the constructed object will be empty, but still + * valid. + * @extends {jspb.Message} + * @constructor + */ +proto.rivet.pegboard.runner_protocol.ActorMetadata.Network = function(opt_data) { + jspb.Message.initialize(this, opt_data, 0, -1, null, null); +}; +goog.inherits(proto.rivet.pegboard.runner_protocol.ActorMetadata.Network, jspb.Message); +if (goog.DEBUG && !COMPILED) { + /** + * @public + * @override + */ + proto.rivet.pegboard.runner_protocol.ActorMetadata.Network.displayName = 'proto.rivet.pegboard.runner_protocol.ActorMetadata.Network'; +} +/** + * Generated by JsPbCodeGenerator. + * @param {Array=} opt_data Optional initial data array, typically from a + * server response, or constructed directly in Javascript. The array is used + * in place and becomes part of the constructed object. It is not cloned. + * If no data is provided, the constructed object will be empty, but still + * valid. + * @extends {jspb.Message} + * @constructor + */ +proto.rivet.pegboard.runner_protocol.ActorMetadata.Project = function(opt_data) { + jspb.Message.initialize(this, opt_data, 0, -1, null, null); +}; +goog.inherits(proto.rivet.pegboard.runner_protocol.ActorMetadata.Project, jspb.Message); +if (goog.DEBUG && !COMPILED) { + /** + * @public + * @override + */ + proto.rivet.pegboard.runner_protocol.ActorMetadata.Project.displayName = 'proto.rivet.pegboard.runner_protocol.ActorMetadata.Project'; +} +/** + * Generated by JsPbCodeGenerator. + * @param {Array=} opt_data Optional initial data array, typically from a + * server response, or constructed directly in Javascript. The array is used + * in place and becomes part of the constructed object. It is not cloned. + * If no data is provided, the constructed object will be empty, but still + * valid. + * @extends {jspb.Message} + * @constructor + */ +proto.rivet.pegboard.runner_protocol.ActorMetadata.Environment = function(opt_data) { + jspb.Message.initialize(this, opt_data, 0, -1, null, null); +}; +goog.inherits(proto.rivet.pegboard.runner_protocol.ActorMetadata.Environment, jspb.Message); +if (goog.DEBUG && !COMPILED) { + /** + * @public + * @override + */ + proto.rivet.pegboard.runner_protocol.ActorMetadata.Environment.displayName = 'proto.rivet.pegboard.runner_protocol.ActorMetadata.Environment'; +} +/** + * Generated by JsPbCodeGenerator. + * @param {Array=} opt_data Optional initial data array, typically from a + * server response, or constructed directly in Javascript. The array is used + * in place and becomes part of the constructed object. It is not cloned. + * If no data is provided, the constructed object will be empty, but still + * valid. + * @extends {jspb.Message} + * @constructor + */ +proto.rivet.pegboard.runner_protocol.ActorMetadata.Datacenter = function(opt_data) { + jspb.Message.initialize(this, opt_data, 0, -1, null, null); +}; +goog.inherits(proto.rivet.pegboard.runner_protocol.ActorMetadata.Datacenter, jspb.Message); +if (goog.DEBUG && !COMPILED) { + /** + * @public + * @override + */ + proto.rivet.pegboard.runner_protocol.ActorMetadata.Datacenter.displayName = 'proto.rivet.pegboard.runner_protocol.ActorMetadata.Datacenter'; +} +/** + * Generated by JsPbCodeGenerator. + * @param {Array=} opt_data Optional initial data array, typically from a + * server response, or constructed directly in Javascript. The array is used + * in place and becomes part of the constructed object. It is not cloned. + * If no data is provided, the constructed object will be empty, but still + * valid. + * @extends {jspb.Message} + * @constructor + */ +proto.rivet.pegboard.runner_protocol.ActorMetadata.Cluster = function(opt_data) { + jspb.Message.initialize(this, opt_data, 0, -1, null, null); +}; +goog.inherits(proto.rivet.pegboard.runner_protocol.ActorMetadata.Cluster, jspb.Message); +if (goog.DEBUG && !COMPILED) { + /** + * @public + * @override + */ + proto.rivet.pegboard.runner_protocol.ActorMetadata.Cluster.displayName = 'proto.rivet.pegboard.runner_protocol.ActorMetadata.Cluster'; +} +/** + * Generated by JsPbCodeGenerator. + * @param {Array=} opt_data Optional initial data array, typically from a + * server response, or constructed directly in Javascript. The array is used + * in place and becomes part of the constructed object. It is not cloned. + * If no data is provided, the constructed object will be empty, but still + * valid. + * @extends {jspb.Message} + * @constructor + */ +proto.rivet.pegboard.runner_protocol.ActorMetadata.Build = function(opt_data) { + jspb.Message.initialize(this, opt_data, 0, -1, null, null); +}; +goog.inherits(proto.rivet.pegboard.runner_protocol.ActorMetadata.Build, jspb.Message); +if (goog.DEBUG && !COMPILED) { + /** + * @public + * @override + */ + proto.rivet.pegboard.runner_protocol.ActorMetadata.Build.displayName = 'proto.rivet.pegboard.runner_protocol.ActorMetadata.Build'; +} +/** + * Generated by JsPbCodeGenerator. + * @param {Array=} opt_data Optional initial data array, typically from a + * server response, or constructed directly in Javascript. The array is used + * in place and becomes part of the constructed object. It is not cloned. + * If no data is provided, the constructed object will be empty, but still + * valid. + * @extends {jspb.Message} + * @constructor + */ +proto.rivet.pegboard.runner_protocol.Port = function(opt_data) { + jspb.Message.initialize(this, opt_data, 0, -1, null, null); +}; +goog.inherits(proto.rivet.pegboard.runner_protocol.Port, jspb.Message); +if (goog.DEBUG && !COMPILED) { + /** + * @public + * @override + */ + proto.rivet.pegboard.runner_protocol.Port.displayName = 'proto.rivet.pegboard.runner_protocol.Port'; +} +/** + * Generated by JsPbCodeGenerator. + * @param {Array=} opt_data Optional initial data array, typically from a + * server response, or constructed directly in Javascript. The array is used + * in place and becomes part of the constructed object. It is not cloned. + * If no data is provided, the constructed object will be empty, but still + * valid. + * @extends {jspb.Message} + * @constructor + */ +proto.rivet.pegboard.runner_protocol.Routing = function(opt_data) { + jspb.Message.initialize(this, opt_data, 0, -1, null, proto.rivet.pegboard.runner_protocol.Routing.oneofGroups_); +}; +goog.inherits(proto.rivet.pegboard.runner_protocol.Routing, jspb.Message); +if (goog.DEBUG && !COMPILED) { + /** + * @public + * @override + */ + proto.rivet.pegboard.runner_protocol.Routing.displayName = 'proto.rivet.pegboard.runner_protocol.Routing'; +} +/** + * Generated by JsPbCodeGenerator. + * @param {Array=} opt_data Optional initial data array, typically from a + * server response, or constructed directly in Javascript. The array is used + * in place and becomes part of the constructed object. It is not cloned. + * If no data is provided, the constructed object will be empty, but still + * valid. + * @extends {jspb.Message} + * @constructor + */ +proto.rivet.pegboard.runner_protocol.Routing.GameGuard = function(opt_data) { + jspb.Message.initialize(this, opt_data, 0, -1, null, null); +}; +goog.inherits(proto.rivet.pegboard.runner_protocol.Routing.GameGuard, jspb.Message); +if (goog.DEBUG && !COMPILED) { + /** + * @public + * @override + */ + proto.rivet.pegboard.runner_protocol.Routing.GameGuard.displayName = 'proto.rivet.pegboard.runner_protocol.Routing.GameGuard'; +} +/** + * Generated by JsPbCodeGenerator. + * @param {Array=} opt_data Optional initial data array, typically from a + * server response, or constructed directly in Javascript. The array is used + * in place and becomes part of the constructed object. It is not cloned. + * If no data is provided, the constructed object will be empty, but still + * valid. + * @extends {jspb.Message} + * @constructor + */ +proto.rivet.pegboard.runner_protocol.Routing.Host = function(opt_data) { + jspb.Message.initialize(this, opt_data, 0, -1, null, null); +}; +goog.inherits(proto.rivet.pegboard.runner_protocol.Routing.Host, jspb.Message); +if (goog.DEBUG && !COMPILED) { + /** + * @public + * @override + */ + proto.rivet.pegboard.runner_protocol.Routing.Host.displayName = 'proto.rivet.pegboard.runner_protocol.Routing.Host'; +} +/** + * Generated by JsPbCodeGenerator. + * @param {Array=} opt_data Optional initial data array, typically from a + * server response, or constructed directly in Javascript. The array is used + * in place and becomes part of the constructed object. It is not cloned. + * If no data is provided, the constructed object will be empty, but still + * valid. + * @extends {jspb.Message} + * @constructor + */ +proto.rivet.pegboard.runner_protocol.ActorState = function(opt_data) { + jspb.Message.initialize(this, opt_data, 0, -1, null, proto.rivet.pegboard.runner_protocol.ActorState.oneofGroups_); +}; +goog.inherits(proto.rivet.pegboard.runner_protocol.ActorState, jspb.Message); +if (goog.DEBUG && !COMPILED) { + /** + * @public + * @override + */ + proto.rivet.pegboard.runner_protocol.ActorState.displayName = 'proto.rivet.pegboard.runner_protocol.ActorState'; +} +/** + * Generated by JsPbCodeGenerator. + * @param {Array=} opt_data Optional initial data array, typically from a + * server response, or constructed directly in Javascript. The array is used + * in place and becomes part of the constructed object. It is not cloned. + * If no data is provided, the constructed object will be empty, but still + * valid. + * @extends {jspb.Message} + * @constructor + */ +proto.rivet.pegboard.runner_protocol.ActorState.Running = function(opt_data) { + jspb.Message.initialize(this, opt_data, 0, -1, null, null); +}; +goog.inherits(proto.rivet.pegboard.runner_protocol.ActorState.Running, jspb.Message); +if (goog.DEBUG && !COMPILED) { + /** + * @public + * @override + */ + proto.rivet.pegboard.runner_protocol.ActorState.Running.displayName = 'proto.rivet.pegboard.runner_protocol.ActorState.Running'; +} +/** + * Generated by JsPbCodeGenerator. + * @param {Array=} opt_data Optional initial data array, typically from a + * server response, or constructed directly in Javascript. The array is used + * in place and becomes part of the constructed object. It is not cloned. + * If no data is provided, the constructed object will be empty, but still + * valid. + * @extends {jspb.Message} + * @constructor + */ +proto.rivet.pegboard.runner_protocol.ActorState.Exited = function(opt_data) { + jspb.Message.initialize(this, opt_data, 0, -1, null, null); +}; +goog.inherits(proto.rivet.pegboard.runner_protocol.ActorState.Exited, jspb.Message); +if (goog.DEBUG && !COMPILED) { + /** + * @public + * @override + */ + proto.rivet.pegboard.runner_protocol.ActorState.Exited.displayName = 'proto.rivet.pegboard.runner_protocol.ActorState.Exited'; +} + +/** + * Oneof group definitions for this message. Each group defines the field + * numbers belonging to that group. When of these fields' value is set, all + * other fields in the group are cleared. During deserialization, if multiple + * fields are encountered for a group, only the last value seen will be kept. + * @private {!Array>} + * @const + */ +proto.rivet.pegboard.runner_protocol.ToManager.oneofGroups_ = [[1,2,3]]; + +/** + * @enum {number} + */ +proto.rivet.pegboard.runner_protocol.ToManager.MessageCase = { + MESSAGE_NOT_SET: 0, + ACTOR_STATE_UPDATE: 1, + PING: 2, + KV: 3 +}; + +/** + * @return {proto.rivet.pegboard.runner_protocol.ToManager.MessageCase} + */ +proto.rivet.pegboard.runner_protocol.ToManager.prototype.getMessageCase = function() { + return /** @type {proto.rivet.pegboard.runner_protocol.ToManager.MessageCase} */(jspb.Message.computeOneofCase(this, proto.rivet.pegboard.runner_protocol.ToManager.oneofGroups_[0])); +}; + + + +if (jspb.Message.GENERATE_TO_OBJECT) { +/** + * Creates an object representation of this proto. + * Field names that are reserved in JavaScript and will be renamed to pb_name. + * Optional fields that are not set will be set to undefined. + * To access a reserved field use, foo.pb_, eg, foo.pb_default. + * For the list of reserved names please see: + * net/proto2/compiler/js/internal/generator.cc#kKeyword. + * @param {boolean=} opt_includeInstance Deprecated. whether to include the + * JSPB instance for transitional soy proto support: + * http://goto/soy-param-migration + * @return {!Object} + */ +proto.rivet.pegboard.runner_protocol.ToManager.prototype.toObject = function(opt_includeInstance) { + return proto.rivet.pegboard.runner_protocol.ToManager.toObject(opt_includeInstance, this); +}; + + +/** + * Static version of the {@see toObject} method. + * @param {boolean|undefined} includeInstance Deprecated. Whether to include + * the JSPB instance for transitional soy proto support: + * http://goto/soy-param-migration + * @param {!proto.rivet.pegboard.runner_protocol.ToManager} msg The msg instance to transform. + * @return {!Object} + * @suppress {unusedLocalVariables} f is only used for nested messages + */ +proto.rivet.pegboard.runner_protocol.ToManager.toObject = function(includeInstance, msg) { + var f, obj = { +actorStateUpdate: (f = msg.getActorStateUpdate()) && proto.rivet.pegboard.runner_protocol.ToManager.ActorStateUpdate.toObject(includeInstance, f), +ping: (f = msg.getPing()) && proto.rivet.pegboard.runner_protocol.ToManager.Ping.toObject(includeInstance, f), +kv: (f = msg.getKv()) && kv_pb.Request.toObject(includeInstance, f) + }; + + if (includeInstance) { + obj.$jspbMessageInstance = msg; + } + return obj; +}; +} + + +/** + * Deserializes binary data (in protobuf wire format). + * @param {jspb.ByteSource} bytes The bytes to deserialize. + * @return {!proto.rivet.pegboard.runner_protocol.ToManager} + */ +proto.rivet.pegboard.runner_protocol.ToManager.deserializeBinary = function(bytes) { + var reader = new jspb.BinaryReader(bytes); + var msg = new proto.rivet.pegboard.runner_protocol.ToManager; + return proto.rivet.pegboard.runner_protocol.ToManager.deserializeBinaryFromReader(msg, reader); +}; + + +/** + * Deserializes binary data (in protobuf wire format) from the + * given reader into the given message object. + * @param {!proto.rivet.pegboard.runner_protocol.ToManager} msg The message object to deserialize into. + * @param {!jspb.BinaryReader} reader The BinaryReader to use. + * @return {!proto.rivet.pegboard.runner_protocol.ToManager} + */ +proto.rivet.pegboard.runner_protocol.ToManager.deserializeBinaryFromReader = function(msg, reader) { + while (reader.nextField()) { + if (reader.isEndGroup()) { + break; + } + var field = reader.getFieldNumber(); + switch (field) { + case 1: + var value = new proto.rivet.pegboard.runner_protocol.ToManager.ActorStateUpdate; + reader.readMessage(value,proto.rivet.pegboard.runner_protocol.ToManager.ActorStateUpdate.deserializeBinaryFromReader); + msg.setActorStateUpdate(value); + break; + case 2: + var value = new proto.rivet.pegboard.runner_protocol.ToManager.Ping; + reader.readMessage(value,proto.rivet.pegboard.runner_protocol.ToManager.Ping.deserializeBinaryFromReader); + msg.setPing(value); + break; + case 3: + var value = new kv_pb.Request; + reader.readMessage(value,kv_pb.Request.deserializeBinaryFromReader); + msg.setKv(value); + break; + default: + reader.skipField(); + break; + } + } + return msg; +}; + + +/** + * Serializes the message to binary data (in protobuf wire format). + * @return {!Uint8Array} + */ +proto.rivet.pegboard.runner_protocol.ToManager.prototype.serializeBinary = function() { + var writer = new jspb.BinaryWriter(); + proto.rivet.pegboard.runner_protocol.ToManager.serializeBinaryToWriter(this, writer); + return writer.getResultBuffer(); +}; + + +/** + * Serializes the given message to binary data (in protobuf wire + * format), writing to the given BinaryWriter. + * @param {!proto.rivet.pegboard.runner_protocol.ToManager} message + * @param {!jspb.BinaryWriter} writer + * @suppress {unusedLocalVariables} f is only used for nested messages + */ +proto.rivet.pegboard.runner_protocol.ToManager.serializeBinaryToWriter = function(message, writer) { + var f = undefined; + f = message.getActorStateUpdate(); + if (f != null) { + writer.writeMessage( + 1, + f, + proto.rivet.pegboard.runner_protocol.ToManager.ActorStateUpdate.serializeBinaryToWriter + ); + } + f = message.getPing(); + if (f != null) { + writer.writeMessage( + 2, + f, + proto.rivet.pegboard.runner_protocol.ToManager.Ping.serializeBinaryToWriter + ); + } + f = message.getKv(); + if (f != null) { + writer.writeMessage( + 3, + f, + kv_pb.Request.serializeBinaryToWriter + ); + } +}; + + + + + +if (jspb.Message.GENERATE_TO_OBJECT) { +/** + * Creates an object representation of this proto. + * Field names that are reserved in JavaScript and will be renamed to pb_name. + * Optional fields that are not set will be set to undefined. + * To access a reserved field use, foo.pb_, eg, foo.pb_default. + * For the list of reserved names please see: + * net/proto2/compiler/js/internal/generator.cc#kKeyword. + * @param {boolean=} opt_includeInstance Deprecated. whether to include the + * JSPB instance for transitional soy proto support: + * http://goto/soy-param-migration + * @return {!Object} + */ +proto.rivet.pegboard.runner_protocol.ToManager.ActorStateUpdate.prototype.toObject = function(opt_includeInstance) { + return proto.rivet.pegboard.runner_protocol.ToManager.ActorStateUpdate.toObject(opt_includeInstance, this); +}; + + +/** + * Static version of the {@see toObject} method. + * @param {boolean|undefined} includeInstance Deprecated. Whether to include + * the JSPB instance for transitional soy proto support: + * http://goto/soy-param-migration + * @param {!proto.rivet.pegboard.runner_protocol.ToManager.ActorStateUpdate} msg The msg instance to transform. + * @return {!Object} + * @suppress {unusedLocalVariables} f is only used for nested messages + */ +proto.rivet.pegboard.runner_protocol.ToManager.ActorStateUpdate.toObject = function(includeInstance, msg) { + var f, obj = { +actorId: jspb.Message.getFieldWithDefault(msg, 1, ""), +generation: jspb.Message.getFieldWithDefault(msg, 2, 0), +state: (f = msg.getState()) && proto.rivet.pegboard.runner_protocol.ActorState.toObject(includeInstance, f) + }; + + if (includeInstance) { + obj.$jspbMessageInstance = msg; + } + return obj; +}; +} + + +/** + * Deserializes binary data (in protobuf wire format). + * @param {jspb.ByteSource} bytes The bytes to deserialize. + * @return {!proto.rivet.pegboard.runner_protocol.ToManager.ActorStateUpdate} + */ +proto.rivet.pegboard.runner_protocol.ToManager.ActorStateUpdate.deserializeBinary = function(bytes) { + var reader = new jspb.BinaryReader(bytes); + var msg = new proto.rivet.pegboard.runner_protocol.ToManager.ActorStateUpdate; + return proto.rivet.pegboard.runner_protocol.ToManager.ActorStateUpdate.deserializeBinaryFromReader(msg, reader); +}; + + +/** + * Deserializes binary data (in protobuf wire format) from the + * given reader into the given message object. + * @param {!proto.rivet.pegboard.runner_protocol.ToManager.ActorStateUpdate} msg The message object to deserialize into. + * @param {!jspb.BinaryReader} reader The BinaryReader to use. + * @return {!proto.rivet.pegboard.runner_protocol.ToManager.ActorStateUpdate} + */ +proto.rivet.pegboard.runner_protocol.ToManager.ActorStateUpdate.deserializeBinaryFromReader = function(msg, reader) { + while (reader.nextField()) { + if (reader.isEndGroup()) { + break; + } + var field = reader.getFieldNumber(); + switch (field) { + case 1: + var value = /** @type {string} */ (reader.readString()); + msg.setActorId(value); + break; + case 2: + var value = /** @type {number} */ (reader.readUint32()); + msg.setGeneration(value); + break; + case 3: + var value = new proto.rivet.pegboard.runner_protocol.ActorState; + reader.readMessage(value,proto.rivet.pegboard.runner_protocol.ActorState.deserializeBinaryFromReader); + msg.setState(value); + break; + default: + reader.skipField(); + break; + } + } + return msg; +}; + + +/** + * Serializes the message to binary data (in protobuf wire format). + * @return {!Uint8Array} + */ +proto.rivet.pegboard.runner_protocol.ToManager.ActorStateUpdate.prototype.serializeBinary = function() { + var writer = new jspb.BinaryWriter(); + proto.rivet.pegboard.runner_protocol.ToManager.ActorStateUpdate.serializeBinaryToWriter(this, writer); + return writer.getResultBuffer(); +}; + + +/** + * Serializes the given message to binary data (in protobuf wire + * format), writing to the given BinaryWriter. + * @param {!proto.rivet.pegboard.runner_protocol.ToManager.ActorStateUpdate} message + * @param {!jspb.BinaryWriter} writer + * @suppress {unusedLocalVariables} f is only used for nested messages + */ +proto.rivet.pegboard.runner_protocol.ToManager.ActorStateUpdate.serializeBinaryToWriter = function(message, writer) { + var f = undefined; + f = message.getActorId(); + if (f.length > 0) { + writer.writeString( + 1, + f + ); + } + f = message.getGeneration(); + if (f !== 0) { + writer.writeUint32( + 2, + f + ); + } + f = message.getState(); + if (f != null) { + writer.writeMessage( + 3, + f, + proto.rivet.pegboard.runner_protocol.ActorState.serializeBinaryToWriter + ); + } +}; + + +/** + * optional string actor_id = 1; + * @return {string} + */ +proto.rivet.pegboard.runner_protocol.ToManager.ActorStateUpdate.prototype.getActorId = function() { + return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, "")); +}; + + +/** + * @param {string} value + * @return {!proto.rivet.pegboard.runner_protocol.ToManager.ActorStateUpdate} returns this + */ +proto.rivet.pegboard.runner_protocol.ToManager.ActorStateUpdate.prototype.setActorId = function(value) { + return jspb.Message.setProto3StringField(this, 1, value); +}; + + +/** + * optional uint32 generation = 2; + * @return {number} + */ +proto.rivet.pegboard.runner_protocol.ToManager.ActorStateUpdate.prototype.getGeneration = function() { + return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 2, 0)); +}; + + +/** + * @param {number} value + * @return {!proto.rivet.pegboard.runner_protocol.ToManager.ActorStateUpdate} returns this + */ +proto.rivet.pegboard.runner_protocol.ToManager.ActorStateUpdate.prototype.setGeneration = function(value) { + return jspb.Message.setProto3IntField(this, 2, value); +}; + + +/** + * optional ActorState state = 3; + * @return {?proto.rivet.pegboard.runner_protocol.ActorState} + */ +proto.rivet.pegboard.runner_protocol.ToManager.ActorStateUpdate.prototype.getState = function() { + return /** @type{?proto.rivet.pegboard.runner_protocol.ActorState} */ ( + jspb.Message.getWrapperField(this, proto.rivet.pegboard.runner_protocol.ActorState, 3)); +}; + + +/** + * @param {?proto.rivet.pegboard.runner_protocol.ActorState|undefined} value + * @return {!proto.rivet.pegboard.runner_protocol.ToManager.ActorStateUpdate} returns this +*/ +proto.rivet.pegboard.runner_protocol.ToManager.ActorStateUpdate.prototype.setState = function(value) { + return jspb.Message.setWrapperField(this, 3, value); +}; + + +/** + * Clears the message field making it undefined. + * @return {!proto.rivet.pegboard.runner_protocol.ToManager.ActorStateUpdate} returns this + */ +proto.rivet.pegboard.runner_protocol.ToManager.ActorStateUpdate.prototype.clearState = function() { + return this.setState(undefined); +}; + + +/** + * Returns whether this field is set. + * @return {boolean} + */ +proto.rivet.pegboard.runner_protocol.ToManager.ActorStateUpdate.prototype.hasState = function() { + return jspb.Message.getField(this, 3) != null; +}; + + + + + +if (jspb.Message.GENERATE_TO_OBJECT) { +/** + * Creates an object representation of this proto. + * Field names that are reserved in JavaScript and will be renamed to pb_name. + * Optional fields that are not set will be set to undefined. + * To access a reserved field use, foo.pb_, eg, foo.pb_default. + * For the list of reserved names please see: + * net/proto2/compiler/js/internal/generator.cc#kKeyword. + * @param {boolean=} opt_includeInstance Deprecated. whether to include the + * JSPB instance for transitional soy proto support: + * http://goto/soy-param-migration + * @return {!Object} + */ +proto.rivet.pegboard.runner_protocol.ToManager.Ping.prototype.toObject = function(opt_includeInstance) { + return proto.rivet.pegboard.runner_protocol.ToManager.Ping.toObject(opt_includeInstance, this); +}; + + +/** + * Static version of the {@see toObject} method. + * @param {boolean|undefined} includeInstance Deprecated. Whether to include + * the JSPB instance for transitional soy proto support: + * http://goto/soy-param-migration + * @param {!proto.rivet.pegboard.runner_protocol.ToManager.Ping} msg The msg instance to transform. + * @return {!Object} + * @suppress {unusedLocalVariables} f is only used for nested messages + */ +proto.rivet.pegboard.runner_protocol.ToManager.Ping.toObject = function(includeInstance, msg) { + var f, obj = { + + }; + + if (includeInstance) { + obj.$jspbMessageInstance = msg; + } + return obj; +}; +} + + +/** + * Deserializes binary data (in protobuf wire format). + * @param {jspb.ByteSource} bytes The bytes to deserialize. + * @return {!proto.rivet.pegboard.runner_protocol.ToManager.Ping} + */ +proto.rivet.pegboard.runner_protocol.ToManager.Ping.deserializeBinary = function(bytes) { + var reader = new jspb.BinaryReader(bytes); + var msg = new proto.rivet.pegboard.runner_protocol.ToManager.Ping; + return proto.rivet.pegboard.runner_protocol.ToManager.Ping.deserializeBinaryFromReader(msg, reader); +}; + + +/** + * Deserializes binary data (in protobuf wire format) from the + * given reader into the given message object. + * @param {!proto.rivet.pegboard.runner_protocol.ToManager.Ping} msg The message object to deserialize into. + * @param {!jspb.BinaryReader} reader The BinaryReader to use. + * @return {!proto.rivet.pegboard.runner_protocol.ToManager.Ping} + */ +proto.rivet.pegboard.runner_protocol.ToManager.Ping.deserializeBinaryFromReader = function(msg, reader) { + while (reader.nextField()) { + if (reader.isEndGroup()) { + break; + } + var field = reader.getFieldNumber(); + switch (field) { + default: + reader.skipField(); + break; + } + } + return msg; +}; + + +/** + * Serializes the message to binary data (in protobuf wire format). + * @return {!Uint8Array} + */ +proto.rivet.pegboard.runner_protocol.ToManager.Ping.prototype.serializeBinary = function() { + var writer = new jspb.BinaryWriter(); + proto.rivet.pegboard.runner_protocol.ToManager.Ping.serializeBinaryToWriter(this, writer); + return writer.getResultBuffer(); +}; + + +/** + * Serializes the given message to binary data (in protobuf wire + * format), writing to the given BinaryWriter. + * @param {!proto.rivet.pegboard.runner_protocol.ToManager.Ping} message + * @param {!jspb.BinaryWriter} writer + * @suppress {unusedLocalVariables} f is only used for nested messages + */ +proto.rivet.pegboard.runner_protocol.ToManager.Ping.serializeBinaryToWriter = function(message, writer) { + var f = undefined; +}; + + +/** + * optional ActorStateUpdate actor_state_update = 1; + * @return {?proto.rivet.pegboard.runner_protocol.ToManager.ActorStateUpdate} + */ +proto.rivet.pegboard.runner_protocol.ToManager.prototype.getActorStateUpdate = function() { + return /** @type{?proto.rivet.pegboard.runner_protocol.ToManager.ActorStateUpdate} */ ( + jspb.Message.getWrapperField(this, proto.rivet.pegboard.runner_protocol.ToManager.ActorStateUpdate, 1)); +}; + + +/** + * @param {?proto.rivet.pegboard.runner_protocol.ToManager.ActorStateUpdate|undefined} value + * @return {!proto.rivet.pegboard.runner_protocol.ToManager} returns this +*/ +proto.rivet.pegboard.runner_protocol.ToManager.prototype.setActorStateUpdate = function(value) { + return jspb.Message.setOneofWrapperField(this, 1, proto.rivet.pegboard.runner_protocol.ToManager.oneofGroups_[0], value); +}; + + +/** + * Clears the message field making it undefined. + * @return {!proto.rivet.pegboard.runner_protocol.ToManager} returns this + */ +proto.rivet.pegboard.runner_protocol.ToManager.prototype.clearActorStateUpdate = function() { + return this.setActorStateUpdate(undefined); +}; + + +/** + * Returns whether this field is set. + * @return {boolean} + */ +proto.rivet.pegboard.runner_protocol.ToManager.prototype.hasActorStateUpdate = function() { + return jspb.Message.getField(this, 1) != null; +}; + + +/** + * optional Ping ping = 2; + * @return {?proto.rivet.pegboard.runner_protocol.ToManager.Ping} + */ +proto.rivet.pegboard.runner_protocol.ToManager.prototype.getPing = function() { + return /** @type{?proto.rivet.pegboard.runner_protocol.ToManager.Ping} */ ( + jspb.Message.getWrapperField(this, proto.rivet.pegboard.runner_protocol.ToManager.Ping, 2)); +}; + + +/** + * @param {?proto.rivet.pegboard.runner_protocol.ToManager.Ping|undefined} value + * @return {!proto.rivet.pegboard.runner_protocol.ToManager} returns this +*/ +proto.rivet.pegboard.runner_protocol.ToManager.prototype.setPing = function(value) { + return jspb.Message.setOneofWrapperField(this, 2, proto.rivet.pegboard.runner_protocol.ToManager.oneofGroups_[0], value); +}; + + +/** + * Clears the message field making it undefined. + * @return {!proto.rivet.pegboard.runner_protocol.ToManager} returns this + */ +proto.rivet.pegboard.runner_protocol.ToManager.prototype.clearPing = function() { + return this.setPing(undefined); +}; + + +/** + * Returns whether this field is set. + * @return {boolean} + */ +proto.rivet.pegboard.runner_protocol.ToManager.prototype.hasPing = function() { + return jspb.Message.getField(this, 2) != null; +}; + + +/** + * optional rivet.pegboard.kv.Request kv = 3; + * @return {?proto.rivet.pegboard.kv.Request} + */ +proto.rivet.pegboard.runner_protocol.ToManager.prototype.getKv = function() { + return /** @type{?proto.rivet.pegboard.kv.Request} */ ( + jspb.Message.getWrapperField(this, kv_pb.Request, 3)); +}; + + +/** + * @param {?proto.rivet.pegboard.kv.Request|undefined} value + * @return {!proto.rivet.pegboard.runner_protocol.ToManager} returns this +*/ +proto.rivet.pegboard.runner_protocol.ToManager.prototype.setKv = function(value) { + return jspb.Message.setOneofWrapperField(this, 3, proto.rivet.pegboard.runner_protocol.ToManager.oneofGroups_[0], value); +}; + + +/** + * Clears the message field making it undefined. + * @return {!proto.rivet.pegboard.runner_protocol.ToManager} returns this + */ +proto.rivet.pegboard.runner_protocol.ToManager.prototype.clearKv = function() { + return this.setKv(undefined); +}; + + +/** + * Returns whether this field is set. + * @return {boolean} + */ +proto.rivet.pegboard.runner_protocol.ToManager.prototype.hasKv = function() { + return jspb.Message.getField(this, 3) != null; +}; + + + +/** + * Oneof group definitions for this message. Each group defines the field + * numbers belonging to that group. When of these fields' value is set, all + * other fields in the group are cleared. During deserialization, if multiple + * fields are encountered for a group, only the last value seen will be kept. + * @private {!Array>} + * @const + */ +proto.rivet.pegboard.runner_protocol.ToRunner.oneofGroups_ = [[1,2,3,4,5,6]]; + +/** + * @enum {number} + */ +proto.rivet.pegboard.runner_protocol.ToRunner.MessageCase = { + MESSAGE_NOT_SET: 0, + INIT: 1, + PONG: 2, + CLOSE: 3, + START_ACTOR: 4, + SIGNAL_ACTOR: 5, + KV: 6 +}; + +/** + * @return {proto.rivet.pegboard.runner_protocol.ToRunner.MessageCase} + */ +proto.rivet.pegboard.runner_protocol.ToRunner.prototype.getMessageCase = function() { + return /** @type {proto.rivet.pegboard.runner_protocol.ToRunner.MessageCase} */(jspb.Message.computeOneofCase(this, proto.rivet.pegboard.runner_protocol.ToRunner.oneofGroups_[0])); +}; + + + +if (jspb.Message.GENERATE_TO_OBJECT) { +/** + * Creates an object representation of this proto. + * Field names that are reserved in JavaScript and will be renamed to pb_name. + * Optional fields that are not set will be set to undefined. + * To access a reserved field use, foo.pb_, eg, foo.pb_default. + * For the list of reserved names please see: + * net/proto2/compiler/js/internal/generator.cc#kKeyword. + * @param {boolean=} opt_includeInstance Deprecated. whether to include the + * JSPB instance for transitional soy proto support: + * http://goto/soy-param-migration + * @return {!Object} + */ +proto.rivet.pegboard.runner_protocol.ToRunner.prototype.toObject = function(opt_includeInstance) { + return proto.rivet.pegboard.runner_protocol.ToRunner.toObject(opt_includeInstance, this); +}; + + +/** + * Static version of the {@see toObject} method. + * @param {boolean|undefined} includeInstance Deprecated. Whether to include + * the JSPB instance for transitional soy proto support: + * http://goto/soy-param-migration + * @param {!proto.rivet.pegboard.runner_protocol.ToRunner} msg The msg instance to transform. + * @return {!Object} + * @suppress {unusedLocalVariables} f is only used for nested messages + */ +proto.rivet.pegboard.runner_protocol.ToRunner.toObject = function(includeInstance, msg) { + var f, obj = { +init: (f = msg.getInit()) && proto.rivet.pegboard.runner_protocol.ToRunner.Init.toObject(includeInstance, f), +pong: (f = msg.getPong()) && proto.rivet.pegboard.runner_protocol.ToRunner.Pong.toObject(includeInstance, f), +close: (f = msg.getClose()) && proto.rivet.pegboard.runner_protocol.ToRunner.Close.toObject(includeInstance, f), +startActor: (f = msg.getStartActor()) && proto.rivet.pegboard.runner_protocol.ToRunner.StartActor.toObject(includeInstance, f), +signalActor: (f = msg.getSignalActor()) && proto.rivet.pegboard.runner_protocol.ToRunner.SignalActor.toObject(includeInstance, f), +kv: (f = msg.getKv()) && kv_pb.Response.toObject(includeInstance, f) + }; + + if (includeInstance) { + obj.$jspbMessageInstance = msg; + } + return obj; +}; +} + + +/** + * Deserializes binary data (in protobuf wire format). + * @param {jspb.ByteSource} bytes The bytes to deserialize. + * @return {!proto.rivet.pegboard.runner_protocol.ToRunner} + */ +proto.rivet.pegboard.runner_protocol.ToRunner.deserializeBinary = function(bytes) { + var reader = new jspb.BinaryReader(bytes); + var msg = new proto.rivet.pegboard.runner_protocol.ToRunner; + return proto.rivet.pegboard.runner_protocol.ToRunner.deserializeBinaryFromReader(msg, reader); +}; + + +/** + * Deserializes binary data (in protobuf wire format) from the + * given reader into the given message object. + * @param {!proto.rivet.pegboard.runner_protocol.ToRunner} msg The message object to deserialize into. + * @param {!jspb.BinaryReader} reader The BinaryReader to use. + * @return {!proto.rivet.pegboard.runner_protocol.ToRunner} + */ +proto.rivet.pegboard.runner_protocol.ToRunner.deserializeBinaryFromReader = function(msg, reader) { + while (reader.nextField()) { + if (reader.isEndGroup()) { + break; + } + var field = reader.getFieldNumber(); + switch (field) { + case 1: + var value = new proto.rivet.pegboard.runner_protocol.ToRunner.Init; + reader.readMessage(value,proto.rivet.pegboard.runner_protocol.ToRunner.Init.deserializeBinaryFromReader); + msg.setInit(value); + break; + case 2: + var value = new proto.rivet.pegboard.runner_protocol.ToRunner.Pong; + reader.readMessage(value,proto.rivet.pegboard.runner_protocol.ToRunner.Pong.deserializeBinaryFromReader); + msg.setPong(value); + break; + case 3: + var value = new proto.rivet.pegboard.runner_protocol.ToRunner.Close; + reader.readMessage(value,proto.rivet.pegboard.runner_protocol.ToRunner.Close.deserializeBinaryFromReader); + msg.setClose(value); + break; + case 4: + var value = new proto.rivet.pegboard.runner_protocol.ToRunner.StartActor; + reader.readMessage(value,proto.rivet.pegboard.runner_protocol.ToRunner.StartActor.deserializeBinaryFromReader); + msg.setStartActor(value); + break; + case 5: + var value = new proto.rivet.pegboard.runner_protocol.ToRunner.SignalActor; + reader.readMessage(value,proto.rivet.pegboard.runner_protocol.ToRunner.SignalActor.deserializeBinaryFromReader); + msg.setSignalActor(value); + break; + case 6: + var value = new kv_pb.Response; + reader.readMessage(value,kv_pb.Response.deserializeBinaryFromReader); + msg.setKv(value); + break; + default: + reader.skipField(); + break; + } + } + return msg; +}; + + +/** + * Serializes the message to binary data (in protobuf wire format). + * @return {!Uint8Array} + */ +proto.rivet.pegboard.runner_protocol.ToRunner.prototype.serializeBinary = function() { + var writer = new jspb.BinaryWriter(); + proto.rivet.pegboard.runner_protocol.ToRunner.serializeBinaryToWriter(this, writer); + return writer.getResultBuffer(); +}; + + +/** + * Serializes the given message to binary data (in protobuf wire + * format), writing to the given BinaryWriter. + * @param {!proto.rivet.pegboard.runner_protocol.ToRunner} message + * @param {!jspb.BinaryWriter} writer + * @suppress {unusedLocalVariables} f is only used for nested messages + */ +proto.rivet.pegboard.runner_protocol.ToRunner.serializeBinaryToWriter = function(message, writer) { + var f = undefined; + f = message.getInit(); + if (f != null) { + writer.writeMessage( + 1, + f, + proto.rivet.pegboard.runner_protocol.ToRunner.Init.serializeBinaryToWriter + ); + } + f = message.getPong(); + if (f != null) { + writer.writeMessage( + 2, + f, + proto.rivet.pegboard.runner_protocol.ToRunner.Pong.serializeBinaryToWriter + ); + } + f = message.getClose(); + if (f != null) { + writer.writeMessage( + 3, + f, + proto.rivet.pegboard.runner_protocol.ToRunner.Close.serializeBinaryToWriter + ); + } + f = message.getStartActor(); + if (f != null) { + writer.writeMessage( + 4, + f, + proto.rivet.pegboard.runner_protocol.ToRunner.StartActor.serializeBinaryToWriter + ); + } + f = message.getSignalActor(); + if (f != null) { + writer.writeMessage( + 5, + f, + proto.rivet.pegboard.runner_protocol.ToRunner.SignalActor.serializeBinaryToWriter + ); + } + f = message.getKv(); + if (f != null) { + writer.writeMessage( + 6, + f, + kv_pb.Response.serializeBinaryToWriter + ); + } +}; + + + + + +if (jspb.Message.GENERATE_TO_OBJECT) { +/** + * Creates an object representation of this proto. + * Field names that are reserved in JavaScript and will be renamed to pb_name. + * Optional fields that are not set will be set to undefined. + * To access a reserved field use, foo.pb_, eg, foo.pb_default. + * For the list of reserved names please see: + * net/proto2/compiler/js/internal/generator.cc#kKeyword. + * @param {boolean=} opt_includeInstance Deprecated. whether to include the + * JSPB instance for transitional soy proto support: + * http://goto/soy-param-migration + * @return {!Object} + */ +proto.rivet.pegboard.runner_protocol.ToRunner.Init.prototype.toObject = function(opt_includeInstance) { + return proto.rivet.pegboard.runner_protocol.ToRunner.Init.toObject(opt_includeInstance, this); +}; + + +/** + * Static version of the {@see toObject} method. + * @param {boolean|undefined} includeInstance Deprecated. Whether to include + * the JSPB instance for transitional soy proto support: + * http://goto/soy-param-migration + * @param {!proto.rivet.pegboard.runner_protocol.ToRunner.Init} msg The msg instance to transform. + * @return {!Object} + * @suppress {unusedLocalVariables} f is only used for nested messages + */ +proto.rivet.pegboard.runner_protocol.ToRunner.Init.toObject = function(includeInstance, msg) { + var f, obj = { +input: msg.getInput_asB64() + }; + + if (includeInstance) { + obj.$jspbMessageInstance = msg; + } + return obj; +}; +} + + +/** + * Deserializes binary data (in protobuf wire format). + * @param {jspb.ByteSource} bytes The bytes to deserialize. + * @return {!proto.rivet.pegboard.runner_protocol.ToRunner.Init} + */ +proto.rivet.pegboard.runner_protocol.ToRunner.Init.deserializeBinary = function(bytes) { + var reader = new jspb.BinaryReader(bytes); + var msg = new proto.rivet.pegboard.runner_protocol.ToRunner.Init; + return proto.rivet.pegboard.runner_protocol.ToRunner.Init.deserializeBinaryFromReader(msg, reader); +}; + + +/** + * Deserializes binary data (in protobuf wire format) from the + * given reader into the given message object. + * @param {!proto.rivet.pegboard.runner_protocol.ToRunner.Init} msg The message object to deserialize into. + * @param {!jspb.BinaryReader} reader The BinaryReader to use. + * @return {!proto.rivet.pegboard.runner_protocol.ToRunner.Init} + */ +proto.rivet.pegboard.runner_protocol.ToRunner.Init.deserializeBinaryFromReader = function(msg, reader) { + while (reader.nextField()) { + if (reader.isEndGroup()) { + break; + } + var field = reader.getFieldNumber(); + switch (field) { + case 1: + var value = /** @type {!Uint8Array} */ (reader.readBytes()); + msg.setInput(value); + break; + default: + reader.skipField(); + break; + } + } + return msg; +}; + + +/** + * Serializes the message to binary data (in protobuf wire format). + * @return {!Uint8Array} + */ +proto.rivet.pegboard.runner_protocol.ToRunner.Init.prototype.serializeBinary = function() { + var writer = new jspb.BinaryWriter(); + proto.rivet.pegboard.runner_protocol.ToRunner.Init.serializeBinaryToWriter(this, writer); + return writer.getResultBuffer(); +}; + + +/** + * Serializes the given message to binary data (in protobuf wire + * format), writing to the given BinaryWriter. + * @param {!proto.rivet.pegboard.runner_protocol.ToRunner.Init} message + * @param {!jspb.BinaryWriter} writer + * @suppress {unusedLocalVariables} f is only used for nested messages + */ +proto.rivet.pegboard.runner_protocol.ToRunner.Init.serializeBinaryToWriter = function(message, writer) { + var f = undefined; + f = message.getInput_asU8(); + if (f.length > 0) { + writer.writeBytes( + 1, + f + ); + } +}; + + +/** + * optional bytes input = 1; + * @return {string} + */ +proto.rivet.pegboard.runner_protocol.ToRunner.Init.prototype.getInput = function() { + return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, "")); +}; + + +/** + * optional bytes input = 1; + * This is a type-conversion wrapper around `getInput()` + * @return {string} + */ +proto.rivet.pegboard.runner_protocol.ToRunner.Init.prototype.getInput_asB64 = function() { + return /** @type {string} */ (jspb.Message.bytesAsB64( + this.getInput())); +}; + + +/** + * optional bytes input = 1; + * Note that Uint8Array is not supported on all browsers. + * @see http://caniuse.com/Uint8Array + * This is a type-conversion wrapper around `getInput()` + * @return {!Uint8Array} + */ +proto.rivet.pegboard.runner_protocol.ToRunner.Init.prototype.getInput_asU8 = function() { + return /** @type {!Uint8Array} */ (jspb.Message.bytesAsU8( + this.getInput())); +}; + + +/** + * @param {!(string|Uint8Array)} value + * @return {!proto.rivet.pegboard.runner_protocol.ToRunner.Init} returns this + */ +proto.rivet.pegboard.runner_protocol.ToRunner.Init.prototype.setInput = function(value) { + return jspb.Message.setProto3BytesField(this, 1, value); +}; + + + + + +if (jspb.Message.GENERATE_TO_OBJECT) { +/** + * Creates an object representation of this proto. + * Field names that are reserved in JavaScript and will be renamed to pb_name. + * Optional fields that are not set will be set to undefined. + * To access a reserved field use, foo.pb_, eg, foo.pb_default. + * For the list of reserved names please see: + * net/proto2/compiler/js/internal/generator.cc#kKeyword. + * @param {boolean=} opt_includeInstance Deprecated. whether to include the + * JSPB instance for transitional soy proto support: + * http://goto/soy-param-migration + * @return {!Object} + */ +proto.rivet.pegboard.runner_protocol.ToRunner.Pong.prototype.toObject = function(opt_includeInstance) { + return proto.rivet.pegboard.runner_protocol.ToRunner.Pong.toObject(opt_includeInstance, this); +}; + + +/** + * Static version of the {@see toObject} method. + * @param {boolean|undefined} includeInstance Deprecated. Whether to include + * the JSPB instance for transitional soy proto support: + * http://goto/soy-param-migration + * @param {!proto.rivet.pegboard.runner_protocol.ToRunner.Pong} msg The msg instance to transform. + * @return {!Object} + * @suppress {unusedLocalVariables} f is only used for nested messages + */ +proto.rivet.pegboard.runner_protocol.ToRunner.Pong.toObject = function(includeInstance, msg) { + var f, obj = { + + }; + + if (includeInstance) { + obj.$jspbMessageInstance = msg; + } + return obj; +}; +} + + +/** + * Deserializes binary data (in protobuf wire format). + * @param {jspb.ByteSource} bytes The bytes to deserialize. + * @return {!proto.rivet.pegboard.runner_protocol.ToRunner.Pong} + */ +proto.rivet.pegboard.runner_protocol.ToRunner.Pong.deserializeBinary = function(bytes) { + var reader = new jspb.BinaryReader(bytes); + var msg = new proto.rivet.pegboard.runner_protocol.ToRunner.Pong; + return proto.rivet.pegboard.runner_protocol.ToRunner.Pong.deserializeBinaryFromReader(msg, reader); +}; + + +/** + * Deserializes binary data (in protobuf wire format) from the + * given reader into the given message object. + * @param {!proto.rivet.pegboard.runner_protocol.ToRunner.Pong} msg The message object to deserialize into. + * @param {!jspb.BinaryReader} reader The BinaryReader to use. + * @return {!proto.rivet.pegboard.runner_protocol.ToRunner.Pong} + */ +proto.rivet.pegboard.runner_protocol.ToRunner.Pong.deserializeBinaryFromReader = function(msg, reader) { + while (reader.nextField()) { + if (reader.isEndGroup()) { + break; + } + var field = reader.getFieldNumber(); + switch (field) { + default: + reader.skipField(); + break; + } + } + return msg; +}; + + +/** + * Serializes the message to binary data (in protobuf wire format). + * @return {!Uint8Array} + */ +proto.rivet.pegboard.runner_protocol.ToRunner.Pong.prototype.serializeBinary = function() { + var writer = new jspb.BinaryWriter(); + proto.rivet.pegboard.runner_protocol.ToRunner.Pong.serializeBinaryToWriter(this, writer); + return writer.getResultBuffer(); +}; + + +/** + * Serializes the given message to binary data (in protobuf wire + * format), writing to the given BinaryWriter. + * @param {!proto.rivet.pegboard.runner_protocol.ToRunner.Pong} message + * @param {!jspb.BinaryWriter} writer + * @suppress {unusedLocalVariables} f is only used for nested messages + */ +proto.rivet.pegboard.runner_protocol.ToRunner.Pong.serializeBinaryToWriter = function(message, writer) { + var f = undefined; +}; + + + + + +if (jspb.Message.GENERATE_TO_OBJECT) { +/** + * Creates an object representation of this proto. + * Field names that are reserved in JavaScript and will be renamed to pb_name. + * Optional fields that are not set will be set to undefined. + * To access a reserved field use, foo.pb_, eg, foo.pb_default. + * For the list of reserved names please see: + * net/proto2/compiler/js/internal/generator.cc#kKeyword. + * @param {boolean=} opt_includeInstance Deprecated. whether to include the + * JSPB instance for transitional soy proto support: + * http://goto/soy-param-migration + * @return {!Object} + */ +proto.rivet.pegboard.runner_protocol.ToRunner.Close.prototype.toObject = function(opt_includeInstance) { + return proto.rivet.pegboard.runner_protocol.ToRunner.Close.toObject(opt_includeInstance, this); +}; + + +/** + * Static version of the {@see toObject} method. + * @param {boolean|undefined} includeInstance Deprecated. Whether to include + * the JSPB instance for transitional soy proto support: + * http://goto/soy-param-migration + * @param {!proto.rivet.pegboard.runner_protocol.ToRunner.Close} msg The msg instance to transform. + * @return {!Object} + * @suppress {unusedLocalVariables} f is only used for nested messages + */ +proto.rivet.pegboard.runner_protocol.ToRunner.Close.toObject = function(includeInstance, msg) { + var f, obj = { +reason: (f = jspb.Message.getField(msg, 1)) == null ? undefined : f + }; + + if (includeInstance) { + obj.$jspbMessageInstance = msg; + } + return obj; +}; +} + + +/** + * Deserializes binary data (in protobuf wire format). + * @param {jspb.ByteSource} bytes The bytes to deserialize. + * @return {!proto.rivet.pegboard.runner_protocol.ToRunner.Close} + */ +proto.rivet.pegboard.runner_protocol.ToRunner.Close.deserializeBinary = function(bytes) { + var reader = new jspb.BinaryReader(bytes); + var msg = new proto.rivet.pegboard.runner_protocol.ToRunner.Close; + return proto.rivet.pegboard.runner_protocol.ToRunner.Close.deserializeBinaryFromReader(msg, reader); +}; + + +/** + * Deserializes binary data (in protobuf wire format) from the + * given reader into the given message object. + * @param {!proto.rivet.pegboard.runner_protocol.ToRunner.Close} msg The message object to deserialize into. + * @param {!jspb.BinaryReader} reader The BinaryReader to use. + * @return {!proto.rivet.pegboard.runner_protocol.ToRunner.Close} + */ +proto.rivet.pegboard.runner_protocol.ToRunner.Close.deserializeBinaryFromReader = function(msg, reader) { + while (reader.nextField()) { + if (reader.isEndGroup()) { + break; + } + var field = reader.getFieldNumber(); + switch (field) { + case 1: + var value = /** @type {string} */ (reader.readString()); + msg.setReason(value); + break; + default: + reader.skipField(); + break; + } + } + return msg; +}; + + +/** + * Serializes the message to binary data (in protobuf wire format). + * @return {!Uint8Array} + */ +proto.rivet.pegboard.runner_protocol.ToRunner.Close.prototype.serializeBinary = function() { + var writer = new jspb.BinaryWriter(); + proto.rivet.pegboard.runner_protocol.ToRunner.Close.serializeBinaryToWriter(this, writer); + return writer.getResultBuffer(); +}; + + +/** + * Serializes the given message to binary data (in protobuf wire + * format), writing to the given BinaryWriter. + * @param {!proto.rivet.pegboard.runner_protocol.ToRunner.Close} message + * @param {!jspb.BinaryWriter} writer + * @suppress {unusedLocalVariables} f is only used for nested messages + */ +proto.rivet.pegboard.runner_protocol.ToRunner.Close.serializeBinaryToWriter = function(message, writer) { + var f = undefined; + f = /** @type {string} */ (jspb.Message.getField(message, 1)); + if (f != null) { + writer.writeString( + 1, + f + ); + } +}; + + +/** + * optional string reason = 1; + * @return {string} + */ +proto.rivet.pegboard.runner_protocol.ToRunner.Close.prototype.getReason = function() { + return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, "")); +}; + + +/** + * @param {string} value + * @return {!proto.rivet.pegboard.runner_protocol.ToRunner.Close} returns this + */ +proto.rivet.pegboard.runner_protocol.ToRunner.Close.prototype.setReason = function(value) { + return jspb.Message.setField(this, 1, value); +}; + + +/** + * Clears the field making it undefined. + * @return {!proto.rivet.pegboard.runner_protocol.ToRunner.Close} returns this + */ +proto.rivet.pegboard.runner_protocol.ToRunner.Close.prototype.clearReason = function() { + return jspb.Message.setField(this, 1, undefined); +}; + + +/** + * Returns whether this field is set. + * @return {boolean} + */ +proto.rivet.pegboard.runner_protocol.ToRunner.Close.prototype.hasReason = function() { + return jspb.Message.getField(this, 1) != null; +}; + + + + + +if (jspb.Message.GENERATE_TO_OBJECT) { +/** + * Creates an object representation of this proto. + * Field names that are reserved in JavaScript and will be renamed to pb_name. + * Optional fields that are not set will be set to undefined. + * To access a reserved field use, foo.pb_, eg, foo.pb_default. + * For the list of reserved names please see: + * net/proto2/compiler/js/internal/generator.cc#kKeyword. + * @param {boolean=} opt_includeInstance Deprecated. whether to include the + * JSPB instance for transitional soy proto support: + * http://goto/soy-param-migration + * @return {!Object} + */ +proto.rivet.pegboard.runner_protocol.ToRunner.StartActor.prototype.toObject = function(opt_includeInstance) { + return proto.rivet.pegboard.runner_protocol.ToRunner.StartActor.toObject(opt_includeInstance, this); +}; + + +/** + * Static version of the {@see toObject} method. + * @param {boolean|undefined} includeInstance Deprecated. Whether to include + * the JSPB instance for transitional soy proto support: + * http://goto/soy-param-migration + * @param {!proto.rivet.pegboard.runner_protocol.ToRunner.StartActor} msg The msg instance to transform. + * @return {!Object} + * @suppress {unusedLocalVariables} f is only used for nested messages + */ +proto.rivet.pegboard.runner_protocol.ToRunner.StartActor.toObject = function(includeInstance, msg) { + var f, obj = { +actorId: jspb.Message.getFieldWithDefault(msg, 1, ""), +generation: jspb.Message.getFieldWithDefault(msg, 2, 0), +envMap: (f = msg.getEnvMap()) ? f.toObject(includeInstance, undefined) : [], +metadata: (f = msg.getMetadata()) && proto.rivet.pegboard.runner_protocol.ActorMetadata.toObject(includeInstance, f) + }; + + if (includeInstance) { + obj.$jspbMessageInstance = msg; + } + return obj; +}; +} + + +/** + * Deserializes binary data (in protobuf wire format). + * @param {jspb.ByteSource} bytes The bytes to deserialize. + * @return {!proto.rivet.pegboard.runner_protocol.ToRunner.StartActor} + */ +proto.rivet.pegboard.runner_protocol.ToRunner.StartActor.deserializeBinary = function(bytes) { + var reader = new jspb.BinaryReader(bytes); + var msg = new proto.rivet.pegboard.runner_protocol.ToRunner.StartActor; + return proto.rivet.pegboard.runner_protocol.ToRunner.StartActor.deserializeBinaryFromReader(msg, reader); +}; + + +/** + * Deserializes binary data (in protobuf wire format) from the + * given reader into the given message object. + * @param {!proto.rivet.pegboard.runner_protocol.ToRunner.StartActor} msg The message object to deserialize into. + * @param {!jspb.BinaryReader} reader The BinaryReader to use. + * @return {!proto.rivet.pegboard.runner_protocol.ToRunner.StartActor} + */ +proto.rivet.pegboard.runner_protocol.ToRunner.StartActor.deserializeBinaryFromReader = function(msg, reader) { + while (reader.nextField()) { + if (reader.isEndGroup()) { + break; + } + var field = reader.getFieldNumber(); + switch (field) { + case 1: + var value = /** @type {string} */ (reader.readString()); + msg.setActorId(value); + break; + case 2: + var value = /** @type {number} */ (reader.readUint32()); + msg.setGeneration(value); + break; + case 3: + var value = msg.getEnvMap(); + reader.readMessage(value, function(message, reader) { + jspb.Map.deserializeBinary(message, reader, jspb.BinaryReader.prototype.readString, jspb.BinaryReader.prototype.readString, null, "", ""); + }); + break; + case 4: + var value = new proto.rivet.pegboard.runner_protocol.ActorMetadata; + reader.readMessage(value,proto.rivet.pegboard.runner_protocol.ActorMetadata.deserializeBinaryFromReader); + msg.setMetadata(value); + break; + default: + reader.skipField(); + break; + } + } + return msg; +}; + + +/** + * Serializes the message to binary data (in protobuf wire format). + * @return {!Uint8Array} + */ +proto.rivet.pegboard.runner_protocol.ToRunner.StartActor.prototype.serializeBinary = function() { + var writer = new jspb.BinaryWriter(); + proto.rivet.pegboard.runner_protocol.ToRunner.StartActor.serializeBinaryToWriter(this, writer); + return writer.getResultBuffer(); +}; + + +/** + * Serializes the given message to binary data (in protobuf wire + * format), writing to the given BinaryWriter. + * @param {!proto.rivet.pegboard.runner_protocol.ToRunner.StartActor} message + * @param {!jspb.BinaryWriter} writer + * @suppress {unusedLocalVariables} f is only used for nested messages + */ +proto.rivet.pegboard.runner_protocol.ToRunner.StartActor.serializeBinaryToWriter = function(message, writer) { + var f = undefined; + f = message.getActorId(); + if (f.length > 0) { + writer.writeString( + 1, + f + ); + } + f = message.getGeneration(); + if (f !== 0) { + writer.writeUint32( + 2, + f + ); + } + f = message.getEnvMap(true); + if (f && f.getLength() > 0) { + f.serializeBinary(3, writer, jspb.BinaryWriter.prototype.writeString, jspb.BinaryWriter.prototype.writeString); + } + f = message.getMetadata(); + if (f != null) { + writer.writeMessage( + 4, + f, + proto.rivet.pegboard.runner_protocol.ActorMetadata.serializeBinaryToWriter + ); + } +}; + + +/** + * optional string actor_id = 1; + * @return {string} + */ +proto.rivet.pegboard.runner_protocol.ToRunner.StartActor.prototype.getActorId = function() { + return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, "")); +}; + + +/** + * @param {string} value + * @return {!proto.rivet.pegboard.runner_protocol.ToRunner.StartActor} returns this + */ +proto.rivet.pegboard.runner_protocol.ToRunner.StartActor.prototype.setActorId = function(value) { + return jspb.Message.setProto3StringField(this, 1, value); +}; + + +/** + * optional uint32 generation = 2; + * @return {number} + */ +proto.rivet.pegboard.runner_protocol.ToRunner.StartActor.prototype.getGeneration = function() { + return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 2, 0)); +}; + + +/** + * @param {number} value + * @return {!proto.rivet.pegboard.runner_protocol.ToRunner.StartActor} returns this + */ +proto.rivet.pegboard.runner_protocol.ToRunner.StartActor.prototype.setGeneration = function(value) { + return jspb.Message.setProto3IntField(this, 2, value); +}; + + +/** + * map env = 3; + * @param {boolean=} opt_noLazyCreate Do not create the map if + * empty, instead returning `undefined` + * @return {!jspb.Map} + */ +proto.rivet.pegboard.runner_protocol.ToRunner.StartActor.prototype.getEnvMap = function(opt_noLazyCreate) { + return /** @type {!jspb.Map} */ ( + jspb.Message.getMapField(this, 3, opt_noLazyCreate, + null)); +}; + + +/** + * Clears values from the map. The map will be non-null. + * @return {!proto.rivet.pegboard.runner_protocol.ToRunner.StartActor} returns this + */ +proto.rivet.pegboard.runner_protocol.ToRunner.StartActor.prototype.clearEnvMap = function() { + this.getEnvMap().clear(); + return this; +}; + + +/** + * optional ActorMetadata metadata = 4; + * @return {?proto.rivet.pegboard.runner_protocol.ActorMetadata} + */ +proto.rivet.pegboard.runner_protocol.ToRunner.StartActor.prototype.getMetadata = function() { + return /** @type{?proto.rivet.pegboard.runner_protocol.ActorMetadata} */ ( + jspb.Message.getWrapperField(this, proto.rivet.pegboard.runner_protocol.ActorMetadata, 4)); +}; + + +/** + * @param {?proto.rivet.pegboard.runner_protocol.ActorMetadata|undefined} value + * @return {!proto.rivet.pegboard.runner_protocol.ToRunner.StartActor} returns this +*/ +proto.rivet.pegboard.runner_protocol.ToRunner.StartActor.prototype.setMetadata = function(value) { + return jspb.Message.setWrapperField(this, 4, value); +}; + + +/** + * Clears the message field making it undefined. + * @return {!proto.rivet.pegboard.runner_protocol.ToRunner.StartActor} returns this + */ +proto.rivet.pegboard.runner_protocol.ToRunner.StartActor.prototype.clearMetadata = function() { + return this.setMetadata(undefined); +}; + + +/** + * Returns whether this field is set. + * @return {boolean} + */ +proto.rivet.pegboard.runner_protocol.ToRunner.StartActor.prototype.hasMetadata = function() { + return jspb.Message.getField(this, 4) != null; +}; + + + + + +if (jspb.Message.GENERATE_TO_OBJECT) { +/** + * Creates an object representation of this proto. + * Field names that are reserved in JavaScript and will be renamed to pb_name. + * Optional fields that are not set will be set to undefined. + * To access a reserved field use, foo.pb_, eg, foo.pb_default. + * For the list of reserved names please see: + * net/proto2/compiler/js/internal/generator.cc#kKeyword. + * @param {boolean=} opt_includeInstance Deprecated. whether to include the + * JSPB instance for transitional soy proto support: + * http://goto/soy-param-migration + * @return {!Object} + */ +proto.rivet.pegboard.runner_protocol.ToRunner.SignalActor.prototype.toObject = function(opt_includeInstance) { + return proto.rivet.pegboard.runner_protocol.ToRunner.SignalActor.toObject(opt_includeInstance, this); +}; + + +/** + * Static version of the {@see toObject} method. + * @param {boolean|undefined} includeInstance Deprecated. Whether to include + * the JSPB instance for transitional soy proto support: + * http://goto/soy-param-migration + * @param {!proto.rivet.pegboard.runner_protocol.ToRunner.SignalActor} msg The msg instance to transform. + * @return {!Object} + * @suppress {unusedLocalVariables} f is only used for nested messages + */ +proto.rivet.pegboard.runner_protocol.ToRunner.SignalActor.toObject = function(includeInstance, msg) { + var f, obj = { +actorId: jspb.Message.getFieldWithDefault(msg, 1, ""), +generation: jspb.Message.getFieldWithDefault(msg, 2, 0), +signal: jspb.Message.getFieldWithDefault(msg, 3, 0), +persistStorage: jspb.Message.getBooleanFieldWithDefault(msg, 4, false) + }; + + if (includeInstance) { + obj.$jspbMessageInstance = msg; + } + return obj; +}; +} + + +/** + * Deserializes binary data (in protobuf wire format). + * @param {jspb.ByteSource} bytes The bytes to deserialize. + * @return {!proto.rivet.pegboard.runner_protocol.ToRunner.SignalActor} + */ +proto.rivet.pegboard.runner_protocol.ToRunner.SignalActor.deserializeBinary = function(bytes) { + var reader = new jspb.BinaryReader(bytes); + var msg = new proto.rivet.pegboard.runner_protocol.ToRunner.SignalActor; + return proto.rivet.pegboard.runner_protocol.ToRunner.SignalActor.deserializeBinaryFromReader(msg, reader); +}; + + +/** + * Deserializes binary data (in protobuf wire format) from the + * given reader into the given message object. + * @param {!proto.rivet.pegboard.runner_protocol.ToRunner.SignalActor} msg The message object to deserialize into. + * @param {!jspb.BinaryReader} reader The BinaryReader to use. + * @return {!proto.rivet.pegboard.runner_protocol.ToRunner.SignalActor} + */ +proto.rivet.pegboard.runner_protocol.ToRunner.SignalActor.deserializeBinaryFromReader = function(msg, reader) { + while (reader.nextField()) { + if (reader.isEndGroup()) { + break; + } + var field = reader.getFieldNumber(); + switch (field) { + case 1: + var value = /** @type {string} */ (reader.readString()); + msg.setActorId(value); + break; + case 2: + var value = /** @type {number} */ (reader.readUint32()); + msg.setGeneration(value); + break; + case 3: + var value = /** @type {number} */ (reader.readInt32()); + msg.setSignal(value); + break; + case 4: + var value = /** @type {boolean} */ (reader.readBool()); + msg.setPersistStorage(value); + break; + default: + reader.skipField(); + break; + } + } + return msg; +}; + + +/** + * Serializes the message to binary data (in protobuf wire format). + * @return {!Uint8Array} + */ +proto.rivet.pegboard.runner_protocol.ToRunner.SignalActor.prototype.serializeBinary = function() { + var writer = new jspb.BinaryWriter(); + proto.rivet.pegboard.runner_protocol.ToRunner.SignalActor.serializeBinaryToWriter(this, writer); + return writer.getResultBuffer(); +}; + + +/** + * Serializes the given message to binary data (in protobuf wire + * format), writing to the given BinaryWriter. + * @param {!proto.rivet.pegboard.runner_protocol.ToRunner.SignalActor} message + * @param {!jspb.BinaryWriter} writer + * @suppress {unusedLocalVariables} f is only used for nested messages + */ +proto.rivet.pegboard.runner_protocol.ToRunner.SignalActor.serializeBinaryToWriter = function(message, writer) { + var f = undefined; + f = message.getActorId(); + if (f.length > 0) { + writer.writeString( + 1, + f + ); + } + f = message.getGeneration(); + if (f !== 0) { + writer.writeUint32( + 2, + f + ); + } + f = message.getSignal(); + if (f !== 0) { + writer.writeInt32( + 3, + f + ); + } + f = message.getPersistStorage(); + if (f) { + writer.writeBool( + 4, + f + ); + } +}; + + +/** + * optional string actor_id = 1; + * @return {string} + */ +proto.rivet.pegboard.runner_protocol.ToRunner.SignalActor.prototype.getActorId = function() { + return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, "")); +}; + + +/** + * @param {string} value + * @return {!proto.rivet.pegboard.runner_protocol.ToRunner.SignalActor} returns this + */ +proto.rivet.pegboard.runner_protocol.ToRunner.SignalActor.prototype.setActorId = function(value) { + return jspb.Message.setProto3StringField(this, 1, value); +}; + + +/** + * optional uint32 generation = 2; + * @return {number} + */ +proto.rivet.pegboard.runner_protocol.ToRunner.SignalActor.prototype.getGeneration = function() { + return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 2, 0)); +}; + + +/** + * @param {number} value + * @return {!proto.rivet.pegboard.runner_protocol.ToRunner.SignalActor} returns this + */ +proto.rivet.pegboard.runner_protocol.ToRunner.SignalActor.prototype.setGeneration = function(value) { + return jspb.Message.setProto3IntField(this, 2, value); +}; + + +/** + * optional int32 signal = 3; + * @return {number} + */ +proto.rivet.pegboard.runner_protocol.ToRunner.SignalActor.prototype.getSignal = function() { + return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 3, 0)); +}; + + +/** + * @param {number} value + * @return {!proto.rivet.pegboard.runner_protocol.ToRunner.SignalActor} returns this + */ +proto.rivet.pegboard.runner_protocol.ToRunner.SignalActor.prototype.setSignal = function(value) { + return jspb.Message.setProto3IntField(this, 3, value); +}; + + +/** + * optional bool persist_storage = 4; + * @return {boolean} + */ +proto.rivet.pegboard.runner_protocol.ToRunner.SignalActor.prototype.getPersistStorage = function() { + return /** @type {boolean} */ (jspb.Message.getBooleanFieldWithDefault(this, 4, false)); +}; + + +/** + * @param {boolean} value + * @return {!proto.rivet.pegboard.runner_protocol.ToRunner.SignalActor} returns this + */ +proto.rivet.pegboard.runner_protocol.ToRunner.SignalActor.prototype.setPersistStorage = function(value) { + return jspb.Message.setProto3BooleanField(this, 4, value); +}; + + +/** + * optional Init init = 1; + * @return {?proto.rivet.pegboard.runner_protocol.ToRunner.Init} + */ +proto.rivet.pegboard.runner_protocol.ToRunner.prototype.getInit = function() { + return /** @type{?proto.rivet.pegboard.runner_protocol.ToRunner.Init} */ ( + jspb.Message.getWrapperField(this, proto.rivet.pegboard.runner_protocol.ToRunner.Init, 1)); +}; + + +/** + * @param {?proto.rivet.pegboard.runner_protocol.ToRunner.Init|undefined} value + * @return {!proto.rivet.pegboard.runner_protocol.ToRunner} returns this +*/ +proto.rivet.pegboard.runner_protocol.ToRunner.prototype.setInit = function(value) { + return jspb.Message.setOneofWrapperField(this, 1, proto.rivet.pegboard.runner_protocol.ToRunner.oneofGroups_[0], value); +}; + + +/** + * Clears the message field making it undefined. + * @return {!proto.rivet.pegboard.runner_protocol.ToRunner} returns this + */ +proto.rivet.pegboard.runner_protocol.ToRunner.prototype.clearInit = function() { + return this.setInit(undefined); +}; + + +/** + * Returns whether this field is set. + * @return {boolean} + */ +proto.rivet.pegboard.runner_protocol.ToRunner.prototype.hasInit = function() { + return jspb.Message.getField(this, 1) != null; +}; + + +/** + * optional Pong pong = 2; + * @return {?proto.rivet.pegboard.runner_protocol.ToRunner.Pong} + */ +proto.rivet.pegboard.runner_protocol.ToRunner.prototype.getPong = function() { + return /** @type{?proto.rivet.pegboard.runner_protocol.ToRunner.Pong} */ ( + jspb.Message.getWrapperField(this, proto.rivet.pegboard.runner_protocol.ToRunner.Pong, 2)); +}; + + +/** + * @param {?proto.rivet.pegboard.runner_protocol.ToRunner.Pong|undefined} value + * @return {!proto.rivet.pegboard.runner_protocol.ToRunner} returns this +*/ +proto.rivet.pegboard.runner_protocol.ToRunner.prototype.setPong = function(value) { + return jspb.Message.setOneofWrapperField(this, 2, proto.rivet.pegboard.runner_protocol.ToRunner.oneofGroups_[0], value); +}; + + +/** + * Clears the message field making it undefined. + * @return {!proto.rivet.pegboard.runner_protocol.ToRunner} returns this + */ +proto.rivet.pegboard.runner_protocol.ToRunner.prototype.clearPong = function() { + return this.setPong(undefined); +}; + + +/** + * Returns whether this field is set. + * @return {boolean} + */ +proto.rivet.pegboard.runner_protocol.ToRunner.prototype.hasPong = function() { + return jspb.Message.getField(this, 2) != null; +}; + + +/** + * optional Close close = 3; + * @return {?proto.rivet.pegboard.runner_protocol.ToRunner.Close} + */ +proto.rivet.pegboard.runner_protocol.ToRunner.prototype.getClose = function() { + return /** @type{?proto.rivet.pegboard.runner_protocol.ToRunner.Close} */ ( + jspb.Message.getWrapperField(this, proto.rivet.pegboard.runner_protocol.ToRunner.Close, 3)); +}; + + +/** + * @param {?proto.rivet.pegboard.runner_protocol.ToRunner.Close|undefined} value + * @return {!proto.rivet.pegboard.runner_protocol.ToRunner} returns this +*/ +proto.rivet.pegboard.runner_protocol.ToRunner.prototype.setClose = function(value) { + return jspb.Message.setOneofWrapperField(this, 3, proto.rivet.pegboard.runner_protocol.ToRunner.oneofGroups_[0], value); +}; + + +/** + * Clears the message field making it undefined. + * @return {!proto.rivet.pegboard.runner_protocol.ToRunner} returns this + */ +proto.rivet.pegboard.runner_protocol.ToRunner.prototype.clearClose = function() { + return this.setClose(undefined); +}; + + +/** + * Returns whether this field is set. + * @return {boolean} + */ +proto.rivet.pegboard.runner_protocol.ToRunner.prototype.hasClose = function() { + return jspb.Message.getField(this, 3) != null; +}; + + +/** + * optional StartActor start_actor = 4; + * @return {?proto.rivet.pegboard.runner_protocol.ToRunner.StartActor} + */ +proto.rivet.pegboard.runner_protocol.ToRunner.prototype.getStartActor = function() { + return /** @type{?proto.rivet.pegboard.runner_protocol.ToRunner.StartActor} */ ( + jspb.Message.getWrapperField(this, proto.rivet.pegboard.runner_protocol.ToRunner.StartActor, 4)); +}; + + +/** + * @param {?proto.rivet.pegboard.runner_protocol.ToRunner.StartActor|undefined} value + * @return {!proto.rivet.pegboard.runner_protocol.ToRunner} returns this +*/ +proto.rivet.pegboard.runner_protocol.ToRunner.prototype.setStartActor = function(value) { + return jspb.Message.setOneofWrapperField(this, 4, proto.rivet.pegboard.runner_protocol.ToRunner.oneofGroups_[0], value); +}; + + +/** + * Clears the message field making it undefined. + * @return {!proto.rivet.pegboard.runner_protocol.ToRunner} returns this + */ +proto.rivet.pegboard.runner_protocol.ToRunner.prototype.clearStartActor = function() { + return this.setStartActor(undefined); +}; + + +/** + * Returns whether this field is set. + * @return {boolean} + */ +proto.rivet.pegboard.runner_protocol.ToRunner.prototype.hasStartActor = function() { + return jspb.Message.getField(this, 4) != null; +}; + + +/** + * optional SignalActor signal_actor = 5; + * @return {?proto.rivet.pegboard.runner_protocol.ToRunner.SignalActor} + */ +proto.rivet.pegboard.runner_protocol.ToRunner.prototype.getSignalActor = function() { + return /** @type{?proto.rivet.pegboard.runner_protocol.ToRunner.SignalActor} */ ( + jspb.Message.getWrapperField(this, proto.rivet.pegboard.runner_protocol.ToRunner.SignalActor, 5)); +}; + + +/** + * @param {?proto.rivet.pegboard.runner_protocol.ToRunner.SignalActor|undefined} value + * @return {!proto.rivet.pegboard.runner_protocol.ToRunner} returns this +*/ +proto.rivet.pegboard.runner_protocol.ToRunner.prototype.setSignalActor = function(value) { + return jspb.Message.setOneofWrapperField(this, 5, proto.rivet.pegboard.runner_protocol.ToRunner.oneofGroups_[0], value); +}; + + +/** + * Clears the message field making it undefined. + * @return {!proto.rivet.pegboard.runner_protocol.ToRunner} returns this + */ +proto.rivet.pegboard.runner_protocol.ToRunner.prototype.clearSignalActor = function() { + return this.setSignalActor(undefined); +}; + + +/** + * Returns whether this field is set. + * @return {boolean} + */ +proto.rivet.pegboard.runner_protocol.ToRunner.prototype.hasSignalActor = function() { + return jspb.Message.getField(this, 5) != null; +}; + + +/** + * optional rivet.pegboard.kv.Response kv = 6; + * @return {?proto.rivet.pegboard.kv.Response} + */ +proto.rivet.pegboard.runner_protocol.ToRunner.prototype.getKv = function() { + return /** @type{?proto.rivet.pegboard.kv.Response} */ ( + jspb.Message.getWrapperField(this, kv_pb.Response, 6)); +}; + + +/** + * @param {?proto.rivet.pegboard.kv.Response|undefined} value + * @return {!proto.rivet.pegboard.runner_protocol.ToRunner} returns this +*/ +proto.rivet.pegboard.runner_protocol.ToRunner.prototype.setKv = function(value) { + return jspb.Message.setOneofWrapperField(this, 6, proto.rivet.pegboard.runner_protocol.ToRunner.oneofGroups_[0], value); +}; + + +/** + * Clears the message field making it undefined. + * @return {!proto.rivet.pegboard.runner_protocol.ToRunner} returns this + */ +proto.rivet.pegboard.runner_protocol.ToRunner.prototype.clearKv = function() { + return this.setKv(undefined); +}; + + +/** + * Returns whether this field is set. + * @return {boolean} + */ +proto.rivet.pegboard.runner_protocol.ToRunner.prototype.hasKv = function() { + return jspb.Message.getField(this, 6) != null; +}; + + + + + +if (jspb.Message.GENERATE_TO_OBJECT) { +/** + * Creates an object representation of this proto. + * Field names that are reserved in JavaScript and will be renamed to pb_name. + * Optional fields that are not set will be set to undefined. + * To access a reserved field use, foo.pb_, eg, foo.pb_default. + * For the list of reserved names please see: + * net/proto2/compiler/js/internal/generator.cc#kKeyword. + * @param {boolean=} opt_includeInstance Deprecated. whether to include the + * JSPB instance for transitional soy proto support: + * http://goto/soy-param-migration + * @return {!Object} + */ +proto.rivet.pegboard.runner_protocol.ActorMetadata.prototype.toObject = function(opt_includeInstance) { + return proto.rivet.pegboard.runner_protocol.ActorMetadata.toObject(opt_includeInstance, this); +}; + + +/** + * Static version of the {@see toObject} method. + * @param {boolean|undefined} includeInstance Deprecated. Whether to include + * the JSPB instance for transitional soy proto support: + * http://goto/soy-param-migration + * @param {!proto.rivet.pegboard.runner_protocol.ActorMetadata} msg The msg instance to transform. + * @return {!Object} + * @suppress {unusedLocalVariables} f is only used for nested messages + */ +proto.rivet.pegboard.runner_protocol.ActorMetadata.toObject = function(includeInstance, msg) { + var f, obj = { +actor: (f = msg.getActor()) && proto.rivet.pegboard.runner_protocol.ActorMetadata.Actor.toObject(includeInstance, f), +network: (f = msg.getNetwork()) && proto.rivet.pegboard.runner_protocol.ActorMetadata.Network.toObject(includeInstance, f), +project: (f = msg.getProject()) && proto.rivet.pegboard.runner_protocol.ActorMetadata.Project.toObject(includeInstance, f), +environment: (f = msg.getEnvironment()) && proto.rivet.pegboard.runner_protocol.ActorMetadata.Environment.toObject(includeInstance, f), +datacenter: (f = msg.getDatacenter()) && proto.rivet.pegboard.runner_protocol.ActorMetadata.Datacenter.toObject(includeInstance, f), +cluster: (f = msg.getCluster()) && proto.rivet.pegboard.runner_protocol.ActorMetadata.Cluster.toObject(includeInstance, f), +build: (f = msg.getBuild()) && proto.rivet.pegboard.runner_protocol.ActorMetadata.Build.toObject(includeInstance, f) + }; + + if (includeInstance) { + obj.$jspbMessageInstance = msg; + } + return obj; +}; +} + + +/** + * Deserializes binary data (in protobuf wire format). + * @param {jspb.ByteSource} bytes The bytes to deserialize. + * @return {!proto.rivet.pegboard.runner_protocol.ActorMetadata} + */ +proto.rivet.pegboard.runner_protocol.ActorMetadata.deserializeBinary = function(bytes) { + var reader = new jspb.BinaryReader(bytes); + var msg = new proto.rivet.pegboard.runner_protocol.ActorMetadata; + return proto.rivet.pegboard.runner_protocol.ActorMetadata.deserializeBinaryFromReader(msg, reader); +}; + + +/** + * Deserializes binary data (in protobuf wire format) from the + * given reader into the given message object. + * @param {!proto.rivet.pegboard.runner_protocol.ActorMetadata} msg The message object to deserialize into. + * @param {!jspb.BinaryReader} reader The BinaryReader to use. + * @return {!proto.rivet.pegboard.runner_protocol.ActorMetadata} + */ +proto.rivet.pegboard.runner_protocol.ActorMetadata.deserializeBinaryFromReader = function(msg, reader) { + while (reader.nextField()) { + if (reader.isEndGroup()) { + break; + } + var field = reader.getFieldNumber(); + switch (field) { + case 1: + var value = new proto.rivet.pegboard.runner_protocol.ActorMetadata.Actor; + reader.readMessage(value,proto.rivet.pegboard.runner_protocol.ActorMetadata.Actor.deserializeBinaryFromReader); + msg.setActor(value); + break; + case 2: + var value = new proto.rivet.pegboard.runner_protocol.ActorMetadata.Network; + reader.readMessage(value,proto.rivet.pegboard.runner_protocol.ActorMetadata.Network.deserializeBinaryFromReader); + msg.setNetwork(value); + break; + case 3: + var value = new proto.rivet.pegboard.runner_protocol.ActorMetadata.Project; + reader.readMessage(value,proto.rivet.pegboard.runner_protocol.ActorMetadata.Project.deserializeBinaryFromReader); + msg.setProject(value); + break; + case 4: + var value = new proto.rivet.pegboard.runner_protocol.ActorMetadata.Environment; + reader.readMessage(value,proto.rivet.pegboard.runner_protocol.ActorMetadata.Environment.deserializeBinaryFromReader); + msg.setEnvironment(value); + break; + case 5: + var value = new proto.rivet.pegboard.runner_protocol.ActorMetadata.Datacenter; + reader.readMessage(value,proto.rivet.pegboard.runner_protocol.ActorMetadata.Datacenter.deserializeBinaryFromReader); + msg.setDatacenter(value); + break; + case 6: + var value = new proto.rivet.pegboard.runner_protocol.ActorMetadata.Cluster; + reader.readMessage(value,proto.rivet.pegboard.runner_protocol.ActorMetadata.Cluster.deserializeBinaryFromReader); + msg.setCluster(value); + break; + case 7: + var value = new proto.rivet.pegboard.runner_protocol.ActorMetadata.Build; + reader.readMessage(value,proto.rivet.pegboard.runner_protocol.ActorMetadata.Build.deserializeBinaryFromReader); + msg.setBuild(value); + break; + default: + reader.skipField(); + break; + } + } + return msg; +}; + + +/** + * Serializes the message to binary data (in protobuf wire format). + * @return {!Uint8Array} + */ +proto.rivet.pegboard.runner_protocol.ActorMetadata.prototype.serializeBinary = function() { + var writer = new jspb.BinaryWriter(); + proto.rivet.pegboard.runner_protocol.ActorMetadata.serializeBinaryToWriter(this, writer); + return writer.getResultBuffer(); +}; + + +/** + * Serializes the given message to binary data (in protobuf wire + * format), writing to the given BinaryWriter. + * @param {!proto.rivet.pegboard.runner_protocol.ActorMetadata} message + * @param {!jspb.BinaryWriter} writer + * @suppress {unusedLocalVariables} f is only used for nested messages + */ +proto.rivet.pegboard.runner_protocol.ActorMetadata.serializeBinaryToWriter = function(message, writer) { + var f = undefined; + f = message.getActor(); + if (f != null) { + writer.writeMessage( + 1, + f, + proto.rivet.pegboard.runner_protocol.ActorMetadata.Actor.serializeBinaryToWriter + ); + } + f = message.getNetwork(); + if (f != null) { + writer.writeMessage( + 2, + f, + proto.rivet.pegboard.runner_protocol.ActorMetadata.Network.serializeBinaryToWriter + ); + } + f = message.getProject(); + if (f != null) { + writer.writeMessage( + 3, + f, + proto.rivet.pegboard.runner_protocol.ActorMetadata.Project.serializeBinaryToWriter + ); + } + f = message.getEnvironment(); + if (f != null) { + writer.writeMessage( + 4, + f, + proto.rivet.pegboard.runner_protocol.ActorMetadata.Environment.serializeBinaryToWriter + ); + } + f = message.getDatacenter(); + if (f != null) { + writer.writeMessage( + 5, + f, + proto.rivet.pegboard.runner_protocol.ActorMetadata.Datacenter.serializeBinaryToWriter + ); + } + f = message.getCluster(); + if (f != null) { + writer.writeMessage( + 6, + f, + proto.rivet.pegboard.runner_protocol.ActorMetadata.Cluster.serializeBinaryToWriter + ); + } + f = message.getBuild(); + if (f != null) { + writer.writeMessage( + 7, + f, + proto.rivet.pegboard.runner_protocol.ActorMetadata.Build.serializeBinaryToWriter + ); + } +}; + + + + + +if (jspb.Message.GENERATE_TO_OBJECT) { +/** + * Creates an object representation of this proto. + * Field names that are reserved in JavaScript and will be renamed to pb_name. + * Optional fields that are not set will be set to undefined. + * To access a reserved field use, foo.pb_, eg, foo.pb_default. + * For the list of reserved names please see: + * net/proto2/compiler/js/internal/generator.cc#kKeyword. + * @param {boolean=} opt_includeInstance Deprecated. whether to include the + * JSPB instance for transitional soy proto support: + * http://goto/soy-param-migration + * @return {!Object} + */ +proto.rivet.pegboard.runner_protocol.ActorMetadata.Actor.prototype.toObject = function(opt_includeInstance) { + return proto.rivet.pegboard.runner_protocol.ActorMetadata.Actor.toObject(opt_includeInstance, this); +}; + + +/** + * Static version of the {@see toObject} method. + * @param {boolean|undefined} includeInstance Deprecated. Whether to include + * the JSPB instance for transitional soy proto support: + * http://goto/soy-param-migration + * @param {!proto.rivet.pegboard.runner_protocol.ActorMetadata.Actor} msg The msg instance to transform. + * @return {!Object} + * @suppress {unusedLocalVariables} f is only used for nested messages + */ +proto.rivet.pegboard.runner_protocol.ActorMetadata.Actor.toObject = function(includeInstance, msg) { + var f, obj = { +actorId: jspb.Message.getFieldWithDefault(msg, 1, ""), +tagsMap: (f = msg.getTagsMap()) ? f.toObject(includeInstance, undefined) : [], +createTs: jspb.Message.getFieldWithDefault(msg, 3, 0) + }; + + if (includeInstance) { + obj.$jspbMessageInstance = msg; + } + return obj; +}; +} + + +/** + * Deserializes binary data (in protobuf wire format). + * @param {jspb.ByteSource} bytes The bytes to deserialize. + * @return {!proto.rivet.pegboard.runner_protocol.ActorMetadata.Actor} + */ +proto.rivet.pegboard.runner_protocol.ActorMetadata.Actor.deserializeBinary = function(bytes) { + var reader = new jspb.BinaryReader(bytes); + var msg = new proto.rivet.pegboard.runner_protocol.ActorMetadata.Actor; + return proto.rivet.pegboard.runner_protocol.ActorMetadata.Actor.deserializeBinaryFromReader(msg, reader); +}; + + +/** + * Deserializes binary data (in protobuf wire format) from the + * given reader into the given message object. + * @param {!proto.rivet.pegboard.runner_protocol.ActorMetadata.Actor} msg The message object to deserialize into. + * @param {!jspb.BinaryReader} reader The BinaryReader to use. + * @return {!proto.rivet.pegboard.runner_protocol.ActorMetadata.Actor} + */ +proto.rivet.pegboard.runner_protocol.ActorMetadata.Actor.deserializeBinaryFromReader = function(msg, reader) { + while (reader.nextField()) { + if (reader.isEndGroup()) { + break; + } + var field = reader.getFieldNumber(); + switch (field) { + case 1: + var value = /** @type {string} */ (reader.readString()); + msg.setActorId(value); + break; + case 2: + var value = msg.getTagsMap(); + reader.readMessage(value, function(message, reader) { + jspb.Map.deserializeBinary(message, reader, jspb.BinaryReader.prototype.readString, jspb.BinaryReader.prototype.readString, null, "", ""); + }); + break; + case 3: + var value = /** @type {number} */ (reader.readInt64()); + msg.setCreateTs(value); + break; + default: + reader.skipField(); + break; + } + } + return msg; +}; + + +/** + * Serializes the message to binary data (in protobuf wire format). + * @return {!Uint8Array} + */ +proto.rivet.pegboard.runner_protocol.ActorMetadata.Actor.prototype.serializeBinary = function() { + var writer = new jspb.BinaryWriter(); + proto.rivet.pegboard.runner_protocol.ActorMetadata.Actor.serializeBinaryToWriter(this, writer); + return writer.getResultBuffer(); +}; + + +/** + * Serializes the given message to binary data (in protobuf wire + * format), writing to the given BinaryWriter. + * @param {!proto.rivet.pegboard.runner_protocol.ActorMetadata.Actor} message + * @param {!jspb.BinaryWriter} writer + * @suppress {unusedLocalVariables} f is only used for nested messages + */ +proto.rivet.pegboard.runner_protocol.ActorMetadata.Actor.serializeBinaryToWriter = function(message, writer) { + var f = undefined; + f = message.getActorId(); + if (f.length > 0) { + writer.writeString( + 1, + f + ); + } + f = message.getTagsMap(true); + if (f && f.getLength() > 0) { + f.serializeBinary(2, writer, jspb.BinaryWriter.prototype.writeString, jspb.BinaryWriter.prototype.writeString); + } + f = message.getCreateTs(); + if (f !== 0) { + writer.writeInt64( + 3, + f + ); + } +}; + + +/** + * optional string actor_id = 1; + * @return {string} + */ +proto.rivet.pegboard.runner_protocol.ActorMetadata.Actor.prototype.getActorId = function() { + return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, "")); +}; + + +/** + * @param {string} value + * @return {!proto.rivet.pegboard.runner_protocol.ActorMetadata.Actor} returns this + */ +proto.rivet.pegboard.runner_protocol.ActorMetadata.Actor.prototype.setActorId = function(value) { + return jspb.Message.setProto3StringField(this, 1, value); +}; + + +/** + * map tags = 2; + * @param {boolean=} opt_noLazyCreate Do not create the map if + * empty, instead returning `undefined` + * @return {!jspb.Map} + */ +proto.rivet.pegboard.runner_protocol.ActorMetadata.Actor.prototype.getTagsMap = function(opt_noLazyCreate) { + return /** @type {!jspb.Map} */ ( + jspb.Message.getMapField(this, 2, opt_noLazyCreate, + null)); +}; + + +/** + * Clears values from the map. The map will be non-null. + * @return {!proto.rivet.pegboard.runner_protocol.ActorMetadata.Actor} returns this + */ +proto.rivet.pegboard.runner_protocol.ActorMetadata.Actor.prototype.clearTagsMap = function() { + this.getTagsMap().clear(); + return this; +}; + + +/** + * optional int64 create_ts = 3; + * @return {number} + */ +proto.rivet.pegboard.runner_protocol.ActorMetadata.Actor.prototype.getCreateTs = function() { + return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 3, 0)); +}; + + +/** + * @param {number} value + * @return {!proto.rivet.pegboard.runner_protocol.ActorMetadata.Actor} returns this + */ +proto.rivet.pegboard.runner_protocol.ActorMetadata.Actor.prototype.setCreateTs = function(value) { + return jspb.Message.setProto3IntField(this, 3, value); +}; + + + + + +if (jspb.Message.GENERATE_TO_OBJECT) { +/** + * Creates an object representation of this proto. + * Field names that are reserved in JavaScript and will be renamed to pb_name. + * Optional fields that are not set will be set to undefined. + * To access a reserved field use, foo.pb_, eg, foo.pb_default. + * For the list of reserved names please see: + * net/proto2/compiler/js/internal/generator.cc#kKeyword. + * @param {boolean=} opt_includeInstance Deprecated. whether to include the + * JSPB instance for transitional soy proto support: + * http://goto/soy-param-migration + * @return {!Object} + */ +proto.rivet.pegboard.runner_protocol.ActorMetadata.Network.prototype.toObject = function(opt_includeInstance) { + return proto.rivet.pegboard.runner_protocol.ActorMetadata.Network.toObject(opt_includeInstance, this); +}; + + +/** + * Static version of the {@see toObject} method. + * @param {boolean|undefined} includeInstance Deprecated. Whether to include + * the JSPB instance for transitional soy proto support: + * http://goto/soy-param-migration + * @param {!proto.rivet.pegboard.runner_protocol.ActorMetadata.Network} msg The msg instance to transform. + * @return {!Object} + * @suppress {unusedLocalVariables} f is only used for nested messages + */ +proto.rivet.pegboard.runner_protocol.ActorMetadata.Network.toObject = function(includeInstance, msg) { + var f, obj = { +portsMap: (f = msg.getPortsMap()) ? f.toObject(includeInstance, proto.rivet.pegboard.runner_protocol.Port.toObject) : [] + }; + + if (includeInstance) { + obj.$jspbMessageInstance = msg; + } + return obj; +}; +} + + +/** + * Deserializes binary data (in protobuf wire format). + * @param {jspb.ByteSource} bytes The bytes to deserialize. + * @return {!proto.rivet.pegboard.runner_protocol.ActorMetadata.Network} + */ +proto.rivet.pegboard.runner_protocol.ActorMetadata.Network.deserializeBinary = function(bytes) { + var reader = new jspb.BinaryReader(bytes); + var msg = new proto.rivet.pegboard.runner_protocol.ActorMetadata.Network; + return proto.rivet.pegboard.runner_protocol.ActorMetadata.Network.deserializeBinaryFromReader(msg, reader); +}; + + +/** + * Deserializes binary data (in protobuf wire format) from the + * given reader into the given message object. + * @param {!proto.rivet.pegboard.runner_protocol.ActorMetadata.Network} msg The message object to deserialize into. + * @param {!jspb.BinaryReader} reader The BinaryReader to use. + * @return {!proto.rivet.pegboard.runner_protocol.ActorMetadata.Network} + */ +proto.rivet.pegboard.runner_protocol.ActorMetadata.Network.deserializeBinaryFromReader = function(msg, reader) { + while (reader.nextField()) { + if (reader.isEndGroup()) { + break; + } + var field = reader.getFieldNumber(); + switch (field) { + case 1: + var value = msg.getPortsMap(); + reader.readMessage(value, function(message, reader) { + jspb.Map.deserializeBinary(message, reader, jspb.BinaryReader.prototype.readString, jspb.BinaryReader.prototype.readMessage, proto.rivet.pegboard.runner_protocol.Port.deserializeBinaryFromReader, "", new proto.rivet.pegboard.runner_protocol.Port()); + }); + break; + default: + reader.skipField(); + break; + } + } + return msg; +}; + + +/** + * Serializes the message to binary data (in protobuf wire format). + * @return {!Uint8Array} + */ +proto.rivet.pegboard.runner_protocol.ActorMetadata.Network.prototype.serializeBinary = function() { + var writer = new jspb.BinaryWriter(); + proto.rivet.pegboard.runner_protocol.ActorMetadata.Network.serializeBinaryToWriter(this, writer); + return writer.getResultBuffer(); +}; + + +/** + * Serializes the given message to binary data (in protobuf wire + * format), writing to the given BinaryWriter. + * @param {!proto.rivet.pegboard.runner_protocol.ActorMetadata.Network} message + * @param {!jspb.BinaryWriter} writer + * @suppress {unusedLocalVariables} f is only used for nested messages + */ +proto.rivet.pegboard.runner_protocol.ActorMetadata.Network.serializeBinaryToWriter = function(message, writer) { + var f = undefined; + f = message.getPortsMap(true); + if (f && f.getLength() > 0) { + f.serializeBinary(1, writer, jspb.BinaryWriter.prototype.writeString, jspb.BinaryWriter.prototype.writeMessage, proto.rivet.pegboard.runner_protocol.Port.serializeBinaryToWriter); + } +}; + + +/** + * map ports = 1; + * @param {boolean=} opt_noLazyCreate Do not create the map if + * empty, instead returning `undefined` + * @return {!jspb.Map} + */ +proto.rivet.pegboard.runner_protocol.ActorMetadata.Network.prototype.getPortsMap = function(opt_noLazyCreate) { + return /** @type {!jspb.Map} */ ( + jspb.Message.getMapField(this, 1, opt_noLazyCreate, + proto.rivet.pegboard.runner_protocol.Port)); +}; + + +/** + * Clears values from the map. The map will be non-null. + * @return {!proto.rivet.pegboard.runner_protocol.ActorMetadata.Network} returns this + */ +proto.rivet.pegboard.runner_protocol.ActorMetadata.Network.prototype.clearPortsMap = function() { + this.getPortsMap().clear(); + return this; +}; + + + + + +if (jspb.Message.GENERATE_TO_OBJECT) { +/** + * Creates an object representation of this proto. + * Field names that are reserved in JavaScript and will be renamed to pb_name. + * Optional fields that are not set will be set to undefined. + * To access a reserved field use, foo.pb_, eg, foo.pb_default. + * For the list of reserved names please see: + * net/proto2/compiler/js/internal/generator.cc#kKeyword. + * @param {boolean=} opt_includeInstance Deprecated. whether to include the + * JSPB instance for transitional soy proto support: + * http://goto/soy-param-migration + * @return {!Object} + */ +proto.rivet.pegboard.runner_protocol.ActorMetadata.Project.prototype.toObject = function(opt_includeInstance) { + return proto.rivet.pegboard.runner_protocol.ActorMetadata.Project.toObject(opt_includeInstance, this); +}; + + +/** + * Static version of the {@see toObject} method. + * @param {boolean|undefined} includeInstance Deprecated. Whether to include + * the JSPB instance for transitional soy proto support: + * http://goto/soy-param-migration + * @param {!proto.rivet.pegboard.runner_protocol.ActorMetadata.Project} msg The msg instance to transform. + * @return {!Object} + * @suppress {unusedLocalVariables} f is only used for nested messages + */ +proto.rivet.pegboard.runner_protocol.ActorMetadata.Project.toObject = function(includeInstance, msg) { + var f, obj = { +projectId: jspb.Message.getFieldWithDefault(msg, 1, ""), +slug: jspb.Message.getFieldWithDefault(msg, 2, "") + }; + + if (includeInstance) { + obj.$jspbMessageInstance = msg; + } + return obj; +}; +} + + +/** + * Deserializes binary data (in protobuf wire format). + * @param {jspb.ByteSource} bytes The bytes to deserialize. + * @return {!proto.rivet.pegboard.runner_protocol.ActorMetadata.Project} + */ +proto.rivet.pegboard.runner_protocol.ActorMetadata.Project.deserializeBinary = function(bytes) { + var reader = new jspb.BinaryReader(bytes); + var msg = new proto.rivet.pegboard.runner_protocol.ActorMetadata.Project; + return proto.rivet.pegboard.runner_protocol.ActorMetadata.Project.deserializeBinaryFromReader(msg, reader); +}; + + +/** + * Deserializes binary data (in protobuf wire format) from the + * given reader into the given message object. + * @param {!proto.rivet.pegboard.runner_protocol.ActorMetadata.Project} msg The message object to deserialize into. + * @param {!jspb.BinaryReader} reader The BinaryReader to use. + * @return {!proto.rivet.pegboard.runner_protocol.ActorMetadata.Project} + */ +proto.rivet.pegboard.runner_protocol.ActorMetadata.Project.deserializeBinaryFromReader = function(msg, reader) { + while (reader.nextField()) { + if (reader.isEndGroup()) { + break; + } + var field = reader.getFieldNumber(); + switch (field) { + case 1: + var value = /** @type {string} */ (reader.readString()); + msg.setProjectId(value); + break; + case 2: + var value = /** @type {string} */ (reader.readString()); + msg.setSlug(value); + break; + default: + reader.skipField(); + break; + } + } + return msg; +}; + + +/** + * Serializes the message to binary data (in protobuf wire format). + * @return {!Uint8Array} + */ +proto.rivet.pegboard.runner_protocol.ActorMetadata.Project.prototype.serializeBinary = function() { + var writer = new jspb.BinaryWriter(); + proto.rivet.pegboard.runner_protocol.ActorMetadata.Project.serializeBinaryToWriter(this, writer); + return writer.getResultBuffer(); +}; + + +/** + * Serializes the given message to binary data (in protobuf wire + * format), writing to the given BinaryWriter. + * @param {!proto.rivet.pegboard.runner_protocol.ActorMetadata.Project} message + * @param {!jspb.BinaryWriter} writer + * @suppress {unusedLocalVariables} f is only used for nested messages + */ +proto.rivet.pegboard.runner_protocol.ActorMetadata.Project.serializeBinaryToWriter = function(message, writer) { + var f = undefined; + f = message.getProjectId(); + if (f.length > 0) { + writer.writeString( + 1, + f + ); + } + f = message.getSlug(); + if (f.length > 0) { + writer.writeString( + 2, + f + ); + } +}; + + +/** + * optional string project_id = 1; + * @return {string} + */ +proto.rivet.pegboard.runner_protocol.ActorMetadata.Project.prototype.getProjectId = function() { + return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, "")); +}; + + +/** + * @param {string} value + * @return {!proto.rivet.pegboard.runner_protocol.ActorMetadata.Project} returns this + */ +proto.rivet.pegboard.runner_protocol.ActorMetadata.Project.prototype.setProjectId = function(value) { + return jspb.Message.setProto3StringField(this, 1, value); +}; + + +/** + * optional string slug = 2; + * @return {string} + */ +proto.rivet.pegboard.runner_protocol.ActorMetadata.Project.prototype.getSlug = function() { + return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 2, "")); +}; + + +/** + * @param {string} value + * @return {!proto.rivet.pegboard.runner_protocol.ActorMetadata.Project} returns this + */ +proto.rivet.pegboard.runner_protocol.ActorMetadata.Project.prototype.setSlug = function(value) { + return jspb.Message.setProto3StringField(this, 2, value); +}; + + + + + +if (jspb.Message.GENERATE_TO_OBJECT) { +/** + * Creates an object representation of this proto. + * Field names that are reserved in JavaScript and will be renamed to pb_name. + * Optional fields that are not set will be set to undefined. + * To access a reserved field use, foo.pb_, eg, foo.pb_default. + * For the list of reserved names please see: + * net/proto2/compiler/js/internal/generator.cc#kKeyword. + * @param {boolean=} opt_includeInstance Deprecated. whether to include the + * JSPB instance for transitional soy proto support: + * http://goto/soy-param-migration + * @return {!Object} + */ +proto.rivet.pegboard.runner_protocol.ActorMetadata.Environment.prototype.toObject = function(opt_includeInstance) { + return proto.rivet.pegboard.runner_protocol.ActorMetadata.Environment.toObject(opt_includeInstance, this); +}; + + +/** + * Static version of the {@see toObject} method. + * @param {boolean|undefined} includeInstance Deprecated. Whether to include + * the JSPB instance for transitional soy proto support: + * http://goto/soy-param-migration + * @param {!proto.rivet.pegboard.runner_protocol.ActorMetadata.Environment} msg The msg instance to transform. + * @return {!Object} + * @suppress {unusedLocalVariables} f is only used for nested messages + */ +proto.rivet.pegboard.runner_protocol.ActorMetadata.Environment.toObject = function(includeInstance, msg) { + var f, obj = { +envId: jspb.Message.getFieldWithDefault(msg, 1, ""), +slug: jspb.Message.getFieldWithDefault(msg, 2, "") + }; + + if (includeInstance) { + obj.$jspbMessageInstance = msg; + } + return obj; +}; +} + + +/** + * Deserializes binary data (in protobuf wire format). + * @param {jspb.ByteSource} bytes The bytes to deserialize. + * @return {!proto.rivet.pegboard.runner_protocol.ActorMetadata.Environment} + */ +proto.rivet.pegboard.runner_protocol.ActorMetadata.Environment.deserializeBinary = function(bytes) { + var reader = new jspb.BinaryReader(bytes); + var msg = new proto.rivet.pegboard.runner_protocol.ActorMetadata.Environment; + return proto.rivet.pegboard.runner_protocol.ActorMetadata.Environment.deserializeBinaryFromReader(msg, reader); +}; + + +/** + * Deserializes binary data (in protobuf wire format) from the + * given reader into the given message object. + * @param {!proto.rivet.pegboard.runner_protocol.ActorMetadata.Environment} msg The message object to deserialize into. + * @param {!jspb.BinaryReader} reader The BinaryReader to use. + * @return {!proto.rivet.pegboard.runner_protocol.ActorMetadata.Environment} + */ +proto.rivet.pegboard.runner_protocol.ActorMetadata.Environment.deserializeBinaryFromReader = function(msg, reader) { + while (reader.nextField()) { + if (reader.isEndGroup()) { + break; + } + var field = reader.getFieldNumber(); + switch (field) { + case 1: + var value = /** @type {string} */ (reader.readString()); + msg.setEnvId(value); + break; + case 2: + var value = /** @type {string} */ (reader.readString()); + msg.setSlug(value); + break; + default: + reader.skipField(); + break; + } + } + return msg; +}; + + +/** + * Serializes the message to binary data (in protobuf wire format). + * @return {!Uint8Array} + */ +proto.rivet.pegboard.runner_protocol.ActorMetadata.Environment.prototype.serializeBinary = function() { + var writer = new jspb.BinaryWriter(); + proto.rivet.pegboard.runner_protocol.ActorMetadata.Environment.serializeBinaryToWriter(this, writer); + return writer.getResultBuffer(); +}; + + +/** + * Serializes the given message to binary data (in protobuf wire + * format), writing to the given BinaryWriter. + * @param {!proto.rivet.pegboard.runner_protocol.ActorMetadata.Environment} message + * @param {!jspb.BinaryWriter} writer + * @suppress {unusedLocalVariables} f is only used for nested messages + */ +proto.rivet.pegboard.runner_protocol.ActorMetadata.Environment.serializeBinaryToWriter = function(message, writer) { + var f = undefined; + f = message.getEnvId(); + if (f.length > 0) { + writer.writeString( + 1, + f + ); + } + f = message.getSlug(); + if (f.length > 0) { + writer.writeString( + 2, + f + ); + } +}; + + +/** + * optional string env_id = 1; + * @return {string} + */ +proto.rivet.pegboard.runner_protocol.ActorMetadata.Environment.prototype.getEnvId = function() { + return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, "")); +}; + + +/** + * @param {string} value + * @return {!proto.rivet.pegboard.runner_protocol.ActorMetadata.Environment} returns this + */ +proto.rivet.pegboard.runner_protocol.ActorMetadata.Environment.prototype.setEnvId = function(value) { + return jspb.Message.setProto3StringField(this, 1, value); +}; + + +/** + * optional string slug = 2; + * @return {string} + */ +proto.rivet.pegboard.runner_protocol.ActorMetadata.Environment.prototype.getSlug = function() { + return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 2, "")); +}; + + +/** + * @param {string} value + * @return {!proto.rivet.pegboard.runner_protocol.ActorMetadata.Environment} returns this + */ +proto.rivet.pegboard.runner_protocol.ActorMetadata.Environment.prototype.setSlug = function(value) { + return jspb.Message.setProto3StringField(this, 2, value); +}; + + + + + +if (jspb.Message.GENERATE_TO_OBJECT) { +/** + * Creates an object representation of this proto. + * Field names that are reserved in JavaScript and will be renamed to pb_name. + * Optional fields that are not set will be set to undefined. + * To access a reserved field use, foo.pb_, eg, foo.pb_default. + * For the list of reserved names please see: + * net/proto2/compiler/js/internal/generator.cc#kKeyword. + * @param {boolean=} opt_includeInstance Deprecated. whether to include the + * JSPB instance for transitional soy proto support: + * http://goto/soy-param-migration + * @return {!Object} + */ +proto.rivet.pegboard.runner_protocol.ActorMetadata.Datacenter.prototype.toObject = function(opt_includeInstance) { + return proto.rivet.pegboard.runner_protocol.ActorMetadata.Datacenter.toObject(opt_includeInstance, this); +}; + + +/** + * Static version of the {@see toObject} method. + * @param {boolean|undefined} includeInstance Deprecated. Whether to include + * the JSPB instance for transitional soy proto support: + * http://goto/soy-param-migration + * @param {!proto.rivet.pegboard.runner_protocol.ActorMetadata.Datacenter} msg The msg instance to transform. + * @return {!Object} + * @suppress {unusedLocalVariables} f is only used for nested messages + */ +proto.rivet.pegboard.runner_protocol.ActorMetadata.Datacenter.toObject = function(includeInstance, msg) { + var f, obj = { +nameId: jspb.Message.getFieldWithDefault(msg, 1, ""), +displayName: jspb.Message.getFieldWithDefault(msg, 2, "") + }; + + if (includeInstance) { + obj.$jspbMessageInstance = msg; + } + return obj; +}; +} + + +/** + * Deserializes binary data (in protobuf wire format). + * @param {jspb.ByteSource} bytes The bytes to deserialize. + * @return {!proto.rivet.pegboard.runner_protocol.ActorMetadata.Datacenter} + */ +proto.rivet.pegboard.runner_protocol.ActorMetadata.Datacenter.deserializeBinary = function(bytes) { + var reader = new jspb.BinaryReader(bytes); + var msg = new proto.rivet.pegboard.runner_protocol.ActorMetadata.Datacenter; + return proto.rivet.pegboard.runner_protocol.ActorMetadata.Datacenter.deserializeBinaryFromReader(msg, reader); +}; + + +/** + * Deserializes binary data (in protobuf wire format) from the + * given reader into the given message object. + * @param {!proto.rivet.pegboard.runner_protocol.ActorMetadata.Datacenter} msg The message object to deserialize into. + * @param {!jspb.BinaryReader} reader The BinaryReader to use. + * @return {!proto.rivet.pegboard.runner_protocol.ActorMetadata.Datacenter} + */ +proto.rivet.pegboard.runner_protocol.ActorMetadata.Datacenter.deserializeBinaryFromReader = function(msg, reader) { + while (reader.nextField()) { + if (reader.isEndGroup()) { + break; + } + var field = reader.getFieldNumber(); + switch (field) { + case 1: + var value = /** @type {string} */ (reader.readString()); + msg.setNameId(value); + break; + case 2: + var value = /** @type {string} */ (reader.readString()); + msg.setDisplayName(value); + break; + default: + reader.skipField(); + break; + } + } + return msg; +}; + + +/** + * Serializes the message to binary data (in protobuf wire format). + * @return {!Uint8Array} + */ +proto.rivet.pegboard.runner_protocol.ActorMetadata.Datacenter.prototype.serializeBinary = function() { + var writer = new jspb.BinaryWriter(); + proto.rivet.pegboard.runner_protocol.ActorMetadata.Datacenter.serializeBinaryToWriter(this, writer); + return writer.getResultBuffer(); +}; + + +/** + * Serializes the given message to binary data (in protobuf wire + * format), writing to the given BinaryWriter. + * @param {!proto.rivet.pegboard.runner_protocol.ActorMetadata.Datacenter} message + * @param {!jspb.BinaryWriter} writer + * @suppress {unusedLocalVariables} f is only used for nested messages + */ +proto.rivet.pegboard.runner_protocol.ActorMetadata.Datacenter.serializeBinaryToWriter = function(message, writer) { + var f = undefined; + f = message.getNameId(); + if (f.length > 0) { + writer.writeString( + 1, + f + ); + } + f = message.getDisplayName(); + if (f.length > 0) { + writer.writeString( + 2, + f + ); + } +}; + + +/** + * optional string name_id = 1; + * @return {string} + */ +proto.rivet.pegboard.runner_protocol.ActorMetadata.Datacenter.prototype.getNameId = function() { + return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, "")); +}; + + +/** + * @param {string} value + * @return {!proto.rivet.pegboard.runner_protocol.ActorMetadata.Datacenter} returns this + */ +proto.rivet.pegboard.runner_protocol.ActorMetadata.Datacenter.prototype.setNameId = function(value) { + return jspb.Message.setProto3StringField(this, 1, value); +}; + + +/** + * optional string display_name = 2; + * @return {string} + */ +proto.rivet.pegboard.runner_protocol.ActorMetadata.Datacenter.prototype.getDisplayName = function() { + return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 2, "")); +}; + + +/** + * @param {string} value + * @return {!proto.rivet.pegboard.runner_protocol.ActorMetadata.Datacenter} returns this + */ +proto.rivet.pegboard.runner_protocol.ActorMetadata.Datacenter.prototype.setDisplayName = function(value) { + return jspb.Message.setProto3StringField(this, 2, value); +}; + + + + + +if (jspb.Message.GENERATE_TO_OBJECT) { +/** + * Creates an object representation of this proto. + * Field names that are reserved in JavaScript and will be renamed to pb_name. + * Optional fields that are not set will be set to undefined. + * To access a reserved field use, foo.pb_, eg, foo.pb_default. + * For the list of reserved names please see: + * net/proto2/compiler/js/internal/generator.cc#kKeyword. + * @param {boolean=} opt_includeInstance Deprecated. whether to include the + * JSPB instance for transitional soy proto support: + * http://goto/soy-param-migration + * @return {!Object} + */ +proto.rivet.pegboard.runner_protocol.ActorMetadata.Cluster.prototype.toObject = function(opt_includeInstance) { + return proto.rivet.pegboard.runner_protocol.ActorMetadata.Cluster.toObject(opt_includeInstance, this); +}; + + +/** + * Static version of the {@see toObject} method. + * @param {boolean|undefined} includeInstance Deprecated. Whether to include + * the JSPB instance for transitional soy proto support: + * http://goto/soy-param-migration + * @param {!proto.rivet.pegboard.runner_protocol.ActorMetadata.Cluster} msg The msg instance to transform. + * @return {!Object} + * @suppress {unusedLocalVariables} f is only used for nested messages + */ +proto.rivet.pegboard.runner_protocol.ActorMetadata.Cluster.toObject = function(includeInstance, msg) { + var f, obj = { +clusterId: jspb.Message.getFieldWithDefault(msg, 1, "") + }; + + if (includeInstance) { + obj.$jspbMessageInstance = msg; + } + return obj; +}; +} + + +/** + * Deserializes binary data (in protobuf wire format). + * @param {jspb.ByteSource} bytes The bytes to deserialize. + * @return {!proto.rivet.pegboard.runner_protocol.ActorMetadata.Cluster} + */ +proto.rivet.pegboard.runner_protocol.ActorMetadata.Cluster.deserializeBinary = function(bytes) { + var reader = new jspb.BinaryReader(bytes); + var msg = new proto.rivet.pegboard.runner_protocol.ActorMetadata.Cluster; + return proto.rivet.pegboard.runner_protocol.ActorMetadata.Cluster.deserializeBinaryFromReader(msg, reader); +}; + + +/** + * Deserializes binary data (in protobuf wire format) from the + * given reader into the given message object. + * @param {!proto.rivet.pegboard.runner_protocol.ActorMetadata.Cluster} msg The message object to deserialize into. + * @param {!jspb.BinaryReader} reader The BinaryReader to use. + * @return {!proto.rivet.pegboard.runner_protocol.ActorMetadata.Cluster} + */ +proto.rivet.pegboard.runner_protocol.ActorMetadata.Cluster.deserializeBinaryFromReader = function(msg, reader) { + while (reader.nextField()) { + if (reader.isEndGroup()) { + break; + } + var field = reader.getFieldNumber(); + switch (field) { + case 1: + var value = /** @type {string} */ (reader.readString()); + msg.setClusterId(value); + break; + default: + reader.skipField(); + break; + } + } + return msg; +}; + + +/** + * Serializes the message to binary data (in protobuf wire format). + * @return {!Uint8Array} + */ +proto.rivet.pegboard.runner_protocol.ActorMetadata.Cluster.prototype.serializeBinary = function() { + var writer = new jspb.BinaryWriter(); + proto.rivet.pegboard.runner_protocol.ActorMetadata.Cluster.serializeBinaryToWriter(this, writer); + return writer.getResultBuffer(); +}; + + +/** + * Serializes the given message to binary data (in protobuf wire + * format), writing to the given BinaryWriter. + * @param {!proto.rivet.pegboard.runner_protocol.ActorMetadata.Cluster} message + * @param {!jspb.BinaryWriter} writer + * @suppress {unusedLocalVariables} f is only used for nested messages + */ +proto.rivet.pegboard.runner_protocol.ActorMetadata.Cluster.serializeBinaryToWriter = function(message, writer) { + var f = undefined; + f = message.getClusterId(); + if (f.length > 0) { + writer.writeString( + 1, + f + ); + } +}; + + +/** + * optional string cluster_id = 1; + * @return {string} + */ +proto.rivet.pegboard.runner_protocol.ActorMetadata.Cluster.prototype.getClusterId = function() { + return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, "")); +}; + + +/** + * @param {string} value + * @return {!proto.rivet.pegboard.runner_protocol.ActorMetadata.Cluster} returns this + */ +proto.rivet.pegboard.runner_protocol.ActorMetadata.Cluster.prototype.setClusterId = function(value) { + return jspb.Message.setProto3StringField(this, 1, value); +}; + + + + + +if (jspb.Message.GENERATE_TO_OBJECT) { +/** + * Creates an object representation of this proto. + * Field names that are reserved in JavaScript and will be renamed to pb_name. + * Optional fields that are not set will be set to undefined. + * To access a reserved field use, foo.pb_, eg, foo.pb_default. + * For the list of reserved names please see: + * net/proto2/compiler/js/internal/generator.cc#kKeyword. + * @param {boolean=} opt_includeInstance Deprecated. whether to include the + * JSPB instance for transitional soy proto support: + * http://goto/soy-param-migration + * @return {!Object} + */ +proto.rivet.pegboard.runner_protocol.ActorMetadata.Build.prototype.toObject = function(opt_includeInstance) { + return proto.rivet.pegboard.runner_protocol.ActorMetadata.Build.toObject(opt_includeInstance, this); +}; + + +/** + * Static version of the {@see toObject} method. + * @param {boolean|undefined} includeInstance Deprecated. Whether to include + * the JSPB instance for transitional soy proto support: + * http://goto/soy-param-migration + * @param {!proto.rivet.pegboard.runner_protocol.ActorMetadata.Build} msg The msg instance to transform. + * @return {!Object} + * @suppress {unusedLocalVariables} f is only used for nested messages + */ +proto.rivet.pegboard.runner_protocol.ActorMetadata.Build.toObject = function(includeInstance, msg) { + var f, obj = { +buildId: jspb.Message.getFieldWithDefault(msg, 1, "") + }; + + if (includeInstance) { + obj.$jspbMessageInstance = msg; + } + return obj; +}; +} + + +/** + * Deserializes binary data (in protobuf wire format). + * @param {jspb.ByteSource} bytes The bytes to deserialize. + * @return {!proto.rivet.pegboard.runner_protocol.ActorMetadata.Build} + */ +proto.rivet.pegboard.runner_protocol.ActorMetadata.Build.deserializeBinary = function(bytes) { + var reader = new jspb.BinaryReader(bytes); + var msg = new proto.rivet.pegboard.runner_protocol.ActorMetadata.Build; + return proto.rivet.pegboard.runner_protocol.ActorMetadata.Build.deserializeBinaryFromReader(msg, reader); +}; + + +/** + * Deserializes binary data (in protobuf wire format) from the + * given reader into the given message object. + * @param {!proto.rivet.pegboard.runner_protocol.ActorMetadata.Build} msg The message object to deserialize into. + * @param {!jspb.BinaryReader} reader The BinaryReader to use. + * @return {!proto.rivet.pegboard.runner_protocol.ActorMetadata.Build} + */ +proto.rivet.pegboard.runner_protocol.ActorMetadata.Build.deserializeBinaryFromReader = function(msg, reader) { + while (reader.nextField()) { + if (reader.isEndGroup()) { + break; + } + var field = reader.getFieldNumber(); + switch (field) { + case 1: + var value = /** @type {string} */ (reader.readString()); + msg.setBuildId(value); + break; + default: + reader.skipField(); + break; + } + } + return msg; +}; + + +/** + * Serializes the message to binary data (in protobuf wire format). + * @return {!Uint8Array} + */ +proto.rivet.pegboard.runner_protocol.ActorMetadata.Build.prototype.serializeBinary = function() { + var writer = new jspb.BinaryWriter(); + proto.rivet.pegboard.runner_protocol.ActorMetadata.Build.serializeBinaryToWriter(this, writer); + return writer.getResultBuffer(); +}; + + +/** + * Serializes the given message to binary data (in protobuf wire + * format), writing to the given BinaryWriter. + * @param {!proto.rivet.pegboard.runner_protocol.ActorMetadata.Build} message + * @param {!jspb.BinaryWriter} writer + * @suppress {unusedLocalVariables} f is only used for nested messages + */ +proto.rivet.pegboard.runner_protocol.ActorMetadata.Build.serializeBinaryToWriter = function(message, writer) { + var f = undefined; + f = message.getBuildId(); + if (f.length > 0) { + writer.writeString( + 1, + f + ); + } +}; + + +/** + * optional string build_id = 1; + * @return {string} + */ +proto.rivet.pegboard.runner_protocol.ActorMetadata.Build.prototype.getBuildId = function() { + return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, "")); +}; + + +/** + * @param {string} value + * @return {!proto.rivet.pegboard.runner_protocol.ActorMetadata.Build} returns this + */ +proto.rivet.pegboard.runner_protocol.ActorMetadata.Build.prototype.setBuildId = function(value) { + return jspb.Message.setProto3StringField(this, 1, value); +}; + + +/** + * optional Actor actor = 1; + * @return {?proto.rivet.pegboard.runner_protocol.ActorMetadata.Actor} + */ +proto.rivet.pegboard.runner_protocol.ActorMetadata.prototype.getActor = function() { + return /** @type{?proto.rivet.pegboard.runner_protocol.ActorMetadata.Actor} */ ( + jspb.Message.getWrapperField(this, proto.rivet.pegboard.runner_protocol.ActorMetadata.Actor, 1)); +}; + + +/** + * @param {?proto.rivet.pegboard.runner_protocol.ActorMetadata.Actor|undefined} value + * @return {!proto.rivet.pegboard.runner_protocol.ActorMetadata} returns this +*/ +proto.rivet.pegboard.runner_protocol.ActorMetadata.prototype.setActor = function(value) { + return jspb.Message.setWrapperField(this, 1, value); +}; + + +/** + * Clears the message field making it undefined. + * @return {!proto.rivet.pegboard.runner_protocol.ActorMetadata} returns this + */ +proto.rivet.pegboard.runner_protocol.ActorMetadata.prototype.clearActor = function() { + return this.setActor(undefined); +}; + + +/** + * Returns whether this field is set. + * @return {boolean} + */ +proto.rivet.pegboard.runner_protocol.ActorMetadata.prototype.hasActor = function() { + return jspb.Message.getField(this, 1) != null; +}; + + +/** + * optional Network network = 2; + * @return {?proto.rivet.pegboard.runner_protocol.ActorMetadata.Network} + */ +proto.rivet.pegboard.runner_protocol.ActorMetadata.prototype.getNetwork = function() { + return /** @type{?proto.rivet.pegboard.runner_protocol.ActorMetadata.Network} */ ( + jspb.Message.getWrapperField(this, proto.rivet.pegboard.runner_protocol.ActorMetadata.Network, 2)); +}; + + +/** + * @param {?proto.rivet.pegboard.runner_protocol.ActorMetadata.Network|undefined} value + * @return {!proto.rivet.pegboard.runner_protocol.ActorMetadata} returns this +*/ +proto.rivet.pegboard.runner_protocol.ActorMetadata.prototype.setNetwork = function(value) { + return jspb.Message.setWrapperField(this, 2, value); +}; + + +/** + * Clears the message field making it undefined. + * @return {!proto.rivet.pegboard.runner_protocol.ActorMetadata} returns this + */ +proto.rivet.pegboard.runner_protocol.ActorMetadata.prototype.clearNetwork = function() { + return this.setNetwork(undefined); +}; + + +/** + * Returns whether this field is set. + * @return {boolean} + */ +proto.rivet.pegboard.runner_protocol.ActorMetadata.prototype.hasNetwork = function() { + return jspb.Message.getField(this, 2) != null; +}; + + +/** + * optional Project project = 3; + * @return {?proto.rivet.pegboard.runner_protocol.ActorMetadata.Project} + */ +proto.rivet.pegboard.runner_protocol.ActorMetadata.prototype.getProject = function() { + return /** @type{?proto.rivet.pegboard.runner_protocol.ActorMetadata.Project} */ ( + jspb.Message.getWrapperField(this, proto.rivet.pegboard.runner_protocol.ActorMetadata.Project, 3)); +}; + + +/** + * @param {?proto.rivet.pegboard.runner_protocol.ActorMetadata.Project|undefined} value + * @return {!proto.rivet.pegboard.runner_protocol.ActorMetadata} returns this +*/ +proto.rivet.pegboard.runner_protocol.ActorMetadata.prototype.setProject = function(value) { + return jspb.Message.setWrapperField(this, 3, value); +}; + + +/** + * Clears the message field making it undefined. + * @return {!proto.rivet.pegboard.runner_protocol.ActorMetadata} returns this + */ +proto.rivet.pegboard.runner_protocol.ActorMetadata.prototype.clearProject = function() { + return this.setProject(undefined); +}; + + +/** + * Returns whether this field is set. + * @return {boolean} + */ +proto.rivet.pegboard.runner_protocol.ActorMetadata.prototype.hasProject = function() { + return jspb.Message.getField(this, 3) != null; +}; + + +/** + * optional Environment environment = 4; + * @return {?proto.rivet.pegboard.runner_protocol.ActorMetadata.Environment} + */ +proto.rivet.pegboard.runner_protocol.ActorMetadata.prototype.getEnvironment = function() { + return /** @type{?proto.rivet.pegboard.runner_protocol.ActorMetadata.Environment} */ ( + jspb.Message.getWrapperField(this, proto.rivet.pegboard.runner_protocol.ActorMetadata.Environment, 4)); +}; + + +/** + * @param {?proto.rivet.pegboard.runner_protocol.ActorMetadata.Environment|undefined} value + * @return {!proto.rivet.pegboard.runner_protocol.ActorMetadata} returns this +*/ +proto.rivet.pegboard.runner_protocol.ActorMetadata.prototype.setEnvironment = function(value) { + return jspb.Message.setWrapperField(this, 4, value); +}; + + +/** + * Clears the message field making it undefined. + * @return {!proto.rivet.pegboard.runner_protocol.ActorMetadata} returns this + */ +proto.rivet.pegboard.runner_protocol.ActorMetadata.prototype.clearEnvironment = function() { + return this.setEnvironment(undefined); +}; + + +/** + * Returns whether this field is set. + * @return {boolean} + */ +proto.rivet.pegboard.runner_protocol.ActorMetadata.prototype.hasEnvironment = function() { + return jspb.Message.getField(this, 4) != null; +}; + + +/** + * optional Datacenter datacenter = 5; + * @return {?proto.rivet.pegboard.runner_protocol.ActorMetadata.Datacenter} + */ +proto.rivet.pegboard.runner_protocol.ActorMetadata.prototype.getDatacenter = function() { + return /** @type{?proto.rivet.pegboard.runner_protocol.ActorMetadata.Datacenter} */ ( + jspb.Message.getWrapperField(this, proto.rivet.pegboard.runner_protocol.ActorMetadata.Datacenter, 5)); +}; + + +/** + * @param {?proto.rivet.pegboard.runner_protocol.ActorMetadata.Datacenter|undefined} value + * @return {!proto.rivet.pegboard.runner_protocol.ActorMetadata} returns this +*/ +proto.rivet.pegboard.runner_protocol.ActorMetadata.prototype.setDatacenter = function(value) { + return jspb.Message.setWrapperField(this, 5, value); +}; + + +/** + * Clears the message field making it undefined. + * @return {!proto.rivet.pegboard.runner_protocol.ActorMetadata} returns this + */ +proto.rivet.pegboard.runner_protocol.ActorMetadata.prototype.clearDatacenter = function() { + return this.setDatacenter(undefined); +}; + + +/** + * Returns whether this field is set. + * @return {boolean} + */ +proto.rivet.pegboard.runner_protocol.ActorMetadata.prototype.hasDatacenter = function() { + return jspb.Message.getField(this, 5) != null; +}; + + +/** + * optional Cluster cluster = 6; + * @return {?proto.rivet.pegboard.runner_protocol.ActorMetadata.Cluster} + */ +proto.rivet.pegboard.runner_protocol.ActorMetadata.prototype.getCluster = function() { + return /** @type{?proto.rivet.pegboard.runner_protocol.ActorMetadata.Cluster} */ ( + jspb.Message.getWrapperField(this, proto.rivet.pegboard.runner_protocol.ActorMetadata.Cluster, 6)); +}; + + +/** + * @param {?proto.rivet.pegboard.runner_protocol.ActorMetadata.Cluster|undefined} value + * @return {!proto.rivet.pegboard.runner_protocol.ActorMetadata} returns this +*/ +proto.rivet.pegboard.runner_protocol.ActorMetadata.prototype.setCluster = function(value) { + return jspb.Message.setWrapperField(this, 6, value); +}; + + +/** + * Clears the message field making it undefined. + * @return {!proto.rivet.pegboard.runner_protocol.ActorMetadata} returns this + */ +proto.rivet.pegboard.runner_protocol.ActorMetadata.prototype.clearCluster = function() { + return this.setCluster(undefined); +}; + + +/** + * Returns whether this field is set. + * @return {boolean} + */ +proto.rivet.pegboard.runner_protocol.ActorMetadata.prototype.hasCluster = function() { + return jspb.Message.getField(this, 6) != null; +}; + + +/** + * optional Build build = 7; + * @return {?proto.rivet.pegboard.runner_protocol.ActorMetadata.Build} + */ +proto.rivet.pegboard.runner_protocol.ActorMetadata.prototype.getBuild = function() { + return /** @type{?proto.rivet.pegboard.runner_protocol.ActorMetadata.Build} */ ( + jspb.Message.getWrapperField(this, proto.rivet.pegboard.runner_protocol.ActorMetadata.Build, 7)); +}; + + +/** + * @param {?proto.rivet.pegboard.runner_protocol.ActorMetadata.Build|undefined} value + * @return {!proto.rivet.pegboard.runner_protocol.ActorMetadata} returns this +*/ +proto.rivet.pegboard.runner_protocol.ActorMetadata.prototype.setBuild = function(value) { + return jspb.Message.setWrapperField(this, 7, value); +}; + + +/** + * Clears the message field making it undefined. + * @return {!proto.rivet.pegboard.runner_protocol.ActorMetadata} returns this + */ +proto.rivet.pegboard.runner_protocol.ActorMetadata.prototype.clearBuild = function() { + return this.setBuild(undefined); +}; + + +/** + * Returns whether this field is set. + * @return {boolean} + */ +proto.rivet.pegboard.runner_protocol.ActorMetadata.prototype.hasBuild = function() { + return jspb.Message.getField(this, 7) != null; +}; + + + + + +if (jspb.Message.GENERATE_TO_OBJECT) { +/** + * Creates an object representation of this proto. + * Field names that are reserved in JavaScript and will be renamed to pb_name. + * Optional fields that are not set will be set to undefined. + * To access a reserved field use, foo.pb_, eg, foo.pb_default. + * For the list of reserved names please see: + * net/proto2/compiler/js/internal/generator.cc#kKeyword. + * @param {boolean=} opt_includeInstance Deprecated. whether to include the + * JSPB instance for transitional soy proto support: + * http://goto/soy-param-migration + * @return {!Object} + */ +proto.rivet.pegboard.runner_protocol.Port.prototype.toObject = function(opt_includeInstance) { + return proto.rivet.pegboard.runner_protocol.Port.toObject(opt_includeInstance, this); +}; + + +/** + * Static version of the {@see toObject} method. + * @param {boolean|undefined} includeInstance Deprecated. Whether to include + * the JSPB instance for transitional soy proto support: + * http://goto/soy-param-migration + * @param {!proto.rivet.pegboard.runner_protocol.Port} msg The msg instance to transform. + * @return {!Object} + * @suppress {unusedLocalVariables} f is only used for nested messages + */ +proto.rivet.pegboard.runner_protocol.Port.toObject = function(includeInstance, msg) { + var f, obj = { +internalPort: (f = jspb.Message.getField(msg, 1)) == null ? undefined : f, +publicHostname: (f = jspb.Message.getField(msg, 2)) == null ? undefined : f, +publicPort: (f = jspb.Message.getField(msg, 3)) == null ? undefined : f, +publicPath: (f = jspb.Message.getField(msg, 4)) == null ? undefined : f, +routing: (f = msg.getRouting()) && proto.rivet.pegboard.runner_protocol.Routing.toObject(includeInstance, f) + }; + + if (includeInstance) { + obj.$jspbMessageInstance = msg; + } + return obj; +}; +} + + +/** + * Deserializes binary data (in protobuf wire format). + * @param {jspb.ByteSource} bytes The bytes to deserialize. + * @return {!proto.rivet.pegboard.runner_protocol.Port} + */ +proto.rivet.pegboard.runner_protocol.Port.deserializeBinary = function(bytes) { + var reader = new jspb.BinaryReader(bytes); + var msg = new proto.rivet.pegboard.runner_protocol.Port; + return proto.rivet.pegboard.runner_protocol.Port.deserializeBinaryFromReader(msg, reader); +}; + + +/** + * Deserializes binary data (in protobuf wire format) from the + * given reader into the given message object. + * @param {!proto.rivet.pegboard.runner_protocol.Port} msg The message object to deserialize into. + * @param {!jspb.BinaryReader} reader The BinaryReader to use. + * @return {!proto.rivet.pegboard.runner_protocol.Port} + */ +proto.rivet.pegboard.runner_protocol.Port.deserializeBinaryFromReader = function(msg, reader) { + while (reader.nextField()) { + if (reader.isEndGroup()) { + break; + } + var field = reader.getFieldNumber(); + switch (field) { + case 1: + var value = /** @type {number} */ (reader.readInt32()); + msg.setInternalPort(value); + break; + case 2: + var value = /** @type {string} */ (reader.readString()); + msg.setPublicHostname(value); + break; + case 3: + var value = /** @type {number} */ (reader.readInt32()); + msg.setPublicPort(value); + break; + case 4: + var value = /** @type {string} */ (reader.readString()); + msg.setPublicPath(value); + break; + case 5: + var value = new proto.rivet.pegboard.runner_protocol.Routing; + reader.readMessage(value,proto.rivet.pegboard.runner_protocol.Routing.deserializeBinaryFromReader); + msg.setRouting(value); + break; + default: + reader.skipField(); + break; + } + } + return msg; +}; + + +/** + * Serializes the message to binary data (in protobuf wire format). + * @return {!Uint8Array} + */ +proto.rivet.pegboard.runner_protocol.Port.prototype.serializeBinary = function() { + var writer = new jspb.BinaryWriter(); + proto.rivet.pegboard.runner_protocol.Port.serializeBinaryToWriter(this, writer); + return writer.getResultBuffer(); +}; + + +/** + * Serializes the given message to binary data (in protobuf wire + * format), writing to the given BinaryWriter. + * @param {!proto.rivet.pegboard.runner_protocol.Port} message + * @param {!jspb.BinaryWriter} writer + * @suppress {unusedLocalVariables} f is only used for nested messages + */ +proto.rivet.pegboard.runner_protocol.Port.serializeBinaryToWriter = function(message, writer) { + var f = undefined; + f = /** @type {number} */ (jspb.Message.getField(message, 1)); + if (f != null) { + writer.writeInt32( + 1, + f + ); + } + f = /** @type {string} */ (jspb.Message.getField(message, 2)); + if (f != null) { + writer.writeString( + 2, + f + ); + } + f = /** @type {number} */ (jspb.Message.getField(message, 3)); + if (f != null) { + writer.writeInt32( + 3, + f + ); + } + f = /** @type {string} */ (jspb.Message.getField(message, 4)); + if (f != null) { + writer.writeString( + 4, + f + ); + } + f = message.getRouting(); + if (f != null) { + writer.writeMessage( + 5, + f, + proto.rivet.pegboard.runner_protocol.Routing.serializeBinaryToWriter + ); + } +}; + + +/** + * optional int32 internal_port = 1; + * @return {number} + */ +proto.rivet.pegboard.runner_protocol.Port.prototype.getInternalPort = function() { + return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 1, 0)); +}; + + +/** + * @param {number} value + * @return {!proto.rivet.pegboard.runner_protocol.Port} returns this + */ +proto.rivet.pegboard.runner_protocol.Port.prototype.setInternalPort = function(value) { + return jspb.Message.setField(this, 1, value); +}; + + +/** + * Clears the field making it undefined. + * @return {!proto.rivet.pegboard.runner_protocol.Port} returns this + */ +proto.rivet.pegboard.runner_protocol.Port.prototype.clearInternalPort = function() { + return jspb.Message.setField(this, 1, undefined); +}; + + +/** + * Returns whether this field is set. + * @return {boolean} + */ +proto.rivet.pegboard.runner_protocol.Port.prototype.hasInternalPort = function() { + return jspb.Message.getField(this, 1) != null; +}; + + +/** + * optional string public_hostname = 2; + * @return {string} + */ +proto.rivet.pegboard.runner_protocol.Port.prototype.getPublicHostname = function() { + return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 2, "")); +}; + + +/** + * @param {string} value + * @return {!proto.rivet.pegboard.runner_protocol.Port} returns this + */ +proto.rivet.pegboard.runner_protocol.Port.prototype.setPublicHostname = function(value) { + return jspb.Message.setField(this, 2, value); +}; + + +/** + * Clears the field making it undefined. + * @return {!proto.rivet.pegboard.runner_protocol.Port} returns this + */ +proto.rivet.pegboard.runner_protocol.Port.prototype.clearPublicHostname = function() { + return jspb.Message.setField(this, 2, undefined); +}; + + +/** + * Returns whether this field is set. + * @return {boolean} + */ +proto.rivet.pegboard.runner_protocol.Port.prototype.hasPublicHostname = function() { + return jspb.Message.getField(this, 2) != null; +}; + + +/** + * optional int32 public_port = 3; + * @return {number} + */ +proto.rivet.pegboard.runner_protocol.Port.prototype.getPublicPort = function() { + return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 3, 0)); +}; + + +/** + * @param {number} value + * @return {!proto.rivet.pegboard.runner_protocol.Port} returns this + */ +proto.rivet.pegboard.runner_protocol.Port.prototype.setPublicPort = function(value) { + return jspb.Message.setField(this, 3, value); +}; + + +/** + * Clears the field making it undefined. + * @return {!proto.rivet.pegboard.runner_protocol.Port} returns this + */ +proto.rivet.pegboard.runner_protocol.Port.prototype.clearPublicPort = function() { + return jspb.Message.setField(this, 3, undefined); +}; + + +/** + * Returns whether this field is set. + * @return {boolean} + */ +proto.rivet.pegboard.runner_protocol.Port.prototype.hasPublicPort = function() { + return jspb.Message.getField(this, 3) != null; +}; + + +/** + * optional string public_path = 4; + * @return {string} + */ +proto.rivet.pegboard.runner_protocol.Port.prototype.getPublicPath = function() { + return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 4, "")); +}; + + +/** + * @param {string} value + * @return {!proto.rivet.pegboard.runner_protocol.Port} returns this + */ +proto.rivet.pegboard.runner_protocol.Port.prototype.setPublicPath = function(value) { + return jspb.Message.setField(this, 4, value); +}; + + +/** + * Clears the field making it undefined. + * @return {!proto.rivet.pegboard.runner_protocol.Port} returns this + */ +proto.rivet.pegboard.runner_protocol.Port.prototype.clearPublicPath = function() { + return jspb.Message.setField(this, 4, undefined); +}; + + +/** + * Returns whether this field is set. + * @return {boolean} + */ +proto.rivet.pegboard.runner_protocol.Port.prototype.hasPublicPath = function() { + return jspb.Message.getField(this, 4) != null; +}; + + +/** + * optional Routing routing = 5; + * @return {?proto.rivet.pegboard.runner_protocol.Routing} + */ +proto.rivet.pegboard.runner_protocol.Port.prototype.getRouting = function() { + return /** @type{?proto.rivet.pegboard.runner_protocol.Routing} */ ( + jspb.Message.getWrapperField(this, proto.rivet.pegboard.runner_protocol.Routing, 5)); +}; + + +/** + * @param {?proto.rivet.pegboard.runner_protocol.Routing|undefined} value + * @return {!proto.rivet.pegboard.runner_protocol.Port} returns this +*/ +proto.rivet.pegboard.runner_protocol.Port.prototype.setRouting = function(value) { + return jspb.Message.setWrapperField(this, 5, value); +}; + + +/** + * Clears the message field making it undefined. + * @return {!proto.rivet.pegboard.runner_protocol.Port} returns this + */ +proto.rivet.pegboard.runner_protocol.Port.prototype.clearRouting = function() { + return this.setRouting(undefined); +}; + + +/** + * Returns whether this field is set. + * @return {boolean} + */ +proto.rivet.pegboard.runner_protocol.Port.prototype.hasRouting = function() { + return jspb.Message.getField(this, 5) != null; +}; + + + +/** + * Oneof group definitions for this message. Each group defines the field + * numbers belonging to that group. When of these fields' value is set, all + * other fields in the group are cleared. During deserialization, if multiple + * fields are encountered for a group, only the last value seen will be kept. + * @private {!Array>} + * @const + */ +proto.rivet.pegboard.runner_protocol.Routing.oneofGroups_ = [[1,2]]; + +/** + * @enum {number} + */ +proto.rivet.pegboard.runner_protocol.Routing.RoutingCase = { + ROUTING_NOT_SET: 0, + GAME_GUARD: 1, + HOST: 2 +}; + +/** + * @return {proto.rivet.pegboard.runner_protocol.Routing.RoutingCase} + */ +proto.rivet.pegboard.runner_protocol.Routing.prototype.getRoutingCase = function() { + return /** @type {proto.rivet.pegboard.runner_protocol.Routing.RoutingCase} */(jspb.Message.computeOneofCase(this, proto.rivet.pegboard.runner_protocol.Routing.oneofGroups_[0])); +}; + + + +if (jspb.Message.GENERATE_TO_OBJECT) { +/** + * Creates an object representation of this proto. + * Field names that are reserved in JavaScript and will be renamed to pb_name. + * Optional fields that are not set will be set to undefined. + * To access a reserved field use, foo.pb_, eg, foo.pb_default. + * For the list of reserved names please see: + * net/proto2/compiler/js/internal/generator.cc#kKeyword. + * @param {boolean=} opt_includeInstance Deprecated. whether to include the + * JSPB instance for transitional soy proto support: + * http://goto/soy-param-migration + * @return {!Object} + */ +proto.rivet.pegboard.runner_protocol.Routing.prototype.toObject = function(opt_includeInstance) { + return proto.rivet.pegboard.runner_protocol.Routing.toObject(opt_includeInstance, this); +}; + + +/** + * Static version of the {@see toObject} method. + * @param {boolean|undefined} includeInstance Deprecated. Whether to include + * the JSPB instance for transitional soy proto support: + * http://goto/soy-param-migration + * @param {!proto.rivet.pegboard.runner_protocol.Routing} msg The msg instance to transform. + * @return {!Object} + * @suppress {unusedLocalVariables} f is only used for nested messages + */ +proto.rivet.pegboard.runner_protocol.Routing.toObject = function(includeInstance, msg) { + var f, obj = { +gameGuard: (f = msg.getGameGuard()) && proto.rivet.pegboard.runner_protocol.Routing.GameGuard.toObject(includeInstance, f), +host: (f = msg.getHost()) && proto.rivet.pegboard.runner_protocol.Routing.Host.toObject(includeInstance, f) + }; + + if (includeInstance) { + obj.$jspbMessageInstance = msg; + } + return obj; +}; +} + + +/** + * Deserializes binary data (in protobuf wire format). + * @param {jspb.ByteSource} bytes The bytes to deserialize. + * @return {!proto.rivet.pegboard.runner_protocol.Routing} + */ +proto.rivet.pegboard.runner_protocol.Routing.deserializeBinary = function(bytes) { + var reader = new jspb.BinaryReader(bytes); + var msg = new proto.rivet.pegboard.runner_protocol.Routing; + return proto.rivet.pegboard.runner_protocol.Routing.deserializeBinaryFromReader(msg, reader); +}; + + +/** + * Deserializes binary data (in protobuf wire format) from the + * given reader into the given message object. + * @param {!proto.rivet.pegboard.runner_protocol.Routing} msg The message object to deserialize into. + * @param {!jspb.BinaryReader} reader The BinaryReader to use. + * @return {!proto.rivet.pegboard.runner_protocol.Routing} + */ +proto.rivet.pegboard.runner_protocol.Routing.deserializeBinaryFromReader = function(msg, reader) { + while (reader.nextField()) { + if (reader.isEndGroup()) { + break; + } + var field = reader.getFieldNumber(); + switch (field) { + case 1: + var value = new proto.rivet.pegboard.runner_protocol.Routing.GameGuard; + reader.readMessage(value,proto.rivet.pegboard.runner_protocol.Routing.GameGuard.deserializeBinaryFromReader); + msg.setGameGuard(value); + break; + case 2: + var value = new proto.rivet.pegboard.runner_protocol.Routing.Host; + reader.readMessage(value,proto.rivet.pegboard.runner_protocol.Routing.Host.deserializeBinaryFromReader); + msg.setHost(value); + break; + default: + reader.skipField(); + break; + } + } + return msg; +}; + + +/** + * Serializes the message to binary data (in protobuf wire format). + * @return {!Uint8Array} + */ +proto.rivet.pegboard.runner_protocol.Routing.prototype.serializeBinary = function() { + var writer = new jspb.BinaryWriter(); + proto.rivet.pegboard.runner_protocol.Routing.serializeBinaryToWriter(this, writer); + return writer.getResultBuffer(); +}; + + +/** + * Serializes the given message to binary data (in protobuf wire + * format), writing to the given BinaryWriter. + * @param {!proto.rivet.pegboard.runner_protocol.Routing} message + * @param {!jspb.BinaryWriter} writer + * @suppress {unusedLocalVariables} f is only used for nested messages + */ +proto.rivet.pegboard.runner_protocol.Routing.serializeBinaryToWriter = function(message, writer) { + var f = undefined; + f = message.getGameGuard(); + if (f != null) { + writer.writeMessage( + 1, + f, + proto.rivet.pegboard.runner_protocol.Routing.GameGuard.serializeBinaryToWriter + ); + } + f = message.getHost(); + if (f != null) { + writer.writeMessage( + 2, + f, + proto.rivet.pegboard.runner_protocol.Routing.Host.serializeBinaryToWriter + ); + } +}; + + + + + +if (jspb.Message.GENERATE_TO_OBJECT) { +/** + * Creates an object representation of this proto. + * Field names that are reserved in JavaScript and will be renamed to pb_name. + * Optional fields that are not set will be set to undefined. + * To access a reserved field use, foo.pb_, eg, foo.pb_default. + * For the list of reserved names please see: + * net/proto2/compiler/js/internal/generator.cc#kKeyword. + * @param {boolean=} opt_includeInstance Deprecated. whether to include the + * JSPB instance for transitional soy proto support: + * http://goto/soy-param-migration + * @return {!Object} + */ +proto.rivet.pegboard.runner_protocol.Routing.GameGuard.prototype.toObject = function(opt_includeInstance) { + return proto.rivet.pegboard.runner_protocol.Routing.GameGuard.toObject(opt_includeInstance, this); +}; + + +/** + * Static version of the {@see toObject} method. + * @param {boolean|undefined} includeInstance Deprecated. Whether to include + * the JSPB instance for transitional soy proto support: + * http://goto/soy-param-migration + * @param {!proto.rivet.pegboard.runner_protocol.Routing.GameGuard} msg The msg instance to transform. + * @return {!Object} + * @suppress {unusedLocalVariables} f is only used for nested messages + */ +proto.rivet.pegboard.runner_protocol.Routing.GameGuard.toObject = function(includeInstance, msg) { + var f, obj = { +protocol: jspb.Message.getFieldWithDefault(msg, 1, 0) + }; + + if (includeInstance) { + obj.$jspbMessageInstance = msg; + } + return obj; +}; +} + + +/** + * Deserializes binary data (in protobuf wire format). + * @param {jspb.ByteSource} bytes The bytes to deserialize. + * @return {!proto.rivet.pegboard.runner_protocol.Routing.GameGuard} + */ +proto.rivet.pegboard.runner_protocol.Routing.GameGuard.deserializeBinary = function(bytes) { + var reader = new jspb.BinaryReader(bytes); + var msg = new proto.rivet.pegboard.runner_protocol.Routing.GameGuard; + return proto.rivet.pegboard.runner_protocol.Routing.GameGuard.deserializeBinaryFromReader(msg, reader); +}; + + +/** + * Deserializes binary data (in protobuf wire format) from the + * given reader into the given message object. + * @param {!proto.rivet.pegboard.runner_protocol.Routing.GameGuard} msg The message object to deserialize into. + * @param {!jspb.BinaryReader} reader The BinaryReader to use. + * @return {!proto.rivet.pegboard.runner_protocol.Routing.GameGuard} + */ +proto.rivet.pegboard.runner_protocol.Routing.GameGuard.deserializeBinaryFromReader = function(msg, reader) { + while (reader.nextField()) { + if (reader.isEndGroup()) { + break; + } + var field = reader.getFieldNumber(); + switch (field) { + case 1: + var value = /** @type {!proto.rivet.pegboard.runner_protocol.GameGuardProtocol} */ (reader.readEnum()); + msg.setProtocol(value); + break; + default: + reader.skipField(); + break; + } + } + return msg; +}; + + +/** + * Serializes the message to binary data (in protobuf wire format). + * @return {!Uint8Array} + */ +proto.rivet.pegboard.runner_protocol.Routing.GameGuard.prototype.serializeBinary = function() { + var writer = new jspb.BinaryWriter(); + proto.rivet.pegboard.runner_protocol.Routing.GameGuard.serializeBinaryToWriter(this, writer); + return writer.getResultBuffer(); +}; + + +/** + * Serializes the given message to binary data (in protobuf wire + * format), writing to the given BinaryWriter. + * @param {!proto.rivet.pegboard.runner_protocol.Routing.GameGuard} message + * @param {!jspb.BinaryWriter} writer + * @suppress {unusedLocalVariables} f is only used for nested messages + */ +proto.rivet.pegboard.runner_protocol.Routing.GameGuard.serializeBinaryToWriter = function(message, writer) { + var f = undefined; + f = message.getProtocol(); + if (f !== 0.0) { + writer.writeEnum( + 1, + f + ); + } +}; + + +/** + * optional GameGuardProtocol protocol = 1; + * @return {!proto.rivet.pegboard.runner_protocol.GameGuardProtocol} + */ +proto.rivet.pegboard.runner_protocol.Routing.GameGuard.prototype.getProtocol = function() { + return /** @type {!proto.rivet.pegboard.runner_protocol.GameGuardProtocol} */ (jspb.Message.getFieldWithDefault(this, 1, 0)); +}; + + +/** + * @param {!proto.rivet.pegboard.runner_protocol.GameGuardProtocol} value + * @return {!proto.rivet.pegboard.runner_protocol.Routing.GameGuard} returns this + */ +proto.rivet.pegboard.runner_protocol.Routing.GameGuard.prototype.setProtocol = function(value) { + return jspb.Message.setProto3EnumField(this, 1, value); +}; + + + + + +if (jspb.Message.GENERATE_TO_OBJECT) { +/** + * Creates an object representation of this proto. + * Field names that are reserved in JavaScript and will be renamed to pb_name. + * Optional fields that are not set will be set to undefined. + * To access a reserved field use, foo.pb_, eg, foo.pb_default. + * For the list of reserved names please see: + * net/proto2/compiler/js/internal/generator.cc#kKeyword. + * @param {boolean=} opt_includeInstance Deprecated. whether to include the + * JSPB instance for transitional soy proto support: + * http://goto/soy-param-migration + * @return {!Object} + */ +proto.rivet.pegboard.runner_protocol.Routing.Host.prototype.toObject = function(opt_includeInstance) { + return proto.rivet.pegboard.runner_protocol.Routing.Host.toObject(opt_includeInstance, this); +}; + + +/** + * Static version of the {@see toObject} method. + * @param {boolean|undefined} includeInstance Deprecated. Whether to include + * the JSPB instance for transitional soy proto support: + * http://goto/soy-param-migration + * @param {!proto.rivet.pegboard.runner_protocol.Routing.Host} msg The msg instance to transform. + * @return {!Object} + * @suppress {unusedLocalVariables} f is only used for nested messages + */ +proto.rivet.pegboard.runner_protocol.Routing.Host.toObject = function(includeInstance, msg) { + var f, obj = { +protocol: jspb.Message.getFieldWithDefault(msg, 1, 0) + }; + + if (includeInstance) { + obj.$jspbMessageInstance = msg; + } + return obj; +}; +} + + +/** + * Deserializes binary data (in protobuf wire format). + * @param {jspb.ByteSource} bytes The bytes to deserialize. + * @return {!proto.rivet.pegboard.runner_protocol.Routing.Host} + */ +proto.rivet.pegboard.runner_protocol.Routing.Host.deserializeBinary = function(bytes) { + var reader = new jspb.BinaryReader(bytes); + var msg = new proto.rivet.pegboard.runner_protocol.Routing.Host; + return proto.rivet.pegboard.runner_protocol.Routing.Host.deserializeBinaryFromReader(msg, reader); +}; + + +/** + * Deserializes binary data (in protobuf wire format) from the + * given reader into the given message object. + * @param {!proto.rivet.pegboard.runner_protocol.Routing.Host} msg The message object to deserialize into. + * @param {!jspb.BinaryReader} reader The BinaryReader to use. + * @return {!proto.rivet.pegboard.runner_protocol.Routing.Host} + */ +proto.rivet.pegboard.runner_protocol.Routing.Host.deserializeBinaryFromReader = function(msg, reader) { + while (reader.nextField()) { + if (reader.isEndGroup()) { + break; + } + var field = reader.getFieldNumber(); + switch (field) { + case 1: + var value = /** @type {!proto.rivet.pegboard.runner_protocol.HostProtocol} */ (reader.readEnum()); + msg.setProtocol(value); + break; + default: + reader.skipField(); + break; + } + } + return msg; +}; + + +/** + * Serializes the message to binary data (in protobuf wire format). + * @return {!Uint8Array} + */ +proto.rivet.pegboard.runner_protocol.Routing.Host.prototype.serializeBinary = function() { + var writer = new jspb.BinaryWriter(); + proto.rivet.pegboard.runner_protocol.Routing.Host.serializeBinaryToWriter(this, writer); + return writer.getResultBuffer(); +}; + + +/** + * Serializes the given message to binary data (in protobuf wire + * format), writing to the given BinaryWriter. + * @param {!proto.rivet.pegboard.runner_protocol.Routing.Host} message + * @param {!jspb.BinaryWriter} writer + * @suppress {unusedLocalVariables} f is only used for nested messages + */ +proto.rivet.pegboard.runner_protocol.Routing.Host.serializeBinaryToWriter = function(message, writer) { + var f = undefined; + f = message.getProtocol(); + if (f !== 0.0) { + writer.writeEnum( + 1, + f + ); + } +}; + + +/** + * optional HostProtocol protocol = 1; + * @return {!proto.rivet.pegboard.runner_protocol.HostProtocol} + */ +proto.rivet.pegboard.runner_protocol.Routing.Host.prototype.getProtocol = function() { + return /** @type {!proto.rivet.pegboard.runner_protocol.HostProtocol} */ (jspb.Message.getFieldWithDefault(this, 1, 0)); +}; + + +/** + * @param {!proto.rivet.pegboard.runner_protocol.HostProtocol} value + * @return {!proto.rivet.pegboard.runner_protocol.Routing.Host} returns this + */ +proto.rivet.pegboard.runner_protocol.Routing.Host.prototype.setProtocol = function(value) { + return jspb.Message.setProto3EnumField(this, 1, value); +}; + + +/** + * optional GameGuard game_guard = 1; + * @return {?proto.rivet.pegboard.runner_protocol.Routing.GameGuard} + */ +proto.rivet.pegboard.runner_protocol.Routing.prototype.getGameGuard = function() { + return /** @type{?proto.rivet.pegboard.runner_protocol.Routing.GameGuard} */ ( + jspb.Message.getWrapperField(this, proto.rivet.pegboard.runner_protocol.Routing.GameGuard, 1)); +}; + + +/** + * @param {?proto.rivet.pegboard.runner_protocol.Routing.GameGuard|undefined} value + * @return {!proto.rivet.pegboard.runner_protocol.Routing} returns this +*/ +proto.rivet.pegboard.runner_protocol.Routing.prototype.setGameGuard = function(value) { + return jspb.Message.setOneofWrapperField(this, 1, proto.rivet.pegboard.runner_protocol.Routing.oneofGroups_[0], value); +}; + + +/** + * Clears the message field making it undefined. + * @return {!proto.rivet.pegboard.runner_protocol.Routing} returns this + */ +proto.rivet.pegboard.runner_protocol.Routing.prototype.clearGameGuard = function() { + return this.setGameGuard(undefined); +}; + + +/** + * Returns whether this field is set. + * @return {boolean} + */ +proto.rivet.pegboard.runner_protocol.Routing.prototype.hasGameGuard = function() { + return jspb.Message.getField(this, 1) != null; +}; + + +/** + * optional Host host = 2; + * @return {?proto.rivet.pegboard.runner_protocol.Routing.Host} + */ +proto.rivet.pegboard.runner_protocol.Routing.prototype.getHost = function() { + return /** @type{?proto.rivet.pegboard.runner_protocol.Routing.Host} */ ( + jspb.Message.getWrapperField(this, proto.rivet.pegboard.runner_protocol.Routing.Host, 2)); +}; + + +/** + * @param {?proto.rivet.pegboard.runner_protocol.Routing.Host|undefined} value + * @return {!proto.rivet.pegboard.runner_protocol.Routing} returns this +*/ +proto.rivet.pegboard.runner_protocol.Routing.prototype.setHost = function(value) { + return jspb.Message.setOneofWrapperField(this, 2, proto.rivet.pegboard.runner_protocol.Routing.oneofGroups_[0], value); +}; + + +/** + * Clears the message field making it undefined. + * @return {!proto.rivet.pegboard.runner_protocol.Routing} returns this + */ +proto.rivet.pegboard.runner_protocol.Routing.prototype.clearHost = function() { + return this.setHost(undefined); +}; + + +/** + * Returns whether this field is set. + * @return {boolean} + */ +proto.rivet.pegboard.runner_protocol.Routing.prototype.hasHost = function() { + return jspb.Message.getField(this, 2) != null; +}; + + + +/** + * Oneof group definitions for this message. Each group defines the field + * numbers belonging to that group. When of these fields' value is set, all + * other fields in the group are cleared. During deserialization, if multiple + * fields are encountered for a group, only the last value seen will be kept. + * @private {!Array>} + * @const + */ +proto.rivet.pegboard.runner_protocol.ActorState.oneofGroups_ = [[1,2]]; + +/** + * @enum {number} + */ +proto.rivet.pegboard.runner_protocol.ActorState.StateCase = { + STATE_NOT_SET: 0, + RUNNING: 1, + EXITED: 2 +}; + +/** + * @return {proto.rivet.pegboard.runner_protocol.ActorState.StateCase} + */ +proto.rivet.pegboard.runner_protocol.ActorState.prototype.getStateCase = function() { + return /** @type {proto.rivet.pegboard.runner_protocol.ActorState.StateCase} */(jspb.Message.computeOneofCase(this, proto.rivet.pegboard.runner_protocol.ActorState.oneofGroups_[0])); +}; + + + +if (jspb.Message.GENERATE_TO_OBJECT) { +/** + * Creates an object representation of this proto. + * Field names that are reserved in JavaScript and will be renamed to pb_name. + * Optional fields that are not set will be set to undefined. + * To access a reserved field use, foo.pb_, eg, foo.pb_default. + * For the list of reserved names please see: + * net/proto2/compiler/js/internal/generator.cc#kKeyword. + * @param {boolean=} opt_includeInstance Deprecated. whether to include the + * JSPB instance for transitional soy proto support: + * http://goto/soy-param-migration + * @return {!Object} + */ +proto.rivet.pegboard.runner_protocol.ActorState.prototype.toObject = function(opt_includeInstance) { + return proto.rivet.pegboard.runner_protocol.ActorState.toObject(opt_includeInstance, this); +}; + + +/** + * Static version of the {@see toObject} method. + * @param {boolean|undefined} includeInstance Deprecated. Whether to include + * the JSPB instance for transitional soy proto support: + * http://goto/soy-param-migration + * @param {!proto.rivet.pegboard.runner_protocol.ActorState} msg The msg instance to transform. + * @return {!Object} + * @suppress {unusedLocalVariables} f is only used for nested messages + */ +proto.rivet.pegboard.runner_protocol.ActorState.toObject = function(includeInstance, msg) { + var f, obj = { +running: (f = msg.getRunning()) && proto.rivet.pegboard.runner_protocol.ActorState.Running.toObject(includeInstance, f), +exited: (f = msg.getExited()) && proto.rivet.pegboard.runner_protocol.ActorState.Exited.toObject(includeInstance, f) + }; + + if (includeInstance) { + obj.$jspbMessageInstance = msg; + } + return obj; +}; +} + + +/** + * Deserializes binary data (in protobuf wire format). + * @param {jspb.ByteSource} bytes The bytes to deserialize. + * @return {!proto.rivet.pegboard.runner_protocol.ActorState} + */ +proto.rivet.pegboard.runner_protocol.ActorState.deserializeBinary = function(bytes) { + var reader = new jspb.BinaryReader(bytes); + var msg = new proto.rivet.pegboard.runner_protocol.ActorState; + return proto.rivet.pegboard.runner_protocol.ActorState.deserializeBinaryFromReader(msg, reader); +}; + + +/** + * Deserializes binary data (in protobuf wire format) from the + * given reader into the given message object. + * @param {!proto.rivet.pegboard.runner_protocol.ActorState} msg The message object to deserialize into. + * @param {!jspb.BinaryReader} reader The BinaryReader to use. + * @return {!proto.rivet.pegboard.runner_protocol.ActorState} + */ +proto.rivet.pegboard.runner_protocol.ActorState.deserializeBinaryFromReader = function(msg, reader) { + while (reader.nextField()) { + if (reader.isEndGroup()) { + break; + } + var field = reader.getFieldNumber(); + switch (field) { + case 1: + var value = new proto.rivet.pegboard.runner_protocol.ActorState.Running; + reader.readMessage(value,proto.rivet.pegboard.runner_protocol.ActorState.Running.deserializeBinaryFromReader); + msg.setRunning(value); + break; + case 2: + var value = new proto.rivet.pegboard.runner_protocol.ActorState.Exited; + reader.readMessage(value,proto.rivet.pegboard.runner_protocol.ActorState.Exited.deserializeBinaryFromReader); + msg.setExited(value); + break; + default: + reader.skipField(); + break; + } + } + return msg; +}; + + +/** + * Serializes the message to binary data (in protobuf wire format). + * @return {!Uint8Array} + */ +proto.rivet.pegboard.runner_protocol.ActorState.prototype.serializeBinary = function() { + var writer = new jspb.BinaryWriter(); + proto.rivet.pegboard.runner_protocol.ActorState.serializeBinaryToWriter(this, writer); + return writer.getResultBuffer(); +}; + + +/** + * Serializes the given message to binary data (in protobuf wire + * format), writing to the given BinaryWriter. + * @param {!proto.rivet.pegboard.runner_protocol.ActorState} message + * @param {!jspb.BinaryWriter} writer + * @suppress {unusedLocalVariables} f is only used for nested messages + */ +proto.rivet.pegboard.runner_protocol.ActorState.serializeBinaryToWriter = function(message, writer) { + var f = undefined; + f = message.getRunning(); + if (f != null) { + writer.writeMessage( + 1, + f, + proto.rivet.pegboard.runner_protocol.ActorState.Running.serializeBinaryToWriter + ); + } + f = message.getExited(); + if (f != null) { + writer.writeMessage( + 2, + f, + proto.rivet.pegboard.runner_protocol.ActorState.Exited.serializeBinaryToWriter + ); + } +}; + + + + + +if (jspb.Message.GENERATE_TO_OBJECT) { +/** + * Creates an object representation of this proto. + * Field names that are reserved in JavaScript and will be renamed to pb_name. + * Optional fields that are not set will be set to undefined. + * To access a reserved field use, foo.pb_, eg, foo.pb_default. + * For the list of reserved names please see: + * net/proto2/compiler/js/internal/generator.cc#kKeyword. + * @param {boolean=} opt_includeInstance Deprecated. whether to include the + * JSPB instance for transitional soy proto support: + * http://goto/soy-param-migration + * @return {!Object} + */ +proto.rivet.pegboard.runner_protocol.ActorState.Running.prototype.toObject = function(opt_includeInstance) { + return proto.rivet.pegboard.runner_protocol.ActorState.Running.toObject(opt_includeInstance, this); +}; + + +/** + * Static version of the {@see toObject} method. + * @param {boolean|undefined} includeInstance Deprecated. Whether to include + * the JSPB instance for transitional soy proto support: + * http://goto/soy-param-migration + * @param {!proto.rivet.pegboard.runner_protocol.ActorState.Running} msg The msg instance to transform. + * @return {!Object} + * @suppress {unusedLocalVariables} f is only used for nested messages + */ +proto.rivet.pegboard.runner_protocol.ActorState.Running.toObject = function(includeInstance, msg) { + var f, obj = { + + }; + + if (includeInstance) { + obj.$jspbMessageInstance = msg; + } + return obj; +}; +} + + +/** + * Deserializes binary data (in protobuf wire format). + * @param {jspb.ByteSource} bytes The bytes to deserialize. + * @return {!proto.rivet.pegboard.runner_protocol.ActorState.Running} + */ +proto.rivet.pegboard.runner_protocol.ActorState.Running.deserializeBinary = function(bytes) { + var reader = new jspb.BinaryReader(bytes); + var msg = new proto.rivet.pegboard.runner_protocol.ActorState.Running; + return proto.rivet.pegboard.runner_protocol.ActorState.Running.deserializeBinaryFromReader(msg, reader); +}; + + +/** + * Deserializes binary data (in protobuf wire format) from the + * given reader into the given message object. + * @param {!proto.rivet.pegboard.runner_protocol.ActorState.Running} msg The message object to deserialize into. + * @param {!jspb.BinaryReader} reader The BinaryReader to use. + * @return {!proto.rivet.pegboard.runner_protocol.ActorState.Running} + */ +proto.rivet.pegboard.runner_protocol.ActorState.Running.deserializeBinaryFromReader = function(msg, reader) { + while (reader.nextField()) { + if (reader.isEndGroup()) { + break; + } + var field = reader.getFieldNumber(); + switch (field) { + default: + reader.skipField(); + break; + } + } + return msg; +}; + + +/** + * Serializes the message to binary data (in protobuf wire format). + * @return {!Uint8Array} + */ +proto.rivet.pegboard.runner_protocol.ActorState.Running.prototype.serializeBinary = function() { + var writer = new jspb.BinaryWriter(); + proto.rivet.pegboard.runner_protocol.ActorState.Running.serializeBinaryToWriter(this, writer); + return writer.getResultBuffer(); +}; + + +/** + * Serializes the given message to binary data (in protobuf wire + * format), writing to the given BinaryWriter. + * @param {!proto.rivet.pegboard.runner_protocol.ActorState.Running} message + * @param {!jspb.BinaryWriter} writer + * @suppress {unusedLocalVariables} f is only used for nested messages + */ +proto.rivet.pegboard.runner_protocol.ActorState.Running.serializeBinaryToWriter = function(message, writer) { + var f = undefined; +}; + + + + + +if (jspb.Message.GENERATE_TO_OBJECT) { +/** + * Creates an object representation of this proto. + * Field names that are reserved in JavaScript and will be renamed to pb_name. + * Optional fields that are not set will be set to undefined. + * To access a reserved field use, foo.pb_, eg, foo.pb_default. + * For the list of reserved names please see: + * net/proto2/compiler/js/internal/generator.cc#kKeyword. + * @param {boolean=} opt_includeInstance Deprecated. whether to include the + * JSPB instance for transitional soy proto support: + * http://goto/soy-param-migration + * @return {!Object} + */ +proto.rivet.pegboard.runner_protocol.ActorState.Exited.prototype.toObject = function(opt_includeInstance) { + return proto.rivet.pegboard.runner_protocol.ActorState.Exited.toObject(opt_includeInstance, this); +}; + + +/** + * Static version of the {@see toObject} method. + * @param {boolean|undefined} includeInstance Deprecated. Whether to include + * the JSPB instance for transitional soy proto support: + * http://goto/soy-param-migration + * @param {!proto.rivet.pegboard.runner_protocol.ActorState.Exited} msg The msg instance to transform. + * @return {!Object} + * @suppress {unusedLocalVariables} f is only used for nested messages + */ +proto.rivet.pegboard.runner_protocol.ActorState.Exited.toObject = function(includeInstance, msg) { + var f, obj = { +exitCode: (f = jspb.Message.getField(msg, 1)) == null ? undefined : f + }; + + if (includeInstance) { + obj.$jspbMessageInstance = msg; + } + return obj; +}; +} + + +/** + * Deserializes binary data (in protobuf wire format). + * @param {jspb.ByteSource} bytes The bytes to deserialize. + * @return {!proto.rivet.pegboard.runner_protocol.ActorState.Exited} + */ +proto.rivet.pegboard.runner_protocol.ActorState.Exited.deserializeBinary = function(bytes) { + var reader = new jspb.BinaryReader(bytes); + var msg = new proto.rivet.pegboard.runner_protocol.ActorState.Exited; + return proto.rivet.pegboard.runner_protocol.ActorState.Exited.deserializeBinaryFromReader(msg, reader); +}; + + +/** + * Deserializes binary data (in protobuf wire format) from the + * given reader into the given message object. + * @param {!proto.rivet.pegboard.runner_protocol.ActorState.Exited} msg The message object to deserialize into. + * @param {!jspb.BinaryReader} reader The BinaryReader to use. + * @return {!proto.rivet.pegboard.runner_protocol.ActorState.Exited} + */ +proto.rivet.pegboard.runner_protocol.ActorState.Exited.deserializeBinaryFromReader = function(msg, reader) { + while (reader.nextField()) { + if (reader.isEndGroup()) { + break; + } + var field = reader.getFieldNumber(); + switch (field) { + case 1: + var value = /** @type {number} */ (reader.readInt32()); + msg.setExitCode(value); + break; + default: + reader.skipField(); + break; + } + } + return msg; +}; + + +/** + * Serializes the message to binary data (in protobuf wire format). + * @return {!Uint8Array} + */ +proto.rivet.pegboard.runner_protocol.ActorState.Exited.prototype.serializeBinary = function() { + var writer = new jspb.BinaryWriter(); + proto.rivet.pegboard.runner_protocol.ActorState.Exited.serializeBinaryToWriter(this, writer); + return writer.getResultBuffer(); +}; + + +/** + * Serializes the given message to binary data (in protobuf wire + * format), writing to the given BinaryWriter. + * @param {!proto.rivet.pegboard.runner_protocol.ActorState.Exited} message + * @param {!jspb.BinaryWriter} writer + * @suppress {unusedLocalVariables} f is only used for nested messages + */ +proto.rivet.pegboard.runner_protocol.ActorState.Exited.serializeBinaryToWriter = function(message, writer) { + var f = undefined; + f = /** @type {number} */ (jspb.Message.getField(message, 1)); + if (f != null) { + writer.writeInt32( + 1, + f + ); + } +}; + + +/** + * optional int32 exit_code = 1; + * @return {number} + */ +proto.rivet.pegboard.runner_protocol.ActorState.Exited.prototype.getExitCode = function() { + return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 1, 0)); +}; + + +/** + * @param {number} value + * @return {!proto.rivet.pegboard.runner_protocol.ActorState.Exited} returns this + */ +proto.rivet.pegboard.runner_protocol.ActorState.Exited.prototype.setExitCode = function(value) { + return jspb.Message.setField(this, 1, value); +}; + + +/** + * Clears the field making it undefined. + * @return {!proto.rivet.pegboard.runner_protocol.ActorState.Exited} returns this + */ +proto.rivet.pegboard.runner_protocol.ActorState.Exited.prototype.clearExitCode = function() { + return jspb.Message.setField(this, 1, undefined); +}; + + +/** + * Returns whether this field is set. + * @return {boolean} + */ +proto.rivet.pegboard.runner_protocol.ActorState.Exited.prototype.hasExitCode = function() { + return jspb.Message.getField(this, 1) != null; +}; + + +/** + * optional Running running = 1; + * @return {?proto.rivet.pegboard.runner_protocol.ActorState.Running} + */ +proto.rivet.pegboard.runner_protocol.ActorState.prototype.getRunning = function() { + return /** @type{?proto.rivet.pegboard.runner_protocol.ActorState.Running} */ ( + jspb.Message.getWrapperField(this, proto.rivet.pegboard.runner_protocol.ActorState.Running, 1)); +}; + + +/** + * @param {?proto.rivet.pegboard.runner_protocol.ActorState.Running|undefined} value + * @return {!proto.rivet.pegboard.runner_protocol.ActorState} returns this +*/ +proto.rivet.pegboard.runner_protocol.ActorState.prototype.setRunning = function(value) { + return jspb.Message.setOneofWrapperField(this, 1, proto.rivet.pegboard.runner_protocol.ActorState.oneofGroups_[0], value); +}; + + +/** + * Clears the message field making it undefined. + * @return {!proto.rivet.pegboard.runner_protocol.ActorState} returns this + */ +proto.rivet.pegboard.runner_protocol.ActorState.prototype.clearRunning = function() { + return this.setRunning(undefined); +}; + + +/** + * Returns whether this field is set. + * @return {boolean} + */ +proto.rivet.pegboard.runner_protocol.ActorState.prototype.hasRunning = function() { + return jspb.Message.getField(this, 1) != null; +}; + + +/** + * optional Exited exited = 2; + * @return {?proto.rivet.pegboard.runner_protocol.ActorState.Exited} + */ +proto.rivet.pegboard.runner_protocol.ActorState.prototype.getExited = function() { + return /** @type{?proto.rivet.pegboard.runner_protocol.ActorState.Exited} */ ( + jspb.Message.getWrapperField(this, proto.rivet.pegboard.runner_protocol.ActorState.Exited, 2)); +}; + + +/** + * @param {?proto.rivet.pegboard.runner_protocol.ActorState.Exited|undefined} value + * @return {!proto.rivet.pegboard.runner_protocol.ActorState} returns this +*/ +proto.rivet.pegboard.runner_protocol.ActorState.prototype.setExited = function(value) { + return jspb.Message.setOneofWrapperField(this, 2, proto.rivet.pegboard.runner_protocol.ActorState.oneofGroups_[0], value); +}; + + +/** + * Clears the message field making it undefined. + * @return {!proto.rivet.pegboard.runner_protocol.ActorState} returns this + */ +proto.rivet.pegboard.runner_protocol.ActorState.prototype.clearExited = function() { + return this.setExited(undefined); +}; + + +/** + * Returns whether this field is set. + * @return {boolean} + */ +proto.rivet.pegboard.runner_protocol.ActorState.prototype.hasExited = function() { + return jspb.Message.getField(this, 2) != null; +}; + + +/** + * @enum {number} + */ +proto.rivet.pegboard.runner_protocol.GameGuardProtocol = { + GG_HTTP: 0, + GG_HTTPS: 1, + GG_TCP: 2, + GG_TCP_TLS: 3, + GG_UDP: 4 +}; + +/** + * @enum {number} + */ +proto.rivet.pegboard.runner_protocol.HostProtocol = { + HOST_TCP: 0, + HOST_UDP: 1 +}; + +goog.object.extend(exports, proto.rivet.pegboard.runner_protocol); diff --git a/yarn.lock b/yarn.lock index 931bbd374d..a1bc117724 100644 --- a/yarn.lock +++ b/yarn.lock @@ -4536,6 +4536,15 @@ __metadata: languageName: unknown linkType: soft +"@rivet-gg/runner-protocol@file:../../sdks/runner-protocol::locator=system-test-container%40workspace%3Aexamples%2Fsystem-test-actor": + version: 1.0.0 + resolution: "@rivet-gg/runner-protocol@file:../../sdks/runner-protocol#../../sdks/runner-protocol::hash=3263e1&locator=system-test-container%40workspace%3Aexamples%2Fsystem-test-actor" + dependencies: + google-protobuf: "npm:^3.21.0" + checksum: 10c0/b6c92f6d634eac885af3812bee67f905bbcab9edd7c32558540e0037703bb3dd273754e7282044a47aeedf980dfefb50f7828a144f4c5fe4a6b54099c973d7d8 + languageName: node + linkType: hard + "@rivet-gg/studio@workspace:frontend/apps/studio": version: 0.0.0-use.local resolution: "@rivet-gg/studio@workspace:frontend/apps/studio" @@ -6642,6 +6651,13 @@ __metadata: languageName: node linkType: hard +"@types/google-protobuf@npm:^3.15.0": + version: 3.15.12 + resolution: "@types/google-protobuf@npm:3.15.12" + checksum: 10c0/721783234e627f367dd710c345a1eaa9dca4ac64910032cef0c851c1821e05d06ffb51e9d1693080f1c0797a8674f89130fa56a390395ec7791ea8506d2f3bfb + languageName: node + linkType: hard + "@types/hast@npm:^2.0.0": version: 2.3.10 resolution: "@types/hast@npm:2.3.10" @@ -7515,6 +7531,13 @@ __metadata: languageName: node linkType: hard +"adm-zip@npm:0.5.10": + version: 0.5.10 + resolution: "adm-zip@npm:0.5.10" + checksum: 10c0/1f391a4e02940688b6ca6d4b3ea96cc82a9dbe1596671d7dbc052f9a53ed2efa6ba9ba253f032ea16e70081f22d6ddd1af2d65d6be700853cdee9c2fc925c20e + languageName: node + linkType: hard + "agent-base@npm:6": version: 6.0.2 resolution: "agent-base@npm:6.0.2" @@ -10788,6 +10811,13 @@ __metadata: languageName: node linkType: hard +"google-protobuf@npm:^3.21.0, google-protobuf@npm:^3.21.2": + version: 3.21.4 + resolution: "google-protobuf@npm:3.21.4" + checksum: 10c0/28f2800f7fe1a8fc55eb58ba76e158268407bfb3b90646eaf8a177dd92a2e522459b773f8132ae546e60ac3b6f5947557a1cf3d963a05bb594f43bcde640f54f + languageName: node + linkType: hard + "gopd@npm:^1.0.1, gopd@npm:^1.2.0": version: 1.2.0 resolution: "gopd@npm:1.2.0" @@ -14715,6 +14745,26 @@ __metadata: languageName: node linkType: hard +"protoc-gen-js@npm:^3.21.2": + version: 3.21.3 + resolution: "protoc-gen-js@npm:3.21.3" + dependencies: + adm-zip: "npm:0.5.10" + bin: + protoc-gen-js: cli.js + checksum: 10c0/19818ba6c23cef580e605391115c0615cd88bd4094c9e9c7ce46f3980d17b6ef1008ea8e0db440db8df6f95db52c7db901b53a66db16786b75e46ffd449de5f4 + languageName: node + linkType: hard + +"protoc-gen-ts@npm:^0.8.7": + version: 0.8.7 + resolution: "protoc-gen-ts@npm:0.8.7" + bin: + protoc-gen-ts: protoc-gen-ts.js + checksum: 10c0/1af3ce3c31b81f374b3fc704a770715432ebf7f8caeb5b22e68fb6e378159a659afa3c88ca6d81540f324c3db31efec19877c41c800895cbbbf4926392c234a6 + languageName: node + linkType: hard + "proxy-from-env@npm:^1.1.0": version: 1.1.0 resolution: "proxy-from-env@npm:1.1.0" @@ -15701,6 +15751,8 @@ __metadata: dependencies: "@biomejs/biome": "npm:^1.9.4" "@yarnpkg/plugin-exec": "npm:^3.0.1" + protoc-gen-js: "npm:^3.21.2" + protoc-gen-ts: "npm:^0.8.7" turbo: "npm:^2.0.1" languageName: unknown linkType: soft @@ -16898,10 +16950,13 @@ __metadata: "@hono/node-ws": "npm:^1.1.0" "@rivet-gg/actor-core": "npm:^5.1.2" "@rivet-gg/api": "npm:^24.6.2" + "@rivet-gg/runner-protocol": "file:../../sdks/runner-protocol" "@types/deno": "npm:^2.2.0" + "@types/google-protobuf": "npm:^3.15.0" "@types/node": "npm:^22.13.9" "@types/ws": "npm:^8.18.0" dgram: "npm:^1.0.1" + google-protobuf: "npm:^3.21.2" hono: "npm:^4.6.17" node-fetch: "npm:^3.3.2" tsx: "npm:^4.7.0"