/// <summary> /// Gets the template for Witsml object. /// </summary> /// <param name="version">The version.</param> /// <param name="objectType">Type of the object.</param> /// <param name="returnElementsOptionIn">The return elements option in.</param> /// <returns>The XDocument.</returns> public static XDocument GetTemplate(string objectType, string version, OptionsIn.ReturnElements returnElementsOptionIn) { var documentTemplate = new XDocument(); if (OptionsIn.DataVersion.Version131.Equals(version)) { documentTemplate = GetTemplateForWitsml131(objectType, returnElementsOptionIn); } if (OptionsIn.DataVersion.Version141.Equals(version)) { documentTemplate = GetTemplateForWitsml141(objectType, returnElementsOptionIn); } if (documentTemplate.Root != null) { return(documentTemplate); } // Unsupported objects var type = ObjectTypes.GetObjectGroupType(objectType, version); if (OptionsIn.ReturnElements.IdOnly.Equals(returnElementsOptionIn.Value)) { documentTemplate = _template.Create(type); _template.RemoveAll(documentTemplate, "/*/*/*[name() != 'name' and name() != 'nameWell' and name() != 'nameWellbore']"); } else { documentTemplate = _template.Create(type); } return(documentTemplate); }
private XDocument GetTemplateAndSetIds(string objectType, EtpUri uri, OptionsIn.ReturnElements templateType) { var queryIn = QueryTemplates.GetTemplate(objectType, DataSchemaVersion, templateType); SetFilterCriteria(objectType, queryIn, uri); return(queryIn); }
/// <summary> /// Gets the template for Witsml object. /// </summary> /// <param name="version">The version.</param> /// <param name="objectType">Type of the object.</param> /// <param name="returnElementsOptionIn">The return elements option in.</param> /// <returns>The XDocument.</returns> public static XDocument GetTemplate(string objectType, string version, OptionsIn.ReturnElements returnElementsOptionIn) { if (OptionsIn.DataVersion.Version131.Equals(version)) { return(GetTemplateForWitsml131(objectType, returnElementsOptionIn)); } if (OptionsIn.DataVersion.Version141.Equals(version)) { return(GetTemplateForWitsml141(objectType, returnElementsOptionIn)); } return(new XDocument()); }
/// <summary> /// Called when RequestObjectSelectionCapability has changed. /// </summary> private void OnRequestObjectSelectionCapabilityChanged() { if (IsRequestObjectSelectionCapability) { _previousReturnElementType = ReturnElementType; _previousRequestPrivateGroupOnly = IsRequestPrivateGroupOnly; ReturnElementType = null; IsRequestPrivateGroupOnly = false; } else { ReturnElementType = _previousReturnElementType ?? OptionsIn.ReturnElements.All; IsRequestPrivateGroupOnly = _previousRequestPrivateGroupOnly.GetValueOrDefault(); _previousReturnElementType = null; _previousRequestPrivateGroupOnly = null; } }
/// <summary> /// Gets the template for Witsml131 objects. /// </summary> /// <param name="objectType">The object type.</param> /// <param name="returnElementsOptionIn">The returnElement optionsIn.</param> /// <returns>The XDocument.</returns> public static XDocument GetTemplateForWitsml131(string objectType, OptionsIn.ReturnElements returnElementsOptionIn) { var xDocument = new XDocument(); switch (objectType) { case "log": if (OptionsIn.ReturnElements.All.Equals(returnElementsOptionIn.Value)) { xDocument = Witsml131.Log.All; } else if (OptionsIn.ReturnElements.IdOnly.Equals(returnElementsOptionIn.Value)) { xDocument = Witsml131.Log.IdOnly; } if (OptionsIn.ReturnElements.HeaderOnly.Equals(returnElementsOptionIn.Value)) { xDocument = Witsml131.Log.HeaderOnly; } else if (OptionsIn.ReturnElements.DataOnly.Equals(returnElementsOptionIn.Value)) { xDocument = Witsml131.Log.DataOnly; } break; case "message": if (OptionsIn.ReturnElements.All.Equals(returnElementsOptionIn.Value)) { xDocument = Witsml131.Message.All; } else if (OptionsIn.ReturnElements.IdOnly.Equals(returnElementsOptionIn.Value)) { xDocument = Witsml131.Message.IdOnly; } break; case "mudLog": if (OptionsIn.ReturnElements.All.Equals(returnElementsOptionIn.Value)) { xDocument = Witsml131.MudLog.All; } else if (OptionsIn.ReturnElements.IdOnly.Equals(returnElementsOptionIn.Value)) { xDocument = Witsml131.MudLog.IdOnly; } if (OptionsIn.ReturnElements.HeaderOnly.Equals(returnElementsOptionIn.Value)) { xDocument = Witsml131.MudLog.HeaderOnly; } else if (OptionsIn.ReturnElements.DataOnly.Equals(returnElementsOptionIn.Value)) { xDocument = Witsml131.MudLog.DataOnly; } break; case "rig": if (OptionsIn.ReturnElements.All.Equals(returnElementsOptionIn.Value)) { xDocument = Witsml131.Rig.All; } else if (OptionsIn.ReturnElements.IdOnly.Equals(returnElementsOptionIn.Value)) { xDocument = Witsml131.Rig.IdOnly; } break; case "trajectory": if (OptionsIn.ReturnElements.All.Equals(returnElementsOptionIn.Value)) { xDocument = Witsml131.Trajectory.All; } else if (OptionsIn.ReturnElements.IdOnly.Equals(returnElementsOptionIn.Value)) { xDocument = Witsml131.Trajectory.IdOnly; } if (OptionsIn.ReturnElements.HeaderOnly.Equals(returnElementsOptionIn.Value)) { xDocument = Witsml131.Trajectory.HeaderOnly; } else if (OptionsIn.ReturnElements.DataOnly.Equals(returnElementsOptionIn.Value)) { xDocument = Witsml131.Trajectory.DataOnly; } break; case "wbGeometry": if (OptionsIn.ReturnElements.All.Equals(returnElementsOptionIn.Value)) { xDocument = Witsml131.WbGeometry.All; } else if (OptionsIn.ReturnElements.IdOnly.Equals(returnElementsOptionIn.Value)) { xDocument = Witsml131.WbGeometry.IdOnly; } break; case "well": if (OptionsIn.ReturnElements.All.Equals(returnElementsOptionIn.Value)) { xDocument = Witsml131.Well.All; } else if (OptionsIn.ReturnElements.IdOnly.Equals(returnElementsOptionIn.Value)) { xDocument = Witsml131.Well.IdOnly; } break; case "wellbore": if (OptionsIn.ReturnElements.All.Equals(returnElementsOptionIn.Value)) { xDocument = Witsml131.Wellbore.All; } else if (OptionsIn.ReturnElements.IdOnly.Equals(returnElementsOptionIn.Value)) { xDocument = Witsml131.Wellbore.IdOnly; } break; } return(xDocument); }