/// <summary> /// Parse Config /// </summary> /// <param name="node"> /// The node. /// </param> /// <returns> /// Custom Field /// </returns> public static CustomField ParseConfigNode(XmlNode node) { var field = new CustomField(); var fieldName = XmlUtil.GetValue(node); if (ID.IsID(fieldName)) { field.FieldId = ID.Parse(fieldName); } else { field.FieldName = fieldName; } field.LuceneFieldName = XmlUtil.GetAttribute("luceneName", node); field.StorageType = GetStorageType(node); field.IndexType = GetIndexType(node); field.Formating = GetFormattingType(node); if (!IsValidField(field)) { return null; } return field; }
/// <summary> /// Is a Valid Field /// </summary> /// <param name="field"> /// The field. /// </param> /// <returns> /// </returns> private static bool IsValidField(CustomField field) { if ((!string.IsNullOrEmpty(field.FieldName) || !ID.IsNullOrEmpty(field.FieldId)) && !string.IsNullOrEmpty(field.LuceneFieldName)) { return true; } return false; }