Gets the metadata of am XML control.

@param {Element} oControl - Control in XML
@returns {sap.ui.base.Metadata} Metadata of the control
968929
function(oControl) {
			var sControlType = this._getControlTypeInXml(oControl);
			jQuery.sap.require(sControlType);
			var ControlType = ObjectPath.get(sControlType);
			return ControlType.getMetadata();
		}
349844
function (control, controlProperty) {
				var bindingContext = control.getBinding(controlProperty);
				var bindingContextModel = bindingContext.getModel();
				var bindingInfoParts = (control.getBindingInfo(controlProperty).parts) ? control.getBindingInfo(controlProperty).parts : [];
				var modelNames = [];

				for (var i = 0; i < bindingInfoParts.length; i++) {
					modelNames.push(bindingInfoParts[i].model);
				}

				var model = {
					names: modelNames,
					path: bindingContext.getPath()
				};

				if (bindingContextModel) {
					model.mode = bindingContextModel.getDefaultBindingMode();
					model.type = bindingContextModel.getMetadata().getName();
					model.data = bindingContextModel.getData ? bindingContextModel.getData('/') : undefined;
				}

				return model;
			}
134030
function(oRM, oControl) {
			// render an invisible, but easily identifiable placeholder for the content
			oRM.write("<div id=\"" + RenderPrefixes.Dummy + oControl.getId() + "\" style=\"display:none\">");

			// Note: we do not render the content string here, but only in onAfterRendering
			// This has the advantage that syntax errors don't affect the whole control tree
			// but only this control...

			oRM.write("</div>");
		}
210447
function (oControl, sPropertyName, oPropertyValue) {
			var vOldValue;

			var oMetadata = oControl.getMetadata().getPropertyLikeSetting(sPropertyName);
			if (oMetadata) {
				var sPropertyGetter = oMetadata._sGetter;
				vOldValue = oControl[sPropertyGetter]();
			}

			var vReturnValue = JsControlTreeModifier.setProperty.apply(this, arguments);

			/* If the value changed, record the reversal as undo operation */
			if (vOldValue !== oPropertyValue){
				this._saveUndoOperation("setProperty", [oControl, sPropertyName, vOldValue]);
			}

			return vReturnValue;
		}
1322771
function createOwnerComponentInfo(oSrcElement) {
		var sId, sVersion;
		if (oSrcElement) {
			var Component, oComponent;
			Component = sap.ui.require("sap/ui/core/Component");
			while (Component && oSrcElement && oSrcElement.getParent) {
				oComponent = Component.getOwnerComponentFor(oSrcElement);
				if (oComponent || oSrcElement instanceof Component) {
					oComponent = oComponent || oSrcElement;
					var oApp = oComponent.getManifestEntry("sap.app");
					// get app id or module name for FESR
					sId = oApp && oApp.id || oComponent.getMetadata().getName();
					sVersion = oApp && oApp.applicationVersion && oApp.applicationVersion.version;
				}
				oSrcElement = oSrcElement.getParent();
			}
		}
		return {
			id: sId ? sId : "undetermined",
			version: sVersion ? sVersion : ""
		};
	}
14317
function hyphenateTexts(oControl) {
			if (!shouldControlHyphenate(oControl) || !shouldUseThirdParty()) {
				// no hyphenation needed
				oControl._mHyphenatedTexts = {};
				oControl._mUnhyphenatedTexts = {};
				return;
			}

			var mTexts = oControl.getTextsToBeHyphenated(),
				aChangedTextKeys = diffTexts(mTexts, oControl._mUnhyphenatedTexts);

			if (aChangedTextKeys.length > 0) {
				oControl._mUnhyphenatedTexts = mTexts;
				aChangedTextKeys.forEach(function(sKey) {
					delete oControl._mHyphenatedTexts[sKey];
				});

				var oHyphenation = Hyphenation.getInstance();
				if (!oHyphenation.isLanguageInitialized()) {
					oHyphenation.initialize().then(function () {

						var mDomRefs = oControl.isActive() ? oControl.getDomRefsForHyphenatedTexts() : null,
							bNeedInvalidate = false;

						aChangedTextKeys.forEach(function(sKey) {
							oControl._mHyphenatedTexts[sKey] = oHyphenation.hyphenate(mTexts[sKey]);

							if (mDomRefs && sKey in mDomRefs) {
								setNodeValue(mDomRefs[sKey], oControl._mHyphenatedTexts[sKey]);
							} else {
								bNeedInvalidate = true;
							}
						});

						if (bNeedInvalidate) {
							oControl.invalidate();
						}
					});
				} else {
					aChangedTextKeys.forEach(function(sKey) {
						oControl._mHyphenatedTexts[sKey] = oHyphenation.hyphenate(mTexts[sKey]);
					});
				}
			}
		}
