public override RFCatalogKey CreateKey(RFStoreType storeType, RFPlane plane, string name, params string[] path) { return(new RFGenericCatalogKey { StoreType = storeType, Plane = plane, Root = Root, Name = name, Path = path != null?string.Join(RFGenericCatalogKey.PATH_SEPARATOR, path.Where(t => !string.IsNullOrWhiteSpace(t))) : null }); }
protected RFCatalogEntry ExtractEntry(RFStoreType storeType, Dictionary <string, object> dataRow, bool ignoreContent) { RFCatalogEntry entry = null; switch (storeType) { case RFStoreType.Document: entry = ExtractDocument(dataRow, ignoreContent); break; default: throw new Exception(String.Format("Unrecognized store type {0}", storeType)); } // common fields var type = dataRow["KeyType"].ToString(); entry.Key = (RFCatalogKey)RFXMLSerializer.DeserializeContract(type, dataRow["SerializedKey"].ToString()); entry.Metadata = RFMetadata.Deserialize(dataRow["Metadata"].ToString()) ?? new RFMetadata(); entry.UpdateTime = (DateTimeOffset)dataRow["UpdateTime"]; entry.Version = (int)dataRow["Version"]; entry.IsValid = (bool)dataRow["IsValid"]; return(entry); }
public abstract RFCatalogKey CreateKey(RFStoreType storeType, RFPlane plane, string name, params string[] path);