On Tue, Dec 19, 2017 at 10:01 AM, <[email protected]> wrote:
> Hi, I am new in using Protobuf for golang.
>
> https://github.com/golang/protobuf
>
>
> Using golang Protobuf, within *package **foo*, I created *message
> TaskJobEntity* which is a combination of other messages:
>
>
> message TaskJobEntity {
> JobEntity job = 1;
> TaskEntity task = 2;
> map<int64, JobEntity> dependent_jobs = 3;
>
> }
>
>
> Which is used within *package foo* response as part a *map*:
>
>
> message ListTaskJobsResponse {
> *map**<string, TaskJobEntity>** task_jobs* = 1;
> ServiceStatus status = 2;
> }
>
> Now within another Protobuf *package bar*, I would like to define
> response that includes *message TaskJobEntity* defined in *package **foo*,
> however, as far as I can determine, a *proto3* package cannot reference
> another proto3 package (is this determination correct?).
>
What makes you think that? You can certainly import and use other proto3
packages.
>
> My goal is to add *map<string, foo.TaskJobEntity> task_jobs* to
> *package bar* defined response.
>
>
> Here is how I approaching to get to this goal. I have found that map of
> *interface{}* is not supported in Protobuf. So, is using
> *google.protobuf.Any* the next best solution?
>
>
> message ImportStatsResponse {
> string task_id = 1;
> // map<string, mvregistrypb.TaskJobEntity> task_jobs = 2;
> // map<string, interface{}> task_jobs = 2;
> map<string, google.protobuf.Any> task_jobs = 2;
> ServiceStatus status = 3;
> }
>
>
> Recommendations?
>
>
> --
> You received this message because you are subscribed to the Google Groups
> "Protocol Buffers" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to [email protected].
> To post to this group, send email to [email protected].
> Visit this group at https://groups.google.com/group/protobuf.
> For more options, visit https://groups.google.com/d/optout.
>
--
You received this message because you are subscribed to the Google Groups
"Protocol Buffers" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To post to this group, send email to [email protected].
Visit this group at https://groups.google.com/group/protobuf.
For more options, visit https://groups.google.com/d/optout.