Exemplo n.º 1
0
        public void Export(IProgress <double> progress = null)
        {
            Release[] releases = this.collectionManager.Releases.ToArray();

            double processed = 0;
            double total     = releases.Length;

            foreach (Release release in releases)
            {
                string entryName = "Releases\\" + FilenameGenerator.FixFilename(release.JoinedAlbumArtists + " - " + release.Title) + ".xml";

                foreach (Stream stream in this.GetEntryOutputStream(entryName, release.DateModified, release))
                {
                    XmlWriterSettings writerSettings = new XmlWriterSettings()
                    {
                        ConformanceLevel = ConformanceLevel.Document,
                        Indent           = true
                    };
                    using (XmlWriter writer = XmlTextWriter.Create(stream, writerSettings))
                    {
                        this.ExportRelease(writer, release);
                    }
                }

                if (progress != null)
                {
                    ++processed;
                    progress.Report(processed / total);
                }
            }
        }
Exemplo n.º 2
0
        void AddRow(TextWriter writer, TypeWrapper info, string cssImageClass)
        {
            writer.WriteLine("<tr>");

            // funky but works
            var imageClassDisplayName = string.Format("{0}{1}", cssImageClass.Substring(0, 1).ToUpper(), cssImageClass.Substring(1));

            writer.WriteLine("<td>");
            writer.WriteLine("<img class=\"{0}\" src=\"{2}/resources/blank.gif\" title=\"{1}\" alt=\"{1}\"/>", cssImageClass, imageClassDisplayName, RootRelativePath);
            writer.WriteLine("</td>");

            writer.WriteLine("<td>");
            writer.WriteLine("<a href=\"./{0}\">{1}</a>", FilenameGenerator.GenerateFilename(info), info.GetDisplayName(false));
            writer.WriteLine("</td>");

            writer.WriteLine("<td>");

            var docs = NDocUtilities.FindDocumentation(NDocUtilities.GetDocumentationInstance(info.DocId), info);
            var html = NDocUtilities.TransformDocumentationToHTML(docs, "summary", Artifacts.ManifestAssemblyContext.SdkAssembly, this._version);

            writer.WriteLine(html);
            writer.WriteLine("</td>");

            writer.WriteLine("</tr>");
        }
Exemplo n.º 3
0
        void AddConstructor(TextWriter writer, ConstructorInfoWrapper info)
        {
            writer.WriteLine("<tr>");

            writer.WriteLine("<td>");
            writer.WriteLine("<img class=\"publicMethod\" src=\"{0}/resources/blank.gif\" title=\"Public Method\" alt=\"Public Method\"/>", RootRelativePath);
            if (info.IsStatic)
            {
                writer.WriteLine("<img class=\"static\" src=\"{0}/resources/blank.gif\" title=\"Static Method\" alt=\"Static Method\"/>", RootRelativePath);
            }
            writer.WriteLine("</td>");

            writer.WriteLine("<td>");
            var filename   = FilenameGenerator.GenerateFilename(info);
            var parameters = FormatParameters(info.GetParameters());
            var hrefLink   = string.Format("<a href=\"./{0}\">{1}({2})</a>", filename, info.DeclaringType.Name, parameters);

            writer.WriteLine(hrefLink);
            writer.WriteLine("</td>");

            writer.WriteLine("<td>");

            var docs = NDocUtilities.FindDocumentation(this._currentNDoc, info);
            var html = NDocUtilities.TransformDocumentationToHTML(docs, "summary", this.Artifacts.AssemblyWrapper, this._version);

            writer.WriteLine(html);
            writer.WriteLine("</td>");

            writer.WriteLine("</tr>");
        }
