internal static ProjectPropertyGroupTaskPropertyInstance FactoryForDeserialization(ITranslator translator) { var instance = new ProjectPropertyGroupTaskPropertyInstance(); ((ITranslatable)instance).Translate(translator); return(instance); }
/// <summary> /// Cloning constructor /// </summary> private ProjectPropertyGroupTaskPropertyInstance(ProjectPropertyGroupTaskPropertyInstance that) { // All fields are immutable _name = that._name; _value = that._value; _condition = that._condition; _location = that._location; _conditionLocation = that._conditionLocation; }
/// <summary> /// Cloning constructor /// </summary> private ProjectPropertyGroupTaskPropertyInstance(ProjectPropertyGroupTaskPropertyInstance that) { // All fields are immutable _name = that._name; _value = that._value; _condition = that._condition; _location = that._location; _conditionLocation = that._conditionLocation; }
/// <summary> Adds the target to fetch solution configuration contents for given configuration|platform combo. </summary> private void AddGetSolutionConfigurationContentsTarget(ProjectInstance traversalProject) { var initialTarget = traversalProject.AddTarget( targetName: "GetSolutionConfigurationContents", condition: null, inputs: null, outputs: "$(SolutionConfigurationContents)", returns: null, keepDuplicateOutputs: null, dependsOnTargets: null, parentProjectSupportsReturnsAttribute: false); var property = new ProjectPropertyGroupTaskPropertyInstance( "SolutionConfigurationContents", "@(SolutionConfiguration->WithMetadataValue('Identity', '$(Configuration)|$(Platform)')->'%(Content)')", string.Empty, initialTarget.Location, initialTarget.Location); initialTarget.AddProjectTargetInstanceChild(new ProjectPropertyGroupTaskInstance( string.Empty, initialTarget.Location, initialTarget.Location, new ProjectPropertyGroupTaskPropertyInstance[] { property })); }
/// <summary> /// Adds batchable parameters from a property element into the list. If the property element was /// a task, these would be its raw parameter values. /// </summary> /// <param name="parameterValues">The list which will contain the batchable values.</param> /// <param name="property">The property from which to take the values.</param> private void GetBatchableValuesFromProperty(List<string> parameterValues, ProjectPropertyGroupTaskPropertyInstance property) { AddIfNotEmptyString(parameterValues, property.Value); AddIfNotEmptyString(parameterValues, property.Condition); }