示例#1
0
 internal virtual object[] GetRealRecords(object[] args)
 {
     if (args == null)
     {
         return(args);
     }
     for (int i = 0; i < args.Length; i++)
     {
         // We use "created" flag here. Consistency checking code revolves around records and so
         // even in scenarios where records are built from other sources, f.ex half-and-purpose-built from cache,
         // this flag is used to signal that the real record needs to be read in order to be used as a general
         // purpose record.
         if (args[i] is AbstractBaseRecord && (( AbstractBaseRecord )args[i]).Created)
         {                              // get the real record
             if (args[i] is NodeRecord)
             {
                 args[i] = ((DirectRecordReference <NodeRecord>)Records.node((( NodeRecord )args[i]).Id)).record();
             }
             else if (args[i] is RelationshipRecord)
             {
                 args[i] = ((DirectRecordReference <RelationshipRecord>)Records.relationship((( RelationshipRecord )args[i]).Id)).record();
             }
         }
     }
     return(args);
 }
 public override RecordReference <RelationshipRecord> Relationship(long id)
 {
     return(Logging(Access.relationship(id)));
 }