Ah. Sure, that sounds reasonable.
On Mon, Aug 3, 2009 at 2:15 PM, Tai <[email protected]> wrote:
>
> Sorry but maybe my post is somehow confusing. I try to migrate my java
> class into a protocal message class. Now I have a field like:
>
> publiy MyClass {
>
> Class anotherClass
>
> }
>
> I wonder how I should define that in a proto file (MyClassMessage).
> Maybe like this:
>
> message MyClass {
> required string anotherClassName = 1;
> }
>
> Since I still have to use MyClass I just implement the writeObject()
> and readObject() and use the the Class.forName():
>
> private void writeObject(java.io.ObjectOutputStream out) throws
> IOException {
> Builder builder = MyClassMessage.MyClass.newBuilder();
> builder.setAnotherClassName(anotherClassName.getName());
> MyClassMessage.MyClass message = builder.build();
> message.writeTo(out);
> }
>
> private void readObject(java.io.ObjectInputStream in)
> throws ClassNotFoundException, IOException {
> MyClassMessage.MyClass message =
> MyClassMessage.MyClass.parseFrom(in);
> anotherClassName= Class.forName(message.getAnotherClassName
> ());
> }
>
>
> On 3 Aug., 23:06, Kenton Varda <[email protected]> wrote:
> > Protocol message classes can only contain other protocol message classes,
> > not arbitrary Java classes. Otherwise, what would happen when you
> compile
> > the same .proto file in C++ or another language?
> >
> > On Mon, Aug 3, 2009 at 1:14 PM, Tai <[email protected]> wrote:
> >
> > > Hi,
> >
> > > I guess this is a simple question. I have a Java class with an
> > > attribute which is a class. How do I define that in a proto file?
> > > Maybe the full qualified class name?
> >
> > > Thanks Tai
> >
>
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups
"Protocol Buffers" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/protobuf?hl=en
-~----------~----~----~----~------~----~------~--~---