Exemplo n.º 4
0
        void AddEvent(TextWriter writer, EventInfoWrapper info)
        {
            writer.WriteLine("<tr>");

            writer.WriteLine("<td>");
            writer.WriteLine("<img class=\"event\" src=\"{0}/resources/blank.gif\" title=\"Event\" alt=\"Event\"/>", RootRelativePath);
            if (info.IsStatic)
            {
                writer.WriteLine("<img class=\"static\" src=\"{0}/resources/blank.gif\" title=\"Static Event\" alt=\"Static Event\"/>", RootRelativePath);
            }
            writer.WriteLine("</td>");

            writer.WriteLine("<td>");
            writer.WriteLine("<a href=\"./{0}\">{1}</a>", FilenameGenerator.GenerateFilename(info), info.Name);
            writer.WriteLine("</td>");

            writer.WriteLine("<td>");

            var docs = NDocUtilities.FindDocumentation(this._currentNDoc, info);
            var html = NDocUtilities.TransformDocumentationToHTML(docs, "summary", Artifacts.AssemblyWrapper, this._version);

            writer.WriteLine(html);
            writer.WriteLine("</td>");

            writer.WriteLine("</tr>");
        }
        public void GenerateJsonSettingsFilename_ReturnsCorrectFilename()
        {
            FilenameGenerator fileNameGenerator = new FilenameGenerator(Mock.Of <ILocalizedNames>(), Mock.Of <IDateTimeProvider>());

            string filename = fileNameGenerator.GenerateJsonSettingsFilename();

            Assert.That(filename, Is.EqualTo("settings.json"));
        }
        public void GeneratePdfDocumentFilename_NullIAttendanceListData_ThrowsArgumentNullException()
        {
            FilenameGenerator fileNameProvider = new FilenameGenerator(Mock.Of <ILocalizedNames>(), Mock.Of <IDateTimeProvider>());

            TestDelegate executeGeneratePdfDocumentFilename = () => fileNameProvider.GeneratePdfDocumentFilename(null);

            Assert.That(executeGeneratePdfDocumentFilename, Throws.ArgumentNullException);
        }
