swing2/5.Code Inspection/CodeInspection.lyx
2017-02-03 16:57:28 +01:00

4999 lines
84 KiB
Plaintext

#LyX 2.2 created this file. For more info see http://www.lyx.org/
\lyxformat 508
\begin_document
\begin_header
\save_transient_properties true
\origin unavailable
\textclass article
\use_default_options true
\maintain_unincluded_children false
\language english
\language_package default
\inputencoding auto
\fontencoding global
\font_roman "default" "default"
\font_sans "default" "default"
\font_typewriter "default" "default"
\font_math "auto" "auto"
\font_default_family default
\use_non_tex_fonts false
\font_sc false
\font_osf false
\font_sf_scale 100 100
\font_tt_scale 100 100
\graphics default
\default_output_format default
\output_sync 0
\bibtex_command default
\index_command default
\float_placement H
\paperfontsize default
\spacing single
\use_hyperref false
\papersize default
\use_geometry true
\use_package amsmath 1
\use_package amssymb 1
\use_package cancel 1
\use_package esint 1
\use_package mathdots 1
\use_package mathtools 1
\use_package mhchem 1
\use_package stackrel 1
\use_package stmaryrd 1
\use_package undertilde 1
\cite_engine basic
\cite_engine_type default
\biblio_style plain
\use_bibtopic false
\use_indices false
\paperorientation portrait
\suppress_date false
\justification true
\use_refstyle 1
\index Index
\shortcut idx
\color #008000
\end_index
\leftmargin 2cm
\topmargin 2cm
\rightmargin 2cm
\bottommargin 2cm
\secnumdepth 3
\tocdepth 3
\paragraph_separation indent
\paragraph_indentation default
\quotes_language english
\papercolumns 1
\papersides 1
\paperpagestyle default
\tracking_changes false
\output_changes false
\html_math_output 0
\html_css_as_file 0
\html_be_strict false
\end_header
\begin_body
\begin_layout Standard
\begin_inset ERT
status open
\begin_layout Plain Layout
\backslash
begin{titlepage}
\end_layout
\end_inset
\end_layout
\begin_layout Standard
\begin_inset ERT
status open
\begin_layout Plain Layout
\end_layout
\begin_layout Plain Layout
\backslash
newcommand{
\backslash
HRule}{
\backslash
rule{
\backslash
linewidth}{0.5mm}}
\end_layout
\begin_layout Plain Layout
\backslash
center
\end_layout
\begin_layout Plain Layout
\backslash
textsc{
\backslash
LARGE Politecnico di Milano}
\backslash
\backslash
[1.5cm]
\backslash
textsc{
\backslash
Large PowerEnjoy}
\backslash
\backslash
[0.5cm]
\end_layout
\begin_layout Plain Layout
\backslash
textsc{
\backslash
Large Software Engineering 2}
\backslash
\backslash
[0.5cm]
\end_layout
\begin_layout Plain Layout
\end_layout
\begin_layout Plain Layout
\backslash
HRule
\backslash
\backslash
[0.4cm] {
\backslash
huge
\backslash
bfseries Code Inspection}
\backslash
\backslash
[0.4cm]
\backslash
HRule
\backslash
\backslash
[1.5cm]
\end_layout
\begin_layout Plain Layout
\backslash
begin{minipage}{0.4
\backslash
textwidth}
\backslash
begin{flushleft}
\backslash
large
\backslash
emph{Authors:}
\backslash
\backslash
Giancarlo
\backslash
textsc{Colaci}
\backslash
newline Giulio
\backslash
textsc{De Pasquale}
\backslash
newline Francesco
\backslash
textsc{Rinaldi}
\backslash
end{flushleft}
\backslash
end{minipage} ~
\backslash
begin{minipage}{0.4
\backslash
textwidth}
\backslash
begin{flushright}
\backslash
large
\backslash
emph{Supervisor:}
\backslash
\backslash
Elisabetta
\backslash
textsc{De Nitto}
\backslash
end{flushright}
\backslash
end{minipage}
\backslash
\backslash
[3cm]
\end_layout
\begin_layout Plain Layout
\end_layout
\end_inset
\end_layout
\begin_layout Standard
\begin_inset Graphics
filename res/logopm.pdf
width 30text%
\end_inset
\end_layout
\begin_layout Standard
\begin_inset ERT
status open
\begin_layout Plain Layout
\backslash
vfill
\end_layout
\begin_layout Plain Layout
{
\backslash
large
\backslash
today}
\backslash
\backslash
[3cm]
\end_layout
\end_inset
\end_layout
\begin_layout Standard
\begin_inset ERT
status open
\begin_layout Plain Layout
\backslash
end{titlepage}
\end_layout
\end_inset
\begin_inset Newpage newpage
\end_inset
\end_layout
\begin_layout Standard
\begin_inset ERT
status open
\begin_layout Plain Layout
\backslash
mbox{}
\backslash
thispagestyle{empty}
\backslash
newpage
\end_layout
\end_inset
\end_layout
\begin_layout Standard
\begin_inset Newpage newpage
\end_inset
\end_layout
\begin_layout Standard
\begin_inset CommandInset toc
LatexCommand tableofcontents
\end_inset
\end_layout
\begin_layout Standard
\begin_inset FloatList table
\end_inset
\end_layout
\begin_layout Standard
\begin_inset ERT
status open
\begin_layout Plain Layout
\backslash
thispagestyle{empty}
\end_layout
\end_inset
\end_layout
\begin_layout Standard
\begin_inset Newpage newpage
\end_inset
\end_layout
\begin_layout Standard
\begin_inset ERT
status open
\begin_layout Plain Layout
\backslash
setcounter{page}{1}
\end_layout
\end_inset
\end_layout
\begin_layout Section
Introduction
\end_layout
\begin_layout Subsection
Revision History
\end_layout
\begin_layout Standard
\align center
\begin_inset Tabular
<lyxtabular version="3" rows="2" columns="4">
<features tabularvalignment="middle">
<column alignment="center" valignment="top" width="0pt">
<column alignment="center" valignment="top">
<column alignment="center" valignment="top">
<column alignment="center" valignment="top" width="0pt">
<row topspace="2pt" bottomspace="2pt">
<cell alignment="center" valignment="top" topline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
Version
\end_layout
\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
Date
\end_layout
\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
Author(s)
\end_layout
\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
Summary
\end_layout
\end_inset
</cell>
</row>
<row topspace="2pt" bottomspace="2pt">
<cell alignment="center" valignment="top" topline="true" bottomline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
1.0
\end_layout
\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" bottomline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
05/02/2017
\end_layout
\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" bottomline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
Giancarlo Colaci, Giulio De Pasquale, Francesco Rinaldi
\end_layout
\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" bottomline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
Initial Release
\end_layout
\end_inset
</cell>
</row>
</lyxtabular>
\end_inset
\end_layout
\begin_layout Section
Overview
\end_layout
\begin_layout Subsection
Classes Description
\end_layout
\begin_layout Standard
We were given three different classes:
\family typewriter
ProductConfigItemContentWrapper
\family default
,
\family typewriter
SeoTransform
\family default
and
\family typewriter
UrlRegexpTransform
\family default
.
\end_layout
\begin_layout Standard
All these classes are located in
\begin_inset Quotes eld
\end_inset
http://mirror.nohup.it/apache/ofbiz/apache-ofbiz-16.11.01.zip
\begin_inset Quotes erd
\end_inset
, where we can find the source code of Apache OFBiz.
\end_layout
\begin_layout Standard
Every class is pretty self-explanatory:
\family typewriter
ProductConfigItemContentWrapper
\family default
gets a product content to display while both
\family typewriter
SeoTransform
\family default
and
\family typewriter
UrlRegexpTransform
\family default
rely on the Freemarker template engine to parse and edit URIs
\family typewriter
.
\end_layout
\begin_layout Standard
***Preso da wikipedia, quindi un po' bisogna cambiare le parole***
\end_layout
\begin_layout Standard
Apache OFBiz is a framework that provides a common data model and a rich
set of business process.
All applications are built around a common architecture using common data,
logic and process components.
\end_layout
\begin_layout Standard
All of Apache OFBiz functionality is built on a common framework.
The functionality can be divided into the following distinct layers:
\end_layout
\begin_layout Itemize
Presentation Layer: Apache OFBiz uses the concept of "screens" to represent
the Apache OFBiz pages.
Each page is, normally, represented as a screen.
A page in Apache OFBiz consists of components.
When the page is rendered all the components are combined together as specified
in the screen definition.
\end_layout
\begin_layout Itemize
Business Layer: The business, or application layer defines services provided
to the user.
The services can be of several types: Java methods, SOAP, simple services,
workflow, etc.
A service engine is responsible for invocation, transactions and security.
\end_layout
\begin_layout Itemize
Data Layer: The data layer is responsible for database access, storage and
providing a common data interface to the Business layer.
Data is accessed not in Object Oriented fashion but in a relational way.
Each entity is provided to the business layer as a set of generic values.
A generic value is not typed, so fields of an entity are accessed by the
column name.
\end_layout
\begin_layout Subsection
Functional Roles
\end_layout
\begin_layout Section
Issues
\end_layout
\begin_layout Standard
\begin_inset Float table
wide false
sideways false
status collapsed
\begin_layout Plain Layout
\begin_inset Tabular
<lyxtabular version="3" rows="8" columns="4">
<features tabularvalignment="middle" tabularwidth="100text%">
<column alignment="center" valignment="top" width="0pt">
<column alignment="block" valignment="top" width="32text%">
<column alignment="block" valignment="middle" width="31text%">
<column alignment="block" valignment="middle" width="31text%">
<row topspace="2pt" bottomspace="2pt">
<cell alignment="center" valignment="top" bottomline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\series bold
Ref
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\family typewriter
\series bold
ProductConfigItemContentWrapper
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" bottomline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\family typewriter
\series bold
SeoTransform
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\family typewriter
\series bold
UrlRegexpTransform
\end_layout
\end_inset
</cell>
</row>
<row topspace="2pt" bottomspace="2pt">
<cell alignment="center" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\series bold
1
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" topline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
L136: The method
\shape italic
seoUrl
\shape default
should be called
\shape italic
getTransformedSeoUrl
\shape default
in order to better explain the performed action
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" topline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
L138: The method
\shape italic
seoUrl
\shape default
should be called
\shape italic
getTransformedSeoUrl
\shape default
in order to better explain the performed action
\end_layout
\end_inset
</cell>
</row>
<row topspace="2pt" bottomspace="2pt">
<cell alignment="center" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\series bold
2
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
</row>
<row topspace="2pt" bottomspace="2pt">
<cell alignment="center" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\series bold
3
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
</row>
<row topspace="2pt" bottomspace="2pt">
<cell alignment="center" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\series bold
4
\end_layout
\end_inset
</cell>
<cell alignment="center" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
<cell alignment="center" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
<cell alignment="center" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
</row>
<row topspace="2pt" bottomspace="2pt">
<cell alignment="center" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\series bold
5
\end_layout
\end_inset
</cell>
<cell alignment="center" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
<cell alignment="center" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
L136: The method
\shape italic
seoUrl
\shape default
should be called
\shape italic
getTransformedSeoUrl
\shape default
because a method should always start with a verb
\end_layout
\end_inset
</cell>
<cell alignment="center" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
L138: The method
\shape italic
seoUrl
\shape default
should be called
\shape italic
getTransformedSeoUrl
\shape default
because a method should always start with a verb
\end_layout
\end_inset
</cell>
</row>
<row topspace="2pt" bottomspace="2pt">
<cell alignment="center" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\series bold
6
\end_layout
\end_inset
</cell>
<cell alignment="center" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
<cell alignment="center" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
<cell alignment="center" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
</row>
<row topspace="2pt" bottomspace="2pt">
<cell alignment="center" valignment="top" bottomline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\series bold
7
\end_layout
\end_inset
</cell>
<cell alignment="center" valignment="top" bottomline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
<cell alignment="center" valignment="top" bottomline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
<cell alignment="center" valignment="top" bottomline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
</row>
</lyxtabular>
\end_inset
\end_layout
\begin_layout Plain Layout
\align center
\begin_inset Caption Standard
\begin_layout Plain Layout
Naming Conventions
\end_layout
\end_inset
\end_layout
\end_inset
\end_layout
\begin_layout Standard
\begin_inset Float table
wide false
sideways false
status collapsed
\begin_layout Plain Layout
\begin_inset Tabular
<lyxtabular version="3" rows="3" columns="4">
<features tabularvalignment="middle" tabularwidth="100text%">
<column alignment="center" valignment="top" width="0pt">
<column alignment="block" valignment="top" width="32text%">
<column alignment="block" valignment="middle" width="31text%">
<column alignment="block" valignment="middle" width="31text%">
<row topspace="2pt" bottomspace="2pt">
<cell alignment="center" valignment="top" bottomline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\series bold
Ref
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\family typewriter
\series bold
ProductConfigItemContentWrapper
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" bottomline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\family typewriter
\series bold
SeoTransform
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\family typewriter
\series bold
UrlRegexpTransform
\end_layout
\end_inset
</cell>
</row>
<row topspace="2pt" bottomspace="2pt">
<cell alignment="center" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\series bold
8
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" topline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
L169-174: They split the
\shape italic
productConfigItemContent
\shape default
definition into 6 different lines (adding 8 spaces at the beginning of
each line) in order to obtain a more readable instruction
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" topline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
</row>
<row topspace="2pt" bottomspace="2pt">
<cell alignment="center" valignment="top" bottomline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\series bold
9
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" bottomline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" bottomline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" bottomline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
</row>
</lyxtabular>
\end_inset
\end_layout
\begin_layout Plain Layout
\align center
\begin_inset Caption Standard
\begin_layout Plain Layout
Indention
\end_layout
\end_inset
\end_layout
\end_inset
\end_layout
\begin_layout Standard
\begin_inset Float table
wide false
sideways false
status collapsed
\begin_layout Plain Layout
\begin_inset Tabular
<lyxtabular version="3" rows="3" columns="4">
<features tabularvalignment="middle" tabularwidth="100text%">
<column alignment="center" valignment="top" width="0pt">
<column alignment="block" valignment="top" width="32text%">
<column alignment="block" valignment="middle" width="31text%">
<column alignment="block" valignment="middle" width="31text%">
<row topspace="2pt" bottomspace="2pt">
<cell alignment="center" valignment="top" bottomline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\series bold
Ref
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\family typewriter
\series bold
ProductConfigItemContentWrapper
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" bottomline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\family typewriter
\series bold
SeoTransform
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\family typewriter
\series bold
UrlRegexpTransform
\end_layout
\end_inset
</cell>
</row>
<row topspace="2pt" bottomspace="2pt">
<cell alignment="center" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\series bold
10
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" topline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" topline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
</row>
<row topspace="2pt" bottomspace="2pt">
<cell alignment="center" valignment="top" bottomline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\series bold
11
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" bottomline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" bottomline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" bottomline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
</row>
</lyxtabular>
\end_inset
\end_layout
\begin_layout Plain Layout
\align center
\begin_inset Caption Standard
\begin_layout Plain Layout
Braces
\end_layout
\end_inset
\end_layout
\end_inset
\end_layout
\begin_layout Standard
\begin_inset Float table
wide false
sideways false
status collapsed
\begin_layout Plain Layout
\begin_inset Tabular
<lyxtabular version="3" rows="4" columns="4">
<features tabularvalignment="middle" tabularwidth="100text%">
<column alignment="center" valignment="top" width="0pt">
<column alignment="block" valignment="top" width="32text%">
<column alignment="block" valignment="middle" width="31text%">
<column alignment="block" valignment="middle" width="31text%">
<row topspace="2pt" bottomspace="2pt">
<cell alignment="center" valignment="top" bottomline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\series bold
Ref
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\family typewriter
\series bold
ProductConfigItemContentWrapper
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" bottomline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\family typewriter
\series bold
SeoTransform
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\family typewriter
\series bold
UrlRegexpTransform
\end_layout
\end_inset
</cell>
</row>
<row topspace="2pt" bottomspace="2pt">
<cell alignment="center" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\series bold
12
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" topline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" topline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
</row>
<row topspace="2pt" bottomspace="2pt">
<cell alignment="center" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\series bold
13
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
L55 (89), L57 (131 without comment, 181 with it), L68 (148), L72 (139),
L82 (105), L89 (139), L92 (81), L93 (188), L105 (99), L110 (171), L111
(91), L112 (159), L113 (192), L116 (186), L117 (137), L120 (226), L122
(86), L123 (197), L130 (156), L133 (146), L142 (102), L143 (152), L146
(102), L147 (152), L152 (280), L153 (159), L156 (295), L166 (133), L169
(103), L170 (101), L176 (153 only comment), L179 (81), L180 (180), L184
(86), L185 (92), L188 (145), L191 (89)
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
L88 (98), L89 (102), L92 (85), L95 (99), L98 (107), L102 (100), L103 (136),
L106 (82), L138 (114), L139 (88), L154 (104), L155 (109), L166 (82), L169
(102), L178 (103)
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
L88 (98), L89 (102), L92 (85), L95 (99), L98 (107), L102 (100), L103 (159),
L106 (82), L140 (114), L141 (88), L156 (104), L157 (109), L168 (82), L171
(102), L180 (103), L191 (113) (only comment), L197 (81), L201 (141), L202
(88), L206 (86), L209 (102), L213 (88)
\end_layout
\end_inset
</cell>
</row>
<row topspace="2pt" bottomspace="2pt">
<cell alignment="center" valignment="top" bottomline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\series bold
14
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" bottomline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
L57 (131 with comment, 181 without it), L68 (148), L72 (139), L89 (139),
L93 (188), L110 (171), L112 (159), L113 (192), L116 (186), L117 (137),
L120 (226), L123 (197), L130 (156), L133 (146), L143 (152), L147 (152),
L152 (280), L153 (159), L156 (295), L166 (133),L176 (153 only comment),
L180 (180), L188 (145)
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" bottomline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
L103 (136)
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" bottomline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
L103 (159), L201 (141)
\end_layout
\end_inset
</cell>
</row>
</lyxtabular>
\end_inset
\end_layout
\begin_layout Plain Layout
\align center
\begin_inset Caption Standard
\begin_layout Plain Layout
File Organization
\end_layout
\end_inset
\end_layout
\end_inset
\end_layout
\begin_layout Standard
\begin_inset Float table
wide false
sideways false
status collapsed
\begin_layout Plain Layout
\begin_inset Tabular
<lyxtabular version="3" rows="4" columns="4">
<features tabularvalignment="middle" tabularwidth="100text%">
<column alignment="center" valignment="top" width="0pt">
<column alignment="block" valignment="top" width="32text%">
<column alignment="block" valignment="middle" width="31text%">
<column alignment="block" valignment="middle" width="31text%">
<row topspace="2pt" bottomspace="2pt">
<cell alignment="center" valignment="top" bottomline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\series bold
Ref
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\family typewriter
\series bold
ProductConfigItemContentWrapper
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" bottomline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\family typewriter
\series bold
SeoTransform
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\family typewriter
\series bold
UrlRegexpTransform
\end_layout
\end_inset
</cell>
</row>
<row topspace="2pt" bottomspace="2pt">
<cell alignment="center" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\series bold
15
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" topline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" topline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
</row>
<row topspace="2pt" bottomspace="2pt">
<cell alignment="center" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\series bold
16
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
</row>
<row topspace="2pt" bottomspace="2pt">
<cell alignment="center" valignment="top" bottomline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\series bold
17
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" bottomline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" bottomline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" bottomline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
</row>
</lyxtabular>
\end_inset
\end_layout
\begin_layout Plain Layout
\align center
\begin_inset Caption Standard
\begin_layout Plain Layout
Wrapping Lines
\end_layout
\end_inset
\end_layout
\end_inset
\end_layout
\begin_layout Standard
\begin_inset Float table
wide false
sideways false
status collapsed
\begin_layout Plain Layout
\begin_inset Tabular
<lyxtabular version="3" rows="3" columns="4">
<features tabularvalignment="middle" tabularwidth="100text%">
<column alignment="center" valignment="top" width="0pt">
<column alignment="block" valignment="top" width="32text%">
<column alignment="block" valignment="middle" width="31text%">
<column alignment="block" valignment="middle" width="31text%">
<row topspace="2pt" bottomspace="2pt">
<cell alignment="center" valignment="top" bottomline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\series bold
Ref
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\family typewriter
\series bold
ProductConfigItemContentWrapper
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" bottomline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\family typewriter
\series bold
SeoTransform
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\family typewriter
\series bold
UrlRegexpTransform
\end_layout
\end_inset
</cell>
</row>
<row topspace="2pt" bottomspace="2pt">
<cell alignment="center" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\series bold
18
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" topline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
Very few comments about class, interface, methods, and blocks of code
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
Very few comments about class, interface, methods, and blocks of code
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" topline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
Very few comments about class, interface, methods, and blocks of code
\end_layout
\end_inset
</cell>
</row>
<row topspace="2pt" bottomspace="2pt">
<cell alignment="center" valignment="top" bottomline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\series bold
19
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" bottomline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" bottomline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" bottomline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
</row>
</lyxtabular>
\end_inset
\end_layout
\begin_layout Plain Layout
\align center
\begin_inset Caption Standard
\begin_layout Plain Layout
Comments
\end_layout
\end_inset
\end_layout
\end_inset
\end_layout
\begin_layout Standard
\begin_inset Float table
wide false
sideways false
status collapsed
\begin_layout Plain Layout
\begin_inset Tabular
<lyxtabular version="3" rows="5" columns="4">
<features tabularvalignment="middle" tabularwidth="100text%">
<column alignment="center" valignment="top" width="0pt">
<column alignment="block" valignment="top" width="32text%">
<column alignment="block" valignment="middle" width="31text%">
<column alignment="block" valignment="middle" width="31text%">
<row topspace="2pt" bottomspace="2pt">
<cell alignment="center" valignment="top" bottomline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\series bold
Ref
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\family typewriter
\series bold
ProductConfigItemContentWrapper
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" bottomline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\family typewriter
\series bold
SeoTransform
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\family typewriter
\series bold
UrlRegexpTransform
\end_layout
\end_inset
</cell>
</row>
<row topspace="2pt" bottomspace="2pt">
<cell alignment="center" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\series bold
20
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" topline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" topline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
</row>
<row topspace="2pt" bottomspace="2pt">
<cell alignment="center" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\series bold
21
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
</row>
<row topspace="2pt" bottomspace="2pt">
<cell alignment="center" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\series bold
22
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
</row>
<row topspace="2pt" bottomspace="2pt">
<cell alignment="center" valignment="top" bottomline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\series bold
23
\end_layout
\end_inset
</cell>
<cell alignment="center" valignment="top" bottomline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
The
\shape italic
Javadoc
\shape default
is totally missing
\end_layout
\end_inset
</cell>
<cell alignment="center" valignment="top" bottomline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
The
\shape italic
Javadoc
\shape default
is (almost) totally missing
\end_layout
\end_inset
</cell>
<cell alignment="center" valignment="top" bottomline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
The
\shape italic
Javadoc
\shape default
is (almost) totally missing
\end_layout
\end_inset
</cell>
</row>
</lyxtabular>
\end_inset
\end_layout
\begin_layout Plain Layout
\align center
\begin_inset Caption Standard
\begin_layout Plain Layout
Java Source Files
\end_layout
\end_inset
\end_layout
\end_inset
\end_layout
\begin_layout Standard
\begin_inset Float table
wide false
sideways false
status collapsed
\begin_layout Plain Layout
\begin_inset Tabular
<lyxtabular version="3" rows="2" columns="4">
<features tabularvalignment="middle" tabularwidth="100text%">
<column alignment="center" valignment="top" width="0pt">
<column alignment="block" valignment="top" width="32text%">
<column alignment="block" valignment="middle" width="31text%">
<column alignment="block" valignment="middle" width="31text%">
<row topspace="2pt" bottomspace="2pt">
<cell alignment="center" valignment="top" bottomline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\series bold
Ref
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\family typewriter
\series bold
ProductConfigItemContentWrapper
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" bottomline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\family typewriter
\series bold
SeoTransform
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\family typewriter
\series bold
UrlRegexpTransform
\end_layout
\end_inset
</cell>
</row>
<row topspace="2pt" bottomspace="2pt">
<cell alignment="center" valignment="top" bottomline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\series bold
24
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" topline="true" bottomline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" bottomline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" topline="true" bottomline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
</row>
</lyxtabular>
\end_inset
\end_layout
\begin_layout Plain Layout
\align center
\begin_inset Caption Standard
\begin_layout Plain Layout
Package and Import Statements
\end_layout
\end_inset
\end_layout
\end_inset
\end_layout
\begin_layout Standard
\begin_inset Float table
wide false
sideways false
status collapsed
\begin_layout Plain Layout
\begin_inset Tabular
<lyxtabular version="3" rows="4" columns="4">
<features tabularvalignment="middle" tabularwidth="100text%">
<column alignment="center" valignment="top" width="0pt">
<column alignment="block" valignment="top" width="32text%">
<column alignment="block" valignment="middle" width="31text%">
<column alignment="block" valignment="middle" width="31text%">
<row topspace="2pt" bottomspace="2pt">
<cell alignment="center" valignment="top" bottomline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\series bold
Ref
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\family typewriter
\series bold
ProductConfigItemContentWrapper
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" bottomline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\family typewriter
\series bold
SeoTransform
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\family typewriter
\series bold
UrlRegexpTransform
\end_layout
\end_inset
</cell>
</row>
<row topspace="2pt" bottomspace="2pt">
<cell alignment="center" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\series bold
25
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" topline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
In order to respect the correct order the class implementation comment should
follow the class statement
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
In order to respect the correct order the class implementation comment should
follow the class statement
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" topline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
In order to respect the correct order the class implementation comment should
follow the class statement
\end_layout
\end_inset
</cell>
</row>
<row topspace="2pt" bottomspace="2pt">
<cell alignment="center" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\series bold
26
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
</row>
<row topspace="2pt" bottomspace="2pt">
<cell alignment="center" valignment="top" bottomline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\series bold
27
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" bottomline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" bottomline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
L71: The method
\shape italic
GetWriter
\shape default
returns an encapsulated object, not previously defined
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" bottomline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
L71: The method
\shape italic
GetWriter
\shape default
returns an encapsulated object, not previously defined
\end_layout
\end_inset
</cell>
</row>
</lyxtabular>
\end_inset
\end_layout
\begin_layout Plain Layout
\align center
\begin_inset Caption Standard
\begin_layout Plain Layout
Class and Interface Declarations
\end_layout
\end_inset
\end_layout
\end_inset
\end_layout
\begin_layout Standard
\begin_inset Float table
wide false
sideways false
status collapsed
\begin_layout Plain Layout
\begin_inset Tabular
<lyxtabular version="3" rows="7" columns="4">
<features tabularvalignment="middle" tabularwidth="100text%">
<column alignment="center" valignment="top" width="0pt">
<column alignment="block" valignment="top" width="32text%">
<column alignment="block" valignment="middle" width="31text%">
<column alignment="block" valignment="middle" width="31text%">
<row topspace="2pt" bottomspace="2pt">
<cell alignment="center" valignment="top" bottomline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\series bold
Ref
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\family typewriter
\series bold
ProductConfigItemContentWrapper
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" bottomline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\family typewriter
\series bold
SeoTransform
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\family typewriter
\series bold
UrlRegexpTransform
\end_layout
\end_inset
</cell>
</row>
<row topspace="2pt" bottomspace="2pt">
<cell alignment="center" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\series bold
28
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" topline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" topline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
</row>
<row topspace="2pt" bottomspace="2pt">
<cell alignment="center" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\series bold
29
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
</row>
<row topspace="2pt" bottomspace="2pt">
<cell alignment="center" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\series bold
30
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
</row>
<row topspace="2pt" bottomspace="2pt">
<cell alignment="center" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\series bold
31
\end_layout
\end_inset
</cell>
<cell alignment="center" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
<cell alignment="center" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
<cell alignment="center" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
</row>
<row topspace="2pt" bottomspace="2pt">
<cell alignment="center" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\series bold
32
\end_layout
\end_inset
</cell>
<cell alignment="center" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
<cell alignment="center" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
<cell alignment="center" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
</row>
<row topspace="2pt" bottomspace="2pt">
<cell alignment="center" valignment="top" bottomline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\series bold
33
\end_layout
\end_inset
</cell>
<cell alignment="center" valignment="top" bottomline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
L129: The declaration
\shape italic
Writer outWriter = new StringWriter();
\shape default
should be put in the try-catch instruction before the if condition at line
126;
\end_layout
\begin_layout Plain Layout
L131: The declaration
\shape italic
String outString = outWriter.toString();
\shape default
should be put in the try-catch instruction before the if condition at line
126;
\end_layout
\begin_layout Plain Layout
L184: The declaration
\shape italic
String candidateFieldName = ModelUtil.dbNameToVarName(confItemContentTypeId);
\shape default
should be put right after the method getProductConfigItemContentAsText
definition at line 156;
\end_layout
\begin_layout Plain Layout
L185: The declaration
\shape italic
ModelEntity productConfigItemModel = delegator.getModelEntity("ProductConfigItem"
);
\shape default
should be put right after the if condition at line 161;
\end_layout
\end_inset
</cell>
<cell alignment="center" valignment="top" bottomline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
L102: The declaration
\shape italic
RequestHandler rh = (RequestHandler) ctx.getAttribute("_REQUEST_HANDLER_");
\shape default
should be put right after the ServletContext ctx declaration at line 89;
\end_layout
\end_inset
</cell>
<cell alignment="center" valignment="top" bottomline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
L102: The declaration
\shape italic
RequestHandler rh = (RequestHandler) ctx.getAttribute("_REQUEST_HANDLER_");
\shape default
should be put right after the ServletContext ctx declaration at line 89;
\end_layout
\end_inset
</cell>
</row>
</lyxtabular>
\end_inset
\end_layout
\begin_layout Plain Layout
\align center
\begin_inset Caption Standard
\begin_layout Plain Layout
Initialization and Declarations
\end_layout
\end_inset
\end_layout
\end_inset
\end_layout
\begin_layout Standard
\begin_inset Float table
wide false
sideways false
status collapsed
\begin_layout Plain Layout
\begin_inset Tabular
<lyxtabular version="3" rows="4" columns="4">
<features tabularvalignment="middle" tabularwidth="100text%">
<column alignment="center" valignment="top" width="0pt">
<column alignment="block" valignment="top" width="32text%">
<column alignment="block" valignment="middle" width="31text%">
<column alignment="block" valignment="middle" width="31text%">
<row topspace="2pt" bottomspace="2pt">
<cell alignment="center" valignment="top" bottomline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\series bold
Ref
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\family typewriter
\series bold
ProductConfigItemContentWrapper
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" bottomline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\family typewriter
\series bold
SeoTransform
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\family typewriter
\series bold
UrlRegexpTransform
\end_layout
\end_inset
</cell>
</row>
<row topspace="2pt" bottomspace="2pt">
<cell alignment="center" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\series bold
34
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" topline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" topline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
</row>
<row topspace="2pt" bottomspace="2pt">
<cell alignment="center" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\series bold
35
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
</row>
<row topspace="2pt" bottomspace="2pt">
<cell alignment="center" valignment="top" bottomline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\series bold
36
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" bottomline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" bottomline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" bottomline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
</row>
</lyxtabular>
\end_inset
\end_layout
\begin_layout Plain Layout
\align center
\begin_inset Caption Standard
\begin_layout Plain Layout
Method Calls
\end_layout
\end_inset
\end_layout
\end_inset
\end_layout
\begin_layout Standard
\begin_inset Float table
wide false
sideways false
status collapsed
\begin_layout Plain Layout
\begin_inset Tabular
<lyxtabular version="3" rows="4" columns="4">
<features tabularvalignment="middle" tabularwidth="100text%">
<column alignment="center" valignment="top" width="0pt">
<column alignment="block" valignment="top" width="32text%">
<column alignment="block" valignment="middle" width="31text%">
<column alignment="block" valignment="middle" width="31text%">
<row topspace="2pt" bottomspace="2pt">
<cell alignment="center" valignment="top" bottomline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\series bold
Ref
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\family typewriter
\series bold
ProductConfigItemContentWrapper
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" bottomline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\family typewriter
\series bold
SeoTransform
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\family typewriter
\series bold
UrlRegexpTransform
\end_layout
\end_inset
</cell>
</row>
<row topspace="2pt" bottomspace="2pt">
<cell alignment="center" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\series bold
37
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" topline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" topline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
</row>
<row topspace="2pt" bottomspace="2pt">
<cell alignment="center" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\series bold
38
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
</row>
<row topspace="2pt" bottomspace="2pt">
<cell alignment="center" valignment="top" bottomline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\series bold
39
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" bottomline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" bottomline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" bottomline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
</row>
</lyxtabular>
\end_inset
\end_layout
\begin_layout Plain Layout
\align center
\begin_inset Caption Standard
\begin_layout Plain Layout
Arrays
\end_layout
\end_inset
\end_layout
\end_inset
\end_layout
\begin_layout Standard
\begin_inset Float table
wide false
sideways false
status collapsed
\begin_layout Plain Layout
\begin_inset Tabular
<lyxtabular version="3" rows="2" columns="4">
<features tabularvalignment="middle" tabularwidth="100text%">
<column alignment="center" valignment="top" width="0pt">
<column alignment="block" valignment="top" width="32text%">
<column alignment="block" valignment="middle" width="31text%">
<column alignment="block" valignment="middle" width="31text%">
<row topspace="2pt" bottomspace="2pt">
<cell alignment="center" valignment="top" bottomline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\series bold
Ref
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\family typewriter
\series bold
ProductConfigItemContentWrapper
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" bottomline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\family typewriter
\series bold
SeoTransform
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\family typewriter
\series bold
UrlRegexpTransform
\end_layout
\end_inset
</cell>
</row>
<row topspace="2pt" bottomspace="2pt">
<cell alignment="center" valignment="top" bottomline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\series bold
40
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" topline="true" bottomline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" bottomline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" topline="true" bottomline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
</row>
</lyxtabular>
\end_inset
\end_layout
\begin_layout Plain Layout
\align center
\begin_inset Caption Standard
\begin_layout Plain Layout
Object Comparison
\end_layout
\end_inset
\end_layout
\end_inset
\end_layout
\begin_layout Standard
\begin_inset Float table
wide false
sideways false
status collapsed
\begin_layout Plain Layout
\begin_inset Tabular
<lyxtabular version="3" rows="4" columns="4">
<features tabularvalignment="middle" tabularwidth="100text%">
<column alignment="center" valignment="top" width="0pt">
<column alignment="block" valignment="top" width="32text%">
<column alignment="block" valignment="middle" width="31text%">
<column alignment="block" valignment="middle" width="31text%">
<row topspace="2pt" bottomspace="2pt">
<cell alignment="center" valignment="top" bottomline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\series bold
Ref
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\family typewriter
\series bold
ProductConfigItemContentWrapper
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" bottomline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\family typewriter
\series bold
SeoTransform
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\family typewriter
\series bold
UrlRegexpTransform
\end_layout
\end_inset
</cell>
</row>
<row topspace="2pt" bottomspace="2pt">
<cell alignment="center" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\series bold
41
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" topline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" topline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
</row>
<row topspace="2pt" bottomspace="2pt">
<cell alignment="center" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\series bold
42
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
Every error message just notifies the error without providing any guidance
to solve the issue
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
Every error message just notifies the error without providing any guidance
to solve the issue
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
Every error message just notifies the error without providing any guidance
to solve the issue
\end_layout
\end_inset
</cell>
</row>
<row topspace="2pt" bottomspace="2pt">
<cell alignment="center" valignment="top" bottomline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\series bold
43
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" bottomline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" bottomline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" bottomline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
</row>
</lyxtabular>
\end_inset
\end_layout
\begin_layout Plain Layout
\align center
\begin_inset Caption Standard
\begin_layout Plain Layout
Output Format
\end_layout
\end_inset
\end_layout
\end_inset
\end_layout
\begin_layout Standard
\begin_inset Float table
wide false
sideways false
status collapsed
\begin_layout Plain Layout
\begin_inset Tabular
<lyxtabular version="3" rows="9" columns="4">
<features tabularvalignment="middle" tabularwidth="100text%">
<column alignment="center" valignment="top" width="0pt">
<column alignment="block" valignment="top" width="32text%">
<column alignment="block" valignment="middle" width="31text%">
<column alignment="block" valignment="middle" width="31text%">
<row topspace="2pt" bottomspace="2pt">
<cell alignment="center" valignment="top" bottomline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\series bold
Ref
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\family typewriter
\series bold
ProductConfigItemContentWrapper
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" bottomline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\family typewriter
\series bold
SeoTransform
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\family typewriter
\series bold
UrlRegexpTransform
\end_layout
\end_inset
</cell>
</row>
<row topspace="2pt" bottomspace="2pt">
<cell alignment="center" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\series bold
44
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" topline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" topline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
</row>
<row topspace="2pt" bottomspace="2pt">
<cell alignment="center" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\series bold
45
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
</row>
<row topspace="2pt" bottomspace="2pt">
<cell alignment="center" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\series bold
46
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
</row>
<row topspace="2pt" bottomspace="2pt">
<cell alignment="center" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\series bold
47
\end_layout
\end_inset
</cell>
<cell alignment="center" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
<cell alignment="center" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
<cell alignment="center" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
</row>
<row topspace="2pt" bottomspace="2pt">
<cell alignment="center" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\series bold
48
\end_layout
\end_inset
</cell>
<cell alignment="center" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
<cell alignment="center" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
<cell alignment="center" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
</row>
<row topspace="2pt" bottomspace="2pt">
<cell alignment="center" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\series bold
49
\end_layout
\end_inset
</cell>
<cell alignment="center" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
<cell alignment="center" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
<cell alignment="center" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
</row>
<row topspace="2pt" bottomspace="2pt">
<cell alignment="center" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\series bold
50
\end_layout
\end_inset
</cell>
<cell alignment="center" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
<cell alignment="center" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
<cell alignment="center" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
</row>
<row topspace="2pt" bottomspace="2pt">
<cell alignment="center" valignment="top" bottomline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\series bold
51
\end_layout
\end_inset
</cell>
<cell alignment="center" valignment="top" bottomline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None (explicit casts)
\end_layout
\end_inset
</cell>
<cell alignment="center" valignment="top" bottomline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None (explicit casts)
\end_layout
\end_inset
</cell>
<cell alignment="center" valignment="top" bottomline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None (explicit casts)
\end_layout
\end_inset
</cell>
</row>
</lyxtabular>
\end_inset
\end_layout
\begin_layout Plain Layout
\align center
\begin_inset Caption Standard
\begin_layout Plain Layout
Computation, Comparisons and Assignments
\end_layout
\end_inset
\end_layout
\end_inset
\end_layout
\begin_layout Standard
\begin_inset Float table
wide false
sideways false
status collapsed
\begin_layout Plain Layout
\begin_inset Tabular
<lyxtabular version="3" rows="3" columns="4">
<features tabularvalignment="middle" tabularwidth="100text%">
<column alignment="center" valignment="top" width="0pt">
<column alignment="block" valignment="top" width="32text%">
<column alignment="block" valignment="middle" width="31text%">
<column alignment="block" valignment="middle" width="31text%">
<row topspace="2pt" bottomspace="2pt">
<cell alignment="center" valignment="top" bottomline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\series bold
Ref
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\family typewriter
\series bold
ProductConfigItemContentWrapper
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" bottomline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\family typewriter
\series bold
SeoTransform
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\family typewriter
\series bold
UrlRegexpTransform
\end_layout
\end_inset
</cell>
</row>
<row topspace="2pt" bottomspace="2pt">
<cell alignment="center" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\series bold
52
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" topline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
L141: Just a GeneralException is caught;
\end_layout
\begin_layout Plain Layout
L145: Just an IOException is caught;
\end_layout
\begin_layout Plain Layout
L151: Just GeneralException and IOException are caught;
\end_layout
\begin_layout Plain Layout
L156: Just GeneralException and IOException are caught;
\end_layout
\begin_layout Plain Layout
Not all the possible relevant exceptions are caught
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
L77: Just an IOException is caught;
\end_layout
\begin_layout Plain Layout
L81: Just an IOException is caught;
\end_layout
\begin_layout Plain Layout
L121: Just an Exception is caught;
\end_layout
\begin_layout Plain Layout
Not all the possible relevant exceptions are caught
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" topline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
L77: Just an IOException is caught;
\end_layout
\begin_layout Plain Layout
L81: Just an IOException is caught;
\end_layout
\begin_layout Plain Layout
L121: Just an Exception is caught;
\end_layout
\begin_layout Plain Layout
Not all the possible relevant exceptions are caught
\end_layout
\end_inset
</cell>
</row>
<row topspace="2pt" bottomspace="2pt">
<cell alignment="center" valignment="top" bottomline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\series bold
53
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" bottomline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
For all the exceptions written above, the developers only provide a message
without an appropriate action to solve the error
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" bottomline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
For all the exceptions written above, the developers only provide a message
without an appropriate action to solve the error
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" bottomline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
For all the exceptions written above, the developers only provide a message
without an appropriate action to solve the error
\end_layout
\end_inset
</cell>
</row>
</lyxtabular>
\end_inset
\end_layout
\begin_layout Plain Layout
\align center
\begin_inset Caption Standard
\begin_layout Plain Layout
Exceptions
\end_layout
\end_inset
\end_layout
\end_inset
\end_layout
\begin_layout Standard
\begin_inset Float table
wide false
sideways false
status collapsed
\begin_layout Plain Layout
\begin_inset Tabular
<lyxtabular version="3" rows="4" columns="4">
<features tabularvalignment="middle" tabularwidth="100text%">
<column alignment="center" valignment="top" width="0pt">
<column alignment="block" valignment="top" width="32text%">
<column alignment="block" valignment="middle" width="31text%">
<column alignment="block" valignment="middle" width="31text%">
<row topspace="2pt" bottomspace="2pt">
<cell alignment="center" valignment="top" bottomline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\series bold
Ref
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\family typewriter
\series bold
ProductConfigItemContentWrapper
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" bottomline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\family typewriter
\series bold
SeoTransform
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\family typewriter
\series bold
UrlRegexpTransform
\end_layout
\end_inset
</cell>
</row>
<row topspace="2pt" bottomspace="2pt">
<cell alignment="center" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\series bold
54
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" topline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" topline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
</row>
<row topspace="2pt" bottomspace="2pt">
<cell alignment="center" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\series bold
55
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
</row>
<row topspace="2pt" bottomspace="2pt">
<cell alignment="center" valignment="top" bottomline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\series bold
56
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" bottomline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" bottomline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" bottomline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
</row>
</lyxtabular>
\end_inset
\end_layout
\begin_layout Plain Layout
\align center
\begin_inset Caption Standard
\begin_layout Plain Layout
Flow of Control
\end_layout
\end_inset
\end_layout
\end_inset
\end_layout
\begin_layout Standard
\begin_inset Float table
wide false
sideways false
status collapsed
\begin_layout Plain Layout
\begin_inset Tabular
<lyxtabular version="3" rows="5" columns="4">
<features tabularvalignment="middle" tabularwidth="100text%">
<column alignment="center" valignment="top" width="0pt">
<column alignment="block" valignment="top" width="32text%">
<column alignment="block" valignment="middle" width="31text%">
<column alignment="block" valignment="middle" width="31text%">
<row topspace="2pt" bottomspace="2pt">
<cell alignment="center" valignment="top" bottomline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\series bold
Ref
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\family typewriter
\series bold
ProductConfigItemContentWrapper
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" bottomline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\family typewriter
\series bold
SeoTransform
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\family typewriter
\series bold
UrlRegexpTransform
\end_layout
\end_inset
</cell>
</row>
<row topspace="2pt" bottomspace="2pt">
<cell alignment="center" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\series bold
57
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" topline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" topline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
</row>
<row topspace="2pt" bottomspace="2pt">
<cell alignment="center" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\series bold
58
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
</row>
<row topspace="2pt" bottomspace="2pt">
<cell alignment="center" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\series bold
59
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
<cell alignment="block" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
</row>
<row topspace="2pt" bottomspace="2pt">
<cell alignment="center" valignment="top" bottomline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\series bold
60
\end_layout
\end_inset
</cell>
<cell alignment="center" valignment="top" bottomline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
<cell alignment="center" valignment="top" bottomline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
<cell alignment="center" valignment="top" bottomline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
None
\end_layout
\end_inset
</cell>
</row>
</lyxtabular>
\end_inset
\end_layout
\begin_layout Plain Layout
\align center
\begin_inset Caption Standard
\begin_layout Plain Layout
Files [No read and write from/to file]
\end_layout
\end_inset
\end_layout
\end_inset
\end_layout
\begin_layout Standard
\begin_inset Newpage newpage
\end_inset
\end_layout
\begin_layout Section
Appendix
\end_layout
\begin_layout Subsection
Tools used
\end_layout
\begin_layout Standard
We used the following tools to produce this document:
\end_layout
\begin_layout Itemize
\series bold
LaTex
\series default
as typesetting system to write this document
\end_layout
\begin_layout Itemize
\series bold
LyX
\series default
as editor
\end_layout
\begin_layout Subsection
Hours of work
\end_layout
\begin_layout Standard
\align center
\begin_inset Tabular
<lyxtabular version="3" rows="5" columns="4">
<features tabularvalignment="middle">
<column alignment="center" valignment="top" width="0pt">
<column alignment="center" valignment="top" width="0pt">
<column alignment="center" valignment="top">
<column alignment="center" valignment="top">
<row topspace="2pt" bottomspace="2pt">
<cell alignment="center" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\series bold
Date
\end_layout
\end_inset
</cell>
<cell alignment="center" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\series bold
Colaci
\end_layout
\end_inset
</cell>
<cell alignment="center" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\series bold
De Pasquale
\end_layout
\end_inset
</cell>
<cell alignment="center" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
\series bold
Rinaldi
\end_layout
\end_inset
</cell>
</row>
<row topspace="2pt" bottomspace="2pt">
<cell alignment="center" valignment="top" topline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
29/01/17
\end_layout
\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
2
\end_layout
\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
1
\end_layout
\end_inset
</cell>
<cell alignment="center" valignment="top" topline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
1
\end_layout
\end_inset
</cell>
</row>
<row topspace="2pt" bottomspace="2pt">
<cell alignment="center" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
01/02/17
\end_layout
\end_inset
</cell>
<cell alignment="center" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
3
\end_layout
\end_inset
</cell>
<cell alignment="center" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
2
\end_layout
\end_inset
</cell>
<cell alignment="center" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
1
\end_layout
\end_inset
</cell>
</row>
<row topspace="2pt" bottomspace="2pt">
<cell alignment="center" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
03/02/17
\end_layout
\end_inset
</cell>
<cell alignment="center" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
1
\end_layout
\end_inset
</cell>
<cell alignment="center" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
2
\end_layout
\end_inset
</cell>
<cell alignment="center" valignment="top" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
3
\end_layout
\end_inset
</cell>
</row>
<row topspace="2pt" bottomspace="2pt">
<cell alignment="center" valignment="top" bottomline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
05/02/17
\end_layout
\end_inset
</cell>
<cell alignment="center" valignment="top" bottomline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
1
\end_layout
\end_inset
</cell>
<cell alignment="center" valignment="top" bottomline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
1
\end_layout
\end_inset
</cell>
<cell alignment="center" valignment="top" bottomline="true" usebox="none">
\begin_inset Text
\begin_layout Plain Layout
2
\end_layout
\end_inset
</cell>
</row>
</lyxtabular>
\end_inset
\end_layout
\end_body
\end_document