- private static final class Proxy implements Externalizable {
- private static final long serialVersionUID = 1L;
- private MemberName memberName;
- private FrontendType clientType;
-
- public Proxy() {
- // Needed for Externalizable
- }
-
- Proxy(final MemberName memberName, final FrontendType clientType) {
- this.memberName = Preconditions.checkNotNull(memberName);
- this.clientType = Preconditions.checkNotNull(clientType);
- }
-
- @Override
- public void writeExternal(final ObjectOutput out) throws IOException {
- memberName.writeTo(out);
- clientType.writeTo(out);
- }
-
- @Override
- public void readExternal(final ObjectInput in) throws IOException {
- memberName = MemberName.readFrom(in);
- clientType = FrontendType.readFrom(in);
- }
-
- private Object readResolve() {
- return new FrontendIdentifier(memberName, clientType);
- }
- }
-