public void testFunction() { Console.WriteLine("Hello World from dll!"); String f3 = DustUtils.getValue(DustContext.SELF, "what?", GenericAtts.IdentifiedIdLocal); Console.WriteLine("The main entity ID is {0}", f3); }
public void accessImpl(DustAccessCommand op, DustInfoTray tray) { var session = getCurrentSession(); DustDataEntity ei = (tray.entity is DustContext) ? session.ctx[((DustContext)tray.entity)] : (DustDataEntity)tray.entity; var eKey = tray.key as DustDataEntity; if (null == eKey) { var key = tray.key as DustKey; if (null != key) { eKey = modules[key.module][key.key]; } } switch (op) { case DustAccessCommand.read: tray.value = ei.getValue(eKey, tray.value, tray.dustHint); if ((null == tray.value) && DustUtils.isEnumRef(eKey.optValType)) { foreach (DustProcCursor drc in rootSession.cursors) { if ((drc.owner == ei) && (drc.key == eKey)) { tray.value = drc.Current.eTarget; return; } } } break; case DustAccessCommand.write: tray.value = ei.setValue(eKey, tray.value, tray.dustHint); break; case DustAccessCommand.visit: var vp = new DustProcVisitProcess(session, tray); var vt = tray as DustVisitTray; if (null == vt) { vp.visitRef(ei, eKey, null, true); } else { vp.visitEntity(null); } break; } }
public void processVisitEvent(VisitEvent visitEvent, DustVisitTray tray) { int kfi = kf.indexOf((DustEntity)tray.key); object kfk = kf.keyOf(kfi); // Console.WriteLine("DrawVisitor processVisitEvent {0} - {1}", visitEvent, tray.value); // return; switch (visitEvent) { case VisitEvent.entityStartOpt: DustEntity pt = DustUtils.getValue(tray.entity, (DustEntity)null, DataLinks.EntityPrimaryType); if (OB_TYPES.ContainsKey(pt)) { tray.readerObject = Activator.CreateInstance(OB_TYPES[pt]); var geo = tray.readerObject as GeometricData; if (null != geo) { readingGeoData = geo; } } break; case VisitEvent.keyStartOpt: if (-1 == kfi) { tray.resp = VisitResponse.skip; } else { if (COORDS.Contains(kfk)) { readingCoord = (GeometryValues)kfk; } else if (ROLES.Contains(kfk)) { readingRole = (GeometryValues)kfk; } Console.WriteLine("Entering {0} ", kf.keyOf(kfi)); } break; case VisitEvent.keyEnd: if (CollectionLinks.SequenceMembers == kfk) { var sp = tray.readerParent as ShapePath; if (null != sp) { sp.Add((GeometricData)tray.readerObject); } var sc = tray.readerParent as ShapeComposite; if (null != sc) { sc.Add((GeometricInclusion)tray.readerObject); } } else if (GeometryLinks.GeometricInclusionTarget == kfk) { var gi = tray.readerParent as GeometricInclusion; if (null != gi) { gi.target = (ShapeSource)tray.readerObject; } } else if (GeometryLinks.GeometricInclusionParameters == kfk) { var gi = tray.readerParent as GeometricInclusion; if ((null != gi) && (readingRole != null)) { gi[readingRole] = (GeometricData)tray.readerObject; } } Console.WriteLine("Leaving {0} ", kf.keyOf(kfi)); break; case VisitEvent.entityEnd: if (null != tray.readerObject) { lastReadObject = tray.readerObject; } break; } }