You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@mnemonic.apache.org by "Tao Jie (JIRA)" <ji...@apache.org> on 2018/02/09 09:57:00 UTC

[jira] [Created] (MNEMONIC-464) Support normal java object field in durable type

Tao Jie created MNEMONIC-464:
--------------------------------

             Summary: Support normal java object field in durable type
                 Key: MNEMONIC-464
                 URL: https://issues.apache.org/jira/browse/MNEMONIC-464
             Project: Mnemonic
          Issue Type: New Feature
    Affects Versions: 0.11.0
            Reporter: Tao Jie
            Assignee: Tao Jie


Today, we define a durable type(eg: DurableA), we may define a normal object field(B b). When we restore a DurableA object a(eg: we put a into a DurableHashMap and get it from the map later), its reference of b would lost. 
As discussed with [~qichfan] offline, one solution is that we maintain a Map<B_ID, B> to keep the reference of B and have a B_ID(long type) field in DurableA. Then we can find the object b from restored object A.
We can do this in the Mnemonic framework, and add a new type (maybe DurableReference?) to support this situation. like:
{code}
class DurableA {
 @DurableGetter
  public abstract DurableReference<B> getFieldB();

  @DurableSetter
  public abstract void setFieldB(DurableReference<B> b, boolean destroy) 
}
{code}
Then we can get object b by
{code}
a.getFieldB().get()
{code}
Any thought?



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)