class PYXIS_ECF_CONVERTER
Converts Pyxis format Eiffel project configuration with .pecf extension to .ecf XML file
Expansions
1. Schema and name space expansion
configuration_ns = "1-16-00"
2. Excluded directores file rule by platform
platform_list: "imp_mswin; imp_unix"
3. Abbreviated platform condition
condition: platform = windows
note
description: "[
Converts Pyxis format Eiffel project configuration with `.pecf' extension to `.ecf' XML file
]"
notes: "[
**Expansions**
**1.** Schema and name space expansion
configuration_ns = "1-16-00"
**2.** Excluded directores file rule by platform
platform_list:
"imp_mswin; imp_unix"
**3.** Abbreviated platform condition
condition:
platform = windows
]"
author: "Finnian Reilly"
copyright: "Copyright (c) 2001-2022 Finnian Reilly"
contact: "finnian at eiffel hyphen loop dot com"
license: "MIT license (See: en.wikipedia.org/wiki/MIT_License)"
date: "2024-09-01 11:20:08 GMT (Sunday 1st September 2024)"
revision: "10"
class
PYXIS_ECF_CONVERTER
inherit
EL_APPLICATION_COMMAND
EL_PYXIS_TO_XML_CONVERTER
redefine
check_output_xml, description, new_output_path, new_xml_generator
end
create
make
feature -- Constants
Description: STRING = "Convert Pyxis format Eiffel project configuration to `.ecf' XML file"
feature {NONE} -- Implementation
check_output_xml
local
ecf_xdoc: EL_XML_DOC_CONTEXT
do
create ecf_xdoc.make_from_file (output_path)
if ecf_xdoc.parse_failed then
if attached ecf_xdoc.last_exception as exception then
exception.put_error (lio)
end
else
lio.put_labeled_string ("No errors detected in", output_path.base)
lio.put_new_line
end
end
new_output_path: FILE_PATH
do
Result := if source_path.has_extension (Pecf) then source_path.with_new_extension ("ecf") else Precursor end
end
new_xml_generator: EL_PYXIS_XML_TEXT_GENERATOR
do
if source_path.has_extension (Pecf) then
create {ECF_XML_GENERATOR} Result.make
else
create Result.make
end
end
feature {NONE} -- Constants
Pecf: STRING = "pecf"
end