private Model.File GetComposedLookFile(string asset, FileConnectorBase connector) { int index = asset.LastIndexOf("/"); Model.File file = new Model.File(); string fileSrc = FixFileName(asset.Substring(index + 1)); file.Src = (null != connector)?Path.Combine(connector.GetConnectionString(), fileSrc): fileSrc; file.Folder = asset.Substring(0, index); file.Overwrite = true; file.Security = null; return file; }
//TODO: Candidate for cleanup private Model.File GetTemplateFile(Web web, string serverRelativeUrl, FileConnectorBase connector, TokenParser parser) { var webServerUrl = web.EnsureProperty(w => w.Url); var serverUri = new Uri(webServerUrl); var serverUrl = string.Format("{0}://{1}", serverUri.Scheme, serverUri.Authority); var fullUri = new Uri(UrlUtility.Combine(serverUrl, serverRelativeUrl)); var folderPath = fullUri.Segments.Take(fullUri.Segments.Count() - 1).ToArray().Aggregate((i, x) => i + x).TrimEnd('/'); var fileName = fullUri.Segments[fullUri.Segments.Count() - 1]; var templateFile = new Model.File() { Folder = TokenizeUrl(folderPath, parser), Src = (null != connector) ? Path.Combine(connector.GetConnectionString(), fileName) : fileName, Overwrite = true, }; return templateFile; }