Exemplo n.º 7
0
        public void Scenario1()
        {
            // composition root
            var fs = new Mock <IFileSystem>();
            var filenameGenerator = new FilenameGenerator();
            var output            = new FileOutput(filenameGenerator, fs.Object);
            var codeGenerator     = new CodeGenerator(
                new Parser(),
                new MemberGenerator(),
                new ClassNameGenerator()
                );
            var app = new App(fs.Object, codeGenerator, output);

            // set up the mocks
            const string CODE = @"interface ITest
{
    int A { get; }
    string B { get; set; }

    int Test();
    void SomeMethod(int a, string b);
    int GetStuff(bool flag);
}";

            fs.Setup(it => it.ReadText("ITest.cs")).Returns(CODE);

            // invoke the generator
            app.GenerateDecorator("ITest.cs");

            // verify the result
            fs.Verify(
                it => it.WriteText(
                    @"TestDecorator.cs",
                    @"public class TestDecorator : ITest
{
    public TestDecorator(ITest decorated)
    {
        this.decorated = decorated;
    }

    public int A => decorated.A;
    public string B
    {
        get => decorated.B;
        set => decorated.B = value;
    }
    public int Test() =>
        decorated.Test();
    public void SomeMethod(int a, string b) =>
        decorated.SomeMethod(a, b);
    public int GetStuff(bool flag) =>
        decorated.GetStuff(flag);

    //

    private readonly ITest decorated;
}"));
        }
Exemplo n.º 8
0
        public void TestGenerateValidFilename()
        {
            //Arrange
            DateTime date = new DateTime(2017, 1, 23, 13, 47, 52);

            //Act
            var filename = FilenameGenerator.CreateFilename("My test filename", FileType.ExcelXlsx, date);

            //Assert
            Assert.AreEqual("My test filename_20170123_13h47m52s.xlsx", filename);
        }
Exemplo n.º 9
0
        /// <summary>
        /// Generates a CSV file with grid based counts of number of species observations for each selected taxon.
        /// </summary>
        /// <param name="filename">
        /// The filename (without file extension).
        /// </param>
        /// <param name="convertCountToOccurrenceBoolean">
        /// If set to <c>true</c> the observation count will be written as 1 if the count > 0 and 0 if count = 0;
        /// If set to <c>false</c> the observation count will be written.
        /// </param>
        /// <returns>
        /// A CSV file.
        /// </returns>
        private FileResult TaxonSpecificGridStatisticsOnSpeciesObservationCountsAsCsv(string filename, bool convertCountToOccurrenceBoolean)
        {
            SpeciesObservationGridCalculator resultCalculator     = new SpeciesObservationGridCalculator(GetCurrentUser(), SessionHandler.MySettings);
            TaxonSpecificGridSpeciesObservationCountResult result = resultCalculator.CalculateMultipleSpeciesObservationGrid();
            TaxonSpecificSpeciesObservationCountGridCsv    file   = FileExportManager.GetTaxonSpecificGridStatisticsOnSpeciesObservationCountsAsCsv(result, convertCountToOccurrenceBoolean);
            MemoryStream returnStream = file.ToStream();

            SetServerDone();
            return(File(
                       returnStream.ToArray(),
                       "text/csv",
                       FilenameGenerator.CreateFilename(filename, FileType.Csv)));
        }
Exemplo n.º 10
0
 protected virtual void WriteFooter(TextWriter writer)
 {
     writer.WriteLine("<div id=\"pageFooter\">");
     writer.WriteLine("<span class=\"newline linkto\"><a href=\"javascript:void(0)\" onclick=\"AWSHelpObj.displayLink('{0}/{1}', '{2}')\">Link to this page</a></span>",
                      this.GenerateFilepath(),
                      FilenameGenerator.Escape(this.GenerateFilename()),
                      FilenameGenerator.Escape(this.GetTOCID()));
     writer.WriteLine("<span class=\"divider\">&nbsp;</span>");
     writer.WriteLine(FeedbackSection, GenerateFeedbackHTML());
     writer.WriteLine("<div id=\"awsdocs-legal-zone-copyright\"></div>");
     writer.WriteLine("</div>");
     WriteScriptFiles(writer);
 }
Exemplo n.º 11
0
        /// <summary>
        /// Generates an GeoJson (.geojson) file with grid statistics on species richness.
        /// </summary>
        /// <returns>A .geojson file.</returns>
        public FileResult GridStatisticsOnSpeciesRichnessAsGeoJson()
        {
            TaxonGridCalculator resultCalculator = null;
            string geojson = null;

            resultCalculator = new TaxonGridCalculator(GetCurrentUser(), SessionHandler.MySettings);
            geojson          = resultCalculator.GetTaxonGridAsGeoJson();
            SetServerDone();
            byte[] bytes = System.Text.Encoding.UTF8.GetBytes(geojson);
            return(File(
                       bytes,
                       "application/json",
                       FilenameGenerator.CreateFilename("SpeciesRichnessGrid", FileType.GeoJSON)));
        }
Exemplo n.º 12
0
        /// <summary>
        /// Generates an GeoJson (.geojson) file with grid statistics on species observation counts.
        /// </summary>
        /// <returns>A .geojson file.</returns>
        public FileResult GridStatisticsOnSpeciesObservationCountsAsGeoJson()
        {
            SpeciesObservationGridCalculator resultCalculator = null;
            string geojson = null;
            CalculatedDataItem <FeatureCollection> result;

            resultCalculator = new SpeciesObservationGridCalculator(GetCurrentUser(), SessionHandler.MySettings);
            geojson          = resultCalculator.GetSpeciesObservationGridAsGeoJson();
            SetServerDone();
            byte[] bytes = System.Text.Encoding.UTF8.GetBytes(geojson);
            return(File(
                       bytes,
                       "application/json",
                       FilenameGenerator.CreateFilename("SpeciesObservationCountsGrid", FileType.GeoJSON)));
        }
Exemplo n.º 13
0
        public static string CreateCrossReferenceTagReplacement(AbstractTypeProvider typeProvider, string crefTypeName, FrameworkVersion version)
        {
            const string amazonNamespaceRoot = "Amazon.";

            var    target = string.Empty;
            string url    = null;

            string typeName;

            if (crefTypeName.Length > 2 && crefTypeName[1] == ':') // cref M:, T:, P:, F: indicators
            {
                typeName = crefTypeName.Substring(2);
            }
            else
            {
                typeName = crefTypeName;
            }

            var typeWrapper = typeProvider.GetType(typeName);

            if (typeWrapper != null)
            {
                url = string.Format("./{0}", FilenameGenerator.GenerateFilename(typeWrapper));
            }
            else if (typeName.StartsWith("system.", StringComparison.OrdinalIgnoreCase))
            {
                url    = string.Format(NDocUtilities.MSDN_TYPE_URL_PATTERN, typeName.ToLower());
                target = "target=_new";
            }

            // If we couldn't generate a url to use with an anchor tag, make the typename italic+bold so
            // that it at least stands out.
            if (url == null)
            {
                return(string.Format("<i><b>{0}</b></i>", typeName));
            }

            // If the type is one of ours, strip the namespace from the display text to condense things
            // a little
            if (typeName.StartsWith(amazonNamespaceRoot, StringComparison.Ordinal))
            {
                var lastPeriodIndex = typeName.LastIndexOf('.');
                typeName = typeName.Substring(lastPeriodIndex + 1);
            }

            return(string.Format("<a href=\"{0}\" {2}>{1}</a>", url, typeName, target));
        }
Exemplo n.º 14
0
 /// <summary>
 /// Renders the species observation grid map to a png file.
 /// </summary>
 /// <returns>A png image.</returns>
 public ActionResult SpeciesObservationGridMapImage()
 {
     SetServerDone();
     try
     {
         FileStreamResult fileStream = CreateImageUsingPhantomJs(Url.Action("SpeciesObservationGridMap", "Result"), "mainPanel", 1.5);
         return(File(
                    fileStream.FileStream,
                    "image/png",
                    FilenameGenerator.CreateFilename("SpeciesObservationGridMap", FileType.Png)));
     }
     catch (Exception e)
     {
         Logger.WriteException(e);
         throw new Exception("An error occurred when generating the image.", e);
     }
 }
Exemplo n.º 15
0
        void WriteNamespaceToc(JsonWriter writer, string ns)
        {
            var assemblyWrapper = _generatedNamespaces[ns];
            var tocId           = ns.Replace(".", "_");

            var nsFilePath = Path.Combine("./" + Options.ContentSubFolderName,
                                          GenerationManifest.OutputSubFolderFromNamespace(ns),
                                          FilenameGenerator.GenerateNamespaceFilename(ns)).Replace('\\', '/');

            writer.WritePropertyName(ns);
            writer.WriteObjectStart();

            writer.WritePropertyName("id");
            writer.Write(tocId);

            writer.WritePropertyName("href");
            writer.Write(nsFilePath);

            writer.WritePropertyName("nodes");
            writer.WriteObjectStart();

            foreach (var type in assemblyWrapper.GetTypesForNamespace(ns).OrderBy(x => x.Name))
            {
                var filePath = Path.Combine("./" + Options.ContentSubFolderName,
                                            GenerationManifest.OutputSubFolderFromNamespace(type.Namespace),
                                            FilenameGenerator.GenerateFilename(type)).Replace('\\', '/');

                writer.WritePropertyName(type.GetDisplayName(false));
                writer.WriteObjectStart();
                writer.WritePropertyName("id");
                writer.Write(type.GetDisplayName(true).Replace(".", "_"));

                writer.WritePropertyName("href");
                writer.Write(filePath);
                writer.WriteObjectEnd();
            }

            writer.WriteObjectEnd();

            writer.WriteObjectEnd();
        }
        public void GeneratePdfDocumentFilename_GivenData_ReturnsCorrectFileName(Month month, int year, DateTime dateTime, string expectedResult)
        {
            ILocalizedNames localizedNames = Mock.Of <ILocalizedNames>(l => l.GetMonthName(Month.January) == "January" &&
                                                                       l.GetMonthName(Month.February) == "February" &&
                                                                       l.GetMonthName(Month.March) == "March" &&
                                                                       l.GetMonthName(Month.April) == "April" &&
                                                                       l.GetMonthName(Month.May) == "May" &&
                                                                       l.GetMonthName(Month.June) == "June" &&
                                                                       l.GetMonthName(Month.July) == "July" &&
                                                                       l.GetMonthName(Month.September) == "September" &&
                                                                       l.GetMonthName(Month.October) == "October" &&
                                                                       l.GetMonthName(Month.November) == "November" &&
                                                                       l.GetMonthName(Month.December) == "December");
            IAttendanceListData attendanceListData = Mock.Of <IAttendanceListData>(a => a.Month == month && a.Year == year);
            IDateTimeProvider   dateTimeProvider   = Mock.Of <IDateTimeProvider>(d => d.Now == dateTime);
            FilenameGenerator   fileNameGenerator  = new FilenameGenerator(localizedNames, dateTimeProvider);

            string fileName = fileNameGenerator.GeneratePdfDocumentFilename(attendanceListData);

            Assert.That(fileName, Is.EqualTo(expectedResult));
        }
Exemplo n.º 17
0
        void AddEvent(TextWriter writer, EventInfoWrapper info)
        {
            writer.WriteLine("<tr>");

            writer.WriteLine("<td>");
            writer.WriteLine("<img class=\"event\" src=\"{0}/resources/blank.gif\" title=\"Event\" alt=\"Event\"/>", RootRelativePath);
            if (info.IsStatic)
            {
                writer.WriteLine("<img class=\"static\" src=\"{0}/resources/blank.gif\" title=\"Static Event\" alt=\"Static Event\"/>", RootRelativePath);
            }
            writer.WriteLine("</td>");

            writer.WriteLine("<td>");
            writer.WriteLine("<a href=\"{0}/items/{1}/{2}\">{3}</a>",
                             RootRelativePath,
                             GenerationManifest.OutputSubFolderFromNamespace(info.DeclaringType.Namespace),
                             FilenameGenerator.GenerateFilename(info),
                             info.Name);
            writer.WriteLine("</td>");

            writer.WriteLine("<td>");

            string html        = string.Empty;
            var    isInherited = !info.DeclaringType.Equals(_versionType);

            if (isInherited)
            {
                html = string.Format("Inherited from {0}.{1}.", info.DeclaringType.Namespace, info.DeclaringType.Name);
            }
            else
            {
                var docs = NDocUtilities.FindDocumentation(info);
                html = NDocUtilities.TransformDocumentationToHTML(docs, "summary", Artifacts.AssemblyWrapper, this._version);
            }

            writer.WriteLine(html);
            writer.WriteLine("</td>");

            writer.WriteLine("</tr>");
        }
Exemplo n.º 18
0
        private Settings DeserializeSettings()
        {
            try
            {
                LocalizedNames    localizedNames    = new LocalizedNames();
                DirectoryProvider directoryProvider = new DirectoryProvider(localizedNames);
                FilenameGenerator filenameGenerator = new FilenameGenerator(localizedNames, _dateTimeProvider);

                string applicationDirectory = directoryProvider.GetApplicationDirectoryPath();
                string settingsFilename     = filenameGenerator.GenerateJsonSettingsFilename();

                FileReader fileReader = new FileReader();
                string     json       = fileReader.ReadJsonFile(applicationDirectory, settingsFilename);

                SettingsSerializer serializer = new SettingsSerializer();
                return(serializer.Deserialize(json));
            }
            catch (Exception)
            {
                return(null);
            }
        }
Exemplo n.º 19
0
        void AddMethod(TextWriter writer, MethodInfoWrapper info)
        {
            writer.WriteLine("<tr>");

            writer.WriteLine("<td>");
            writer.WriteLine("<img class=\"publicMethod\" src=\"{0}/resources/blank.gif\" title=\"Public Method\" alt=\"Public Method\"/>", RootRelativePath);
            if (info.IsStatic)
            {
                writer.WriteLine("<img class=\"static\" src=\"{0}/resources/blank.gif\" title=\"Static Method\" alt=\"Static Method\"/>", RootRelativePath);
            }
            writer.WriteLine("</td>");

            writer.WriteLine("<td>");
            writer.WriteLine("<a href=\"{0}/items/{1}/{2}\">{3}({4})</a>",
                             RootRelativePath,
                             GenerationManifest.OutputSubFolderFromNamespace(info.DeclaringType.Namespace),
                             FilenameGenerator.GenerateFilename(info),
                             info.Name,
                             FormatParameters(info.GetParameters()));
            writer.WriteLine("</td>");

            writer.WriteLine("<td>");

            string html = string.Empty;

            if (_versionType.Namespace != info.DeclaringType.Namespace)
            {
                html = string.Format("Inherited from {0}.{1}.", info.DeclaringType.Namespace, info.DeclaringType.Name);
            }
            else
            {
                var docs = NDocUtilities.FindDocumentation(this._currentNDoc, info);
                html = NDocUtilities.TransformDocumentationToHTML(docs, "summary", Artifacts.AssemblyWrapper, this._version);
            }
            writer.WriteLine(html);
            writer.WriteLine("</td>");

            writer.WriteLine("</tr>");
        }
Exemplo n.º 20
0
        /// <summary>
        /// Method that generates an CSV file with species observations.
        /// </summary>
        /// <param name="presentationCoordinateSystem">Coordinate system to use.</param>
        /// <param name="columnsSet">Which columns set to use.</param>
        /// <param name="columnsHeadersType">Columns headers type to use.</param>
        /// <returns>A CSV file.</returns>
        public FileResult SpeciesObservationsAsCsv(
            int?presentationCoordinateSystem,
            int?columnsSet,
            int?columnsHeadersType)
        {
            if (NoFilterSelected)
            {
                throw new Exception("Too much data! You must set taxa filter or spatial filter.");
            }
            var coordinateSystemId = GetCoordinateSystemIdFromArgument(
                presentationCoordinateSystem,
                SessionHandler.MySettings.Presentation.Map.DownloadCoordinateSystemId);

            SpeciesObservationTableColumnsSetId speciesObservationTableColumnsSetId =
                GetSpeciesObservationTableColumnsSetIdFromArgument(
                    columnsSet,
                    SessionHandler.MySettings.Presentation.Table.SpeciesObservationTable.SpeciesObservationTableColumnsSetId);

            bool useLabelAsColumnHeader = GetUselabelAsColumnHeaderFromArgument(
                columnsHeadersType,
                SessionHandler.MySettings.Presentation.Table.SpeciesObservationTable.UseLabelAsColumnHeader);

            SpeciesObservationResultCalculator          resultCalculator = new SpeciesObservationResultCalculator(GetCurrentUser(), SessionHandler.MySettings);
            List <Dictionary <ViewTableField, string> > result           =
                resultCalculator.GetTableResult(
                    coordinateSystemId,
                    speciesObservationTableColumnsSetId);

            SpeciesObservationsCsv file = FileExportManager.GetSpeciesObservationsAsCsv(
                result,
                useLabelAsColumnHeader);
            MemoryStream returnStream = file.ToStream();

            SetServerDone();
            return(File(
                       returnStream.ToArray(),
                       "text/csv",
                       FilenameGenerator.CreateFilename("SpeciesObservations", FileType.Csv)));
        }
Exemplo n.º 21
0
        private void Generate()
        {
            IList <IPerson> people = GetPeopleList();

            // Generate data
            DaysOffData        daysOff  = new DaysOffData(Year);
            AttendanceListData listData = new AttendanceListData(daysOff, people, Month, Year);

            // Create document generator
            LocalizedNames localizedNames = new LocalizedNames();
            AttendanceListDocumentGenerator documentGenerator = new AttendanceListDocumentGenerator(listData, localizedNames);

            // Set document generator settings
            documentGenerator.EnableColors          = EnableColors;
            documentGenerator.EnableHolidaysTexts   = EnableHolidaysTexts;
            documentGenerator.EnableSundaysTexts    = EnableSundaysTexts;
            documentGenerator.EnableTableStretching = EnableTableStretching;

            // Generate a document
            Document document = documentGenerator.GenerateDocument();

            // Get directory path and filename
            DirectoryProvider directoryProvider = new DirectoryProvider(localizedNames);
            FilenameGenerator filenameGenerator = new FilenameGenerator(localizedNames, _dateTimeProvider);
            string            path     = directoryProvider.GetDocumentsDirectoryPath();
            string            filename = filenameGenerator.GeneratePdfDocumentFilename(listData);

            // Save document
            FileSaver fileSaver = new FileSaver();

            fileSaver.SavePdfDocument(document, path, filename);

            // And open it
            FileOpener fileOpener = new FileOpener();

            fileOpener.OpenFile(path, filename);

            SerializeSettings(directoryProvider, filenameGenerator, fileSaver);
        }
Exemplo n.º 22
0
        private string GenerateFeedbackHTML()
        {
            var          filename    = FilenameGenerator.Escape(Path.GetFileNameWithoutExtension(GenerateFilename()));
            const string baseUrl     = "https://docs.aws.amazon.com/forms/aws-doc-feedback";
            var          queryString = string.Format("?service_name={0}&amp;file_name={1}",
                                                     "NET-Ref-V3", // service_name
                                                     filename      // guide_name
                                                     );
            var fullUrl = baseUrl + queryString;

            const string feedbackContentFormat = "<span id=\"feedback\">" +
                                                 "<!-- BEGIN-FEEDBACK-SECTION -->" +
                                                 "Did this page help you?&nbsp;&nbsp;" +
                                                 "<a href=\"http://docs.aws.amazon.com/sdkfornet/latest/apidocs/feedbackyes.html?topic_id={0}\" target=\"_blank\">Yes</a>&nbsp;&nbsp;" +
                                                 "<a href=\"http://docs.aws.amazon.com/sdkfornet/latest/apidocs/feedbackno.html?topic_id={0}\" target=\"_blank\">No</a>&nbsp;&nbsp;&nbsp;" +
                                                 "<a href=\"{1}\" target=\"_blank\">Tell us about it...</a>" +
                                                 "</span>" +
                                                 "<!-- END-FEEDBACK-SECTION -->";
            string feedbackContent = string.Format(feedbackContentFormat, filename, fullUrl);

            return(feedbackContent);
        }
Exemplo n.º 23
0
        /// <summary>
        /// Generates an GeoJson (.geojson) file with the spatial filter.
        /// </summary>
        /// <returns>A .geojson file.</returns>
        public FileResult SpatialFilterAsGeoJson()
        {
            FeatureCollection featureCollection;

            try
            {
                SpatialFilterViewManager viewManager = new SpatialFilterViewManager(GetCurrentUser(), SessionHandler.MySettings);
                featureCollection     = viewManager.GetSpatialFilterAsFeatureCollection();
                featureCollection.CRS = new NamedCRS(SessionHandler.MySettings.Presentation.Map.PresentationCoordinateSystemId.EpsgCode());
            }
            catch (Exception)
            {
                throw;
            }

            SetServerDone();
            string geojson = JsonConvert.SerializeObject(featureCollection, JsonHelper.GetDefaultJsonSerializerSettings());

            byte[] bytes = System.Text.Encoding.UTF8.GetBytes(geojson);
            return(File(
                       bytes,
                       "application/json",
                       FilenameGenerator.CreateFilename("SpatialFilter", FileType.GeoJSON)));
        }
 public ShouldMatchConfigurationBuilder WithFilenameGenerator(FilenameGenerator filenameGenerator)
 {
     return(Configure(c => c.FilenameGenerator = filenameGenerator));
 }
Exemplo n.º 25
0
 protected override string GenerateFilename()
 {
     return(FilenameGenerator.GenerateFilename(this._fieldInfo));
 }
Exemplo n.º 26
0
 protected override void Act()
 {
     Sut = new FilenameGenerator(FilenameConstructer);
 }
Exemplo n.º 27
0
 public void It_Should_Create_File()
 {
     FilenameGenerator.AssertWasCalled(x => x.Generate());
 }
Exemplo n.º 28
0
 protected override string GenerateFilename()
 {
     return(FilenameGenerator.GenerateNamespaceFilename(this._namespaceName));
 }
Exemplo n.º 29
0
 protected override string GenerateFilename()
 {
     return(FilenameGenerator.GenerateFilename(this._versionType));
 }
Exemplo n.º 30
0
 protected override void Act()
 {
     Sut = new FilenameGenerator(FilenameConstructer);
 }
Exemplo n.º 31
0
        public void Write()
        {
            var filename = Path.Combine(Artifacts.OutputFolder, GenerateFilepath(), GenerateFilename());

            try
            {
                RootRelativePath = ComputeRelativePathToRoot(filename);
            }
            catch (PathTooLongException)
            {
                Console.WriteLine("Path is too long for file : {0}", filename);
                throw;
            }

            var directory = new FileInfo(filename).Directory.FullName;

            if (!Directory.Exists(directory))
            {
                Console.WriteLine("\t\tcreating directory: {0}", directory);
                Directory.CreateDirectory(directory);
            }

            using (var writer = new StringWriter())
            {
                writer.WriteLine("<html>");
                writer.WriteLine("<head>");
                writer.WriteLine("<meta http-equiv=\"X-UA-Compatible\" content=\"IE=edge\"/>");

                writer.WriteLine("<link rel=\"stylesheet\" type=\"text/css\" href=\"{0}/resources/style.css\"/>", RootRelativePath);
                writer.WriteLine("<link rel=\"stylesheet\" type=\"text/css\" href=\"{0}/resources/syntaxhighlighter/shCore.css\">", RootRelativePath);
                writer.WriteLine("<link rel=\"stylesheet\" type=\"text/css\" href=\"{0}/resources/syntaxhighlighter/shThemeDefault.css\">", RootRelativePath);
                writer.WriteLine("<link rel=\"stylesheet\" type=\"text/css\" href=\"{0}/resources/sdkstyle.css\"/>", RootRelativePath);

                // every page needs a title, meta description and canonical url to satisfy indexing. The summary/synopsis
                // text for an element has proven unreliable as a useful source for info the search results so stay with
                // the page title for now
                writer.WriteLine("<meta name=\"description\" content=\"{0}\">", GetTitle());
                writer.WriteLine("<title>{0} | AWS SDK for .NET V3</title>", GetTitle());
                writer.WriteLine("<script type=\"text/javascript\" src=\"/assets/js/awsdocs-boot.js\"></script>");
                writer.WriteLine("<link rel=\"canonical\" href=\"http://docs.aws.amazon.com/sdkfornet/v3/apidocs/index.html?page={0}&tocid={1}\"/>",
                                 FilenameGenerator.Escape(this.GenerateFilename()),
                                 FilenameGenerator.Escape(this.GetTOCID()));

                writer.WriteLine("</head>");

                writer.WriteLine("<body>");

                // every page needs two hidden divs giving the search indexer the product title and guide name
                writer.WriteLine("<div id=\"product_name\">AWS SDK Version 3 for .NET</div>");
                writer.WriteLine("<div id=\"guide_name\">API Reference</div>");

                WriteRegionDisclaimer(writer);

                this.WriteHeader(writer);
                this.WriteToolbar(writer);

                writer.WriteLine("<div id=\"pageContent\">");
                this.WriteContent(writer);
                writer.WriteLine("</div>");

                this.WriteFooter(writer);

                writer.WriteLine("</body>");
                writer.WriteLine("</html>");

                // normalize all line endings so any docs committed into Git present a consistent
                // set of line terminators for core.autocrlf to work with
                var content = new StringBuilder(writer.ToString());
                content.Replace("\r\n", "\n").Replace("\n", "\r\n");

                using (var fileWriter = new StreamWriter(filename))
                {
                    fileWriter.Write(content);
                }
            }
        }