Removed shared_error from CMS_API
Added Missing theme and Missing tempalte classes. Updated CMS_RESPONSE to handle missing template and send a 503 status code with a raw response.
This commit is contained in:
@@ -8,8 +8,6 @@ class
|
|||||||
|
|
||||||
inherit
|
inherit
|
||||||
|
|
||||||
SHARED_ERROR
|
|
||||||
|
|
||||||
REFACTORING_HELPER
|
REFACTORING_HELPER
|
||||||
|
|
||||||
create
|
create
|
||||||
@@ -23,7 +21,6 @@ feature -- Initialize
|
|||||||
setup := a_setup
|
setup := a_setup
|
||||||
create error_handler.make
|
create error_handler.make
|
||||||
initialize
|
initialize
|
||||||
set_successful
|
|
||||||
ensure
|
ensure
|
||||||
setup_set: setup = a_setup
|
setup_set: setup = a_setup
|
||||||
error_handler_set: not error_handler.has_error
|
error_handler_set: not error_handler.has_error
|
||||||
|
|||||||
@@ -20,6 +20,7 @@ feature -- Basic operations
|
|||||||
execute (req: WSF_REQUEST; res: WSF_RESPONSE)
|
execute (req: WSF_REQUEST; res: WSF_RESPONSE)
|
||||||
-- Execute the filter
|
-- Execute the filter
|
||||||
do
|
do
|
||||||
|
fixme ("Check if it's ok to add new fetures CMS_API.has_error:BOOLEAN and CMS_API.error_description.")
|
||||||
if not api.error_handler.has_error then
|
if not api.error_handler.has_error then
|
||||||
log.write_information (generator + ".execute")
|
log.write_information (generator + ".execute")
|
||||||
execute_next (req, res)
|
execute_next (req, res)
|
||||||
|
|||||||
@@ -740,8 +740,9 @@ feature -- Theme
|
|||||||
if l_info.engine.is_case_insensitive_equal_general ("smarty") then
|
if l_info.engine.is_case_insensitive_equal_general ("smarty") then
|
||||||
create {SMARTY_CMS_THEME} theme.make (setup, l_info)
|
create {SMARTY_CMS_THEME} theme.make (setup, l_info)
|
||||||
else
|
else
|
||||||
to_implement ("Add a default SMARTY_CMS_THEME")
|
create {MISSING_CMS_THEME} theme.make (setup)
|
||||||
create {SMARTY_CMS_THEME} theme.make (setup, l_info)
|
status_code := {HTTP_STATUS_CODE}.service_unavailable
|
||||||
|
to_implement ("Check how to add the Retry-after, http://tools.ietf.org/html/rfc7231#section-6.6.4 and http://tools.ietf.org/html/rfc7231#section-7.1.3")
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|||||||
42
library/src/theme/missing_theme/missing_cms_template.e
Normal file
42
library/src/theme/missing_theme/missing_cms_template.e
Normal file
@@ -0,0 +1,42 @@
|
|||||||
|
note
|
||||||
|
description: "Summary description for {MISSING_CMS_TEMPLATE}."
|
||||||
|
author: ""
|
||||||
|
date: "$Date$"
|
||||||
|
revision: "$Revision$"
|
||||||
|
|
||||||
|
class
|
||||||
|
MISSING_CMS_TEMPLATE
|
||||||
|
|
||||||
|
inherit
|
||||||
|
|
||||||
|
CMS_TEMPLATE
|
||||||
|
|
||||||
|
create
|
||||||
|
make
|
||||||
|
|
||||||
|
feature {NONE} -- Implementation
|
||||||
|
|
||||||
|
make ( a_theme: MISSING_CMS_THEME)
|
||||||
|
do
|
||||||
|
theme := a_theme
|
||||||
|
end
|
||||||
|
|
||||||
|
feature -- Access
|
||||||
|
|
||||||
|
theme: MISSING_CMS_THEME
|
||||||
|
|
||||||
|
variables: STRING_TABLE [detachable ANY]
|
||||||
|
do
|
||||||
|
create Result.make (0)
|
||||||
|
end
|
||||||
|
|
||||||
|
prepare (page: CMS_HTML_PAGE)
|
||||||
|
do
|
||||||
|
end
|
||||||
|
|
||||||
|
to_html (page: CMS_HTML_PAGE): STRING
|
||||||
|
do
|
||||||
|
Result := " "
|
||||||
|
end
|
||||||
|
|
||||||
|
end
|
||||||
45
library/src/theme/missing_theme/missing_cms_theme.e
Normal file
45
library/src/theme/missing_theme/missing_cms_theme.e
Normal file
@@ -0,0 +1,45 @@
|
|||||||
|
note
|
||||||
|
description: "Describe a missing theme."
|
||||||
|
date: "$Date$"
|
||||||
|
revision: "$Revision$"
|
||||||
|
|
||||||
|
class
|
||||||
|
MISSING_CMS_THEME
|
||||||
|
|
||||||
|
inherit
|
||||||
|
|
||||||
|
CMS_THEME
|
||||||
|
|
||||||
|
create
|
||||||
|
make
|
||||||
|
|
||||||
|
feature {NONE} -- Initialization
|
||||||
|
|
||||||
|
make (a_setup: like setup)
|
||||||
|
do
|
||||||
|
setup := a_setup
|
||||||
|
ensure
|
||||||
|
setup_set: setup = a_setup
|
||||||
|
end
|
||||||
|
|
||||||
|
feature -- Access
|
||||||
|
|
||||||
|
name: STRING = "missing theme"
|
||||||
|
|
||||||
|
regions: ARRAY [STRING]
|
||||||
|
do
|
||||||
|
create Result.make_empty
|
||||||
|
end
|
||||||
|
|
||||||
|
page_template: CMS_TEMPLATE
|
||||||
|
-- theme template page.
|
||||||
|
do
|
||||||
|
create {MISSING_CMS_TEMPLATE} Result.make (Current)
|
||||||
|
end
|
||||||
|
|
||||||
|
page_html (page: CMS_HTML_PAGE): STRING_8
|
||||||
|
do
|
||||||
|
to_implement ("Add a better response message, maybe using smarty template")
|
||||||
|
Result := "Service Unavailable"
|
||||||
|
end
|
||||||
|
end
|
||||||
Reference in New Issue
Block a user