static private Create ( |
||
session | ||
ptr | object | |
return |
internal static MetadataObject Create(Session session, object ptr)
{
string fullName = GetV8Property(ptr, FullNameProperty) as string;
MetadataObject meta;
if (fullName.StartsWith(RussianConsts.Catalog))
{
meta = new MetadataObject(session, MetadataType.Catalog, ptr);
}
else if (fullName.StartsWith(RussianConsts.Document))
{
meta = new DocumentMetadata(session, ptr);
}
else
{
meta = new MetadataObject(session, MetadataType.Unknown, ptr);
}
meta.PutToCache(FullNameProperty, fullName);
return meta;
}
/// <summary> /// НайтиПоТипу (FindByType) /// </summary> /// <param name="typeV8"></param> /// <returns></returns> public MetadataObject FindByType(TypeV8 typeV8) { object ptr = InvokeV8Method("НайтиПоТипу", typeV8.Ptr); if (ptr == null) { return(null); } return(MetadataObject.Create(Session, ptr)); }