303468
function(oControl) {
			var oAppComponent = Utils.getAppComponentForControl(oControl);
			var oFlexController = FlexControllerFactory.createForControl(oAppComponent);
			var oRootControl = oAppComponent.getRootControl();
			var oView = Utils.getViewForControl(oControl);
			var oVariantModel = oAppComponent.getModel("$FlexVariants");

			var mParams = {
				rootControl : oRootControl,
				view : oView,
				variantModel : oVariantModel,
				variantManagement : {},
				flexController: oFlexController
			};
			var oVMControl;
			var aForControlTypes;

			jQuery.makeArray(mParams.rootControl.$().find(".sapUiFlVarMngmt")).map(function(oVariantManagementNode) {
				oVMControl = sap.ui.getCore().byId(oVariantManagementNode.id);
				if (oVMControl.getMetadata().getName() === "sap.ui.fl.variants.VariantManagement") {
					aForControlTypes = oVMControl.getFor();
					aForControlTypes.forEach(function(sControlType) {
						mParams.variantManagement[sControlType] = mParams.variantModel.getLocalId(oVariantManagementNode.id, oAppComponent);
					});
				}
			});

			return mParams;
		}
72385
def parse_control_scanning_from_xml(xml)
      enabled = false
      if elem = REXML::XPath.first(xml, '//enableControlsScan[@enabled]')
        enabled = elem.attribute('enabled').value.to_i == 1
      end
      enabled
    end
804134
function (control) {
				var result = [];
				var inheritedMetadata = control.getMetadata().getParent();

				while (inheritedMetadata instanceof ElementMetadata) {
					result.push(this._copyInheritedProperties(control, inheritedMetadata));
					inheritedMetadata = inheritedMetadata.getParent();
				}

				return result;
			}
737276
function _getElementTreeRightColumnOfListItem(control, numberOfIssues) {
			var splitControlName = control.name.split(".");
			var name = splitControlName[splitControlName.length - 1];
			var nameSpace = control.name.replace(name, "");
			var hideShowClass = (numberOfIssues > 0) ? "showNumbOfIssues" : "hideNumbOfIssues";

			return "<tag data-search=\"" + control.name + control.id + "\">" +
				"&#60;" +
				"<namespace>" + nameSpace + "</namespace>" +
				name +
				"<attribute>&#32;id=\"<attribute-value>" + control.id + "</attribute-value>\"</attribute>" +
				"&#62;" +
				"</tag>" + "<span class = " + hideShowClass  + ">[" + numberOfIssues + "  issue(s)] </span>";
		}
699063
public Object getControlValue()
    {
        int i = this.getComponentCount() - 1;
        JComponent component = (JComponent)this.getComponent(i);
        if (component instanceof FieldComponent)
            ((FieldComponent)component).setControlValue(m_converter.getData());
        else if (component instanceof JTextComponent)
            ((JTextComponent)component).setText(m_converter.toString());

        return m_converter.getData();
    }
1121085
function (controlId) {
				var result = Object.create(null);
				var control = sap.ui.getCore().byId(controlId);
				var bindingContext;

				if (!control) {
					return result;
				}

				bindingContext = control.getBindingContext();

				result.meta = Object.create(null);
				result.contextPath = bindingContext ? bindingContext.getPath() : null;
				result.aggregations = controlInformation._getBindDataForAggregations(control);
				result.properties = controlInformation._getBindDataForProperties(control);

				return result;
			}
1225170
function (nodeElement, resultArray) {
				var node = nodeElement;
				var childNode = node.firstElementChild;
				var results = resultArray;
				var subResult = results;
				var control = sap.ui.getCore().byId(node.id);

				if (node.getAttribute('data-sap-ui') && control) {
					results.push({
						id: control.getId(),
						name: control.getMetadata().getName(),
						type: 'sap-ui-control',
						content: []
					});

					subResult = results[results.length - 1].content;
				} else if (node.getAttribute('data-sap-ui-area')) {
					results.push({
						id: node.id,
						name: 'sap-ui-area',
						type: 'data-sap-ui',
						content: []
					});

					subResult = results[results.length - 1].content;
				}

				while (childNode) {
					this._createRenderedTreeModel(childNode, subResult);
					childNode = childNode.nextElementSibling;
				}
			}
785773
function metaData( $contentObjectAttribute )
    {
        $metaData = "";

        $dom = new DOMDocument( '1.0', 'utf-8' );
        $text = eZXMLTextType::rawXMLText( $contentObjectAttribute );
        if ( trim( $text ) == '' )
        {
            return $metaData;
        }
        $success = $dom->loadXML( $text );

        if ( $success )
        {
            $metaData = trim( eZXMLTextType::concatTextContent( $dom->documentElement ) );
        }
        return $metaData;
    }
1025084
function(oComponent) {
			var aTechnicalParameters = flUtils.getTechnicalParametersForComponent(oComponent);
			return aTechnicalParameters
				&& aTechnicalParameters[VariantUtil.variantTechnicalParameterName]
				&& Array.isArray(aTechnicalParameters[VariantUtil.variantTechnicalParameterName])
				&& aTechnicalParameters[VariantUtil.variantTechnicalParameterName][0];
		}
214876
function (oControl) {
			var sControlType = oControl.namespaceURI;
			sControlType = sControlType ? sControlType + "." : ""; // add a dot if there is already a prefix
			sControlType += oControl.localName;

			return sControlType;
		}
1186279
function getMeta(object) {
  assertObject(object);

  let data = {};
  if (hasOwnSymbol(object, metaSymbol)) {
    Object.assign(data, object[metaSymbol] || {});
  }
  Object.assign(data, metadata.get(object) || {});

  if (data['~inheritsMeta']) {
    return Object.assign({}, getMeta(data['~inheritsMeta']()), data);
  } else {
    return data;
  }
}