public IFile ConvertFrom(IProjectObject parent, XmlElement element, RedDotAttribute attribute) { ConverterHelper.EnsureValidProjectObject(parent); Guid folderGuid; if (!element.TryGetGuid(ELTFOLDERGUID, out folderGuid) || !element.IsAttributeSet(parent, ELTXSLFILE)) { return(null); } var folder = parent.Project.Folders.GetByGuid(folderGuid); return(new File(folder, element.GetAttributeValue(ELTXSLFILE))); }
public void WriteTo(IProjectObject parent, IXmlReadWriteWrapper element, RedDotAttribute attribute, IFile value) { ConverterHelper.EnsureValidProjectObject(parent); ConverterHelper.CheckReadOnly(this, parent, attribute); if (value == null) { SetEmptyValues(element); return; } if (ConverterHelper.AreFromTheSameProject(parent, value)) { SetValuesFromSameProject(element, value); return; } SetValuesFromDifferentProjects(parent, element, attribute, value); }
public void WriteTo(IProjectObject parent, IXmlReadWriteWrapper element, RedDotAttribute attribute, IFile value) { if (parent == null) { throw new SmartAPIInternalException("Parent project object may not be null for ExampleFileConverter"); } if (value == null) { ClearFile(element); return; } if (!element.IsAttributeSet(parent, ELTFOLDERGUID)) { throw new SmartAPIException(parent.Session.ServerLogin, string.Format( "Cannot set an example file ({0}) without an active folder in element {1}", value, parent)); } if (ConverterHelper.AreFromTheSameProject(parent, value)) { SetFromSameProject(parent, element, value); } else { if (value.Folder.IsAssetManager) { SetValuesFromAssetManagerFolder(parent, element, value); } else { var ownFolder = parent.Project.Folders.GetByName(value.Folder.Name); SetValuesFromTopLevelFolder(parent, element, value, ownFolder); } } }
private static IContentClassElement GetReferencedElement(IProjectObject parent, IContentClassElement value) { var project = parent.Project.Session.ServerManager.Projects[value.ContentClass.Project.Name]; return(ConverterHelper.GetEquivalentContentClassElementFromOtherProject(value, project)); }
protected override IContentClassElement GetFromName(IProjectObject parent, IXmlReadWriteWrapper element, RedDotAttribute attribute, IContentClassElement value) { return(ConverterHelper.GetEquivalentContentClassElementFromOtherProject(value, parent.Project)); }