In this section

Site navigation below

The Code Style site has evolved by gradual refinement and accumulation of features and content. This review is part of a fully backdated site log and archive that sheds light on when, why and how particular features were implemented.

This log is sometimes updated several times per week, sometimes with a long overdue backlog of items. Many log entries refer to the Code Style Java package that delivers the servlet services and utilities used to manage this site.

Subscribe to the news feed for this log: RSS news feed

Reverse chronology

Expandable menu preparations for FAQs, 30th June 2007

Added Category interface methods to get sorted sets of FAQ questions by various parameters getQuestionSet(), getQuestionSet(Date), getQuestionSetBySubject(String). Included some private methods in the FaqCategory implementation to get and compare Calendar instances: getCalendar(Date) and isSameDay(Calendar, Calendar).

Added a hasPremiumAnswer() method to the Question interface and FaqQuestion implementation. Also added getIssuedDate() and setIssuedDate(Date) methods to the Section interface and FaqSection implementation. Updated the FaqEditor application to load the issued date data, even though it is not editable through the Swing interface.

Created a working draft FAQRenderer class to work towards heirarchical rendering of FAQ navigation. Initial implementation only outputs FAQ sections.

Added JavaDoc comments to the working draft of DocumentMetadata.

Added draft styles to CSStdLiveryCommon.css and icon images to create an expandable menu format for the Help & FAQ section menu.

ul.FAQ {
  list-style-type:  none;
  padding-left:     0em;
  margin-left:      0em;
}
ul.FAQ li.Collapsed {
  background-image: url(/images/icon-Plus.png);
  background-repeat: no-repeat;
  background-position: 1px 0.3em;
  padding-left:     15px;
  margin-left:      -6px;
}
ul.FAQ li.Childless,
ul.FAQ li.Expanded {
  background-image: url(/images/icon-Minus.png);
  background-repeat: no-repeat;
  background-position: 1px 0.3em;
  margin-left:      -6px;
  padding-left:     15px;
}
      

Also checked in working draft Term interface and Swing SubjectTerm implementation for modular management of FAQ subject classifications.

Heirarchical IPMap output correction, 29th June 2007

Corrected IP node processing in the IPMap class to prevent redundant output of full IP addresses when their second level node is already represented. Also optimised the Iterator loop in the getMapIndex(int) method so that it breaks when the int threshold is met.

Created an AbstractAdSelector from the core of the original TextAdSelector servlet and added a set of template methods to support custom subclasses: getHeaderText(), getSelectorSummary(), getSelectorCaption(), getAnnualItemName(), getMonthlyItemName(). Extended TextAdSelector and created a new CycledAdSelector servlet from AbstractAdSelector and implemented all abstract methods.

New FAQs, archived FAQ announcements, 23rd June 2007

Added a number of answers to the standard FAQ pages and created a new FAQ archive page to link to announcement pages for all previous FAQs.

CSS problems

JDBC

Java objects

Java servlet "how to"

Java servlets

Javascript "how to"

Servlet containers

Moved the SQL transaction statements, BEGIN WORK; and COMMIT WORK;, in the applet font survey submission template to enclose each new font so that Unicode character encoding errors for individual fonts do not affect other valid font name submissions.

Downloaded and processed the latest font survey submissions and results, but did not update the site. Created a new SQL script to count the FAQ questions answered per year and number of premium content answers too.

Text ad order selection servlet, 16th June 2007

Refactored AbstractTemplateServlet class to introduce separate getTemplateConfig(ServletConfig) and doServletInit(ServletConfig) template methods for standard initialization tasks. Added empty versions of the doServletInit() method to FontSampler, ViewSequence and EchoRequest servlets.

Created a new TextAdSelector servlet extended from AbstractTemplateServlet to select text ad service area selections. Multiple selections are abbreviated and passed through PayPal via a hidden custom field.

Font survey and FAQ housekeeping, 9th June 2007

Updated the font survey results and corrected the sort order for servlet and servlet containers in the Help & FAQs navigation bar. Applied updates to various other question's asked count figures. Reduced the size of the backup file threshold for font survey notification requests.

Basic SpellingChecker class, 6th June 2007

Created a working draft SpellingChecker class to answer a new FAQ question on the subject. The class uses a StreamTokenizer to parse dictionary word lists into a LinkedList and the same technique to identify words from the input. A short list of checked words is used to short-circuit the look-up process and un-matched words are listed with their line number on the console output. Also answered a number of other FAQs.

JDBC

Java Server Pages

Java abstract classes

Java command line

Java interface design

Java programming

Java servlet "how to"

Java servlet API

Java servlets

Java strings

Java utility classes

Servlet containers

Servlet exceptions

Servlet lifecycle

Tomcat configuration

Downloaded SCOWL dictionary word lists from Kevin's Word List Page (part of the GNU Aspell project) and created a custom.10 word list for Code Style to test the new SpellingChecker class.

Previously on Code Style

These backdated pages record detailed changes to the Code Style Web site since July 2000, when development first got underway. Some pages may refer to documents or features that have since changed or are no longer part of the site, but the archive is checked to ensure there are no dead links.

Add this page to your chosen social bookmarking service

Style warning - please read

Home · CSS · Java · Javascript · HTML · Help · Log