Немного доработок

master
WarL0ck 2017-12-06 22:58:26 +07:00
parent c1db70a68b
commit da89647600
5 changed files with 96 additions and 265 deletions

View File

@ -2,8 +2,10 @@
<project version="4">
<component name="ChangeListManager">
<list default="true" id="6452b13b-5b16-420c-9e2d-0c40791a2ae8" name="Default" comment="">
<change type="DELETED" beforePath="$PROJECT_DIR$/restServer.rest" afterPath="" />
<change type="NEW" beforePath="" afterPath="$PROJECT_DIR$/src/main/java/ru/cft/task/restServer/ExceptionControllerAdvice.java" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/.idea/workspace.xml" afterPath="$PROJECT_DIR$/.idea/workspace.xml" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/pom.xml" afterPath="$PROJECT_DIR$/pom.xml" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/src/main/java/ru/cft/task/restServer/EmailBook.java" afterPath="$PROJECT_DIR$/src/main/java/ru/cft/task/restServer/EmailBook.java" />
<change type="MODIFICATION" beforePath="$PROJECT_DIR$/src/main/java/ru/cft/task/restServer/EmailBookController.java" afterPath="$PROJECT_DIR$/src/main/java/ru/cft/task/restServer/EmailBookController.java" />
</list>
<ignored path="$PROJECT_DIR$/out/" />
@ -82,15 +84,13 @@
</component>
<component name="FileEditorManager">
<leaf SIDE_TABS_SIZE_LIMIT_KEY="300">
<file leaf-file-name="Main.java" pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/src/main/java/ru/cft/task/restServer/Main.java">
<file leaf-file-name="EmailBookController.java" pinned="false" current-in-tab="true">
<entry file="file://$PROJECT_DIR$/src/main/java/ru/cft/task/restServer/EmailBookController.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="153">
<caret line="12" column="0" lean-forward="false" selection-start-line="12" selection-start-column="0" selection-end-line="12" selection-end-column="0" />
<state relative-caret-position="490">
<caret line="38" column="65" lean-forward="false" selection-start-line="38" selection-start-column="65" selection-end-line="38" selection-end-column="65" />
<folding>
<element signature="imports" expanded="true" />
<element signature="e#241#242#0" expanded="true" />
<element signature="e#296#297#0" expanded="true" />
</folding>
</state>
</provider>
@ -99,54 +99,8 @@
<file leaf-file-name="EmailBook.java" pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/src/main/java/ru/cft/task/restServer/EmailBook.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="425">
<caret line="30" column="9" lean-forward="false" selection-start-line="30" selection-start-column="9" selection-end-line="30" selection-end-column="9" />
<folding>
<element signature="imports" expanded="true" />
</folding>
</state>
</provider>
</entry>
</file>
<file leaf-file-name="EmailRecord.java" pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/src/main/java/ru/cft/task/restServer/EmailRecord.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="357">
<caret line="29" column="30" lean-forward="false" selection-start-line="29" selection-start-column="30" selection-end-line="29" selection-end-column="30" />
<folding>
<element signature="e#301#302#0" expanded="true" />
<element signature="e#326#327#0" expanded="true" />
<element signature="e#360#361#0" expanded="true" />
<element signature="e#388#389#0" expanded="true" />
<element signature="e#419#420#0" expanded="true" />
<element signature="e#446#447#0" expanded="true" />
<element signature="e#486#487#0" expanded="true" />
<element signature="e#518#519#0" expanded="true" />
<element signature="e#578#579#0" expanded="true" />
<element signature="e#620#621#0" expanded="true" />
<element signature="e#654#655#0" expanded="true" />
<element signature="e#700#701#0" expanded="true" />
<element signature="e#756#757#0" expanded="true" />
</folding>
</state>
</provider>
</entry>
</file>
<file leaf-file-name="EmailException.java" pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/src/main/java/ru/cft/task/restServer/EmailException.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="34">
<caret line="2" column="13" lean-forward="false" selection-start-line="2" selection-start-column="13" selection-end-line="2" selection-end-column="13" />
<folding />
</state>
</provider>
</entry>
</file>
<file leaf-file-name="EmailBookController.java" pinned="false" current-in-tab="true">
<entry file="file://$PROJECT_DIR$/src/main/java/ru/cft/task/restServer/EmailBookController.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="303">
<caret line="19" column="79" lean-forward="false" selection-start-line="19" selection-start-column="79" selection-end-line="19" selection-end-column="79" />
<state relative-caret-position="833">
<caret line="56" column="64" lean-forward="false" selection-start-line="56" selection-start-column="64" selection-end-line="56" selection-end-column="64" />
<folding>
<element signature="imports" expanded="true" />
</folding>
@ -179,13 +133,14 @@
<option value="$PROJECT_DIR$/src/main/resources/log4j.properties" />
<option value="$PROJECT_DIR$/src/main/java/ru/cft/task/restServer/BookStatus.java" />
<option value="$PROJECT_DIR$/src/main/java/ru/cft/task/restServer/Main.java" />
<option value="$PROJECT_DIR$/pom.xml" />
<option value="$PROJECT_DIR$/src/main/java/ru/cft/task/restServer/EmailException.java" />
<option value="$PROJECT_DIR$/src/main/java/ru/cft/task/restServer/ErrorResponse.java" />
<option value="$PROJECT_DIR$/src/main/resources/application.properties" />
<option value="$PROJECT_DIR$/src/main/java/ru/cft/task/restServer/EmailRecord.java" />
<option value="$PROJECT_DIR$/src/main/resources/banner.txt" />
<option value="$PROJECT_DIR$/src/main/java/ru/cft/task/restServer/ExceptionControllerAdvice.java" />
<option value="$PROJECT_DIR$/src/main/java/ru/cft/task/restServer/EmailBook.java" />
<option value="$PROJECT_DIR$/pom.xml" />
<option value="$PROJECT_DIR$/src/main/java/ru/cft/task/restServer/EmailBookController.java" />
</list>
</option>
@ -263,10 +218,9 @@
<foldersAlwaysOnTop value="true" />
</navigator>
<panes>
<pane id="Scratches" />
<pane id="AndroidView" />
<pane id="PackagesPane" />
<pane id="Scope" />
<pane id="Scratches" />
<pane id="ProjectPane">
<subPane>
<expand>
@ -304,6 +258,7 @@
<select />
</subPane>
</pane>
<pane id="PackagesPane" />
</panes>
</component>
<component name="PropertiesComponent">
@ -494,7 +449,14 @@
<option name="project" value="LOCAL" />
<updated>1512279824947</updated>
</task>
<option name="localTasksCounter" value="9" />
<task id="LOCAL-00009" summary="Добавление логов">
<created>1512539067195</created>
<option name="number" value="00009" />
<option name="presentableId" value="LOCAL-00009" />
<option name="project" value="LOCAL" />
<updated>1512539067195</updated>
</task>
<option name="localTasksCounter" value="10" />
<servers />
</component>
<component name="TodoView">
@ -515,19 +477,19 @@
<window_info id="Image Layers" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="2" side_tool="false" content_ui="tabs" />
<window_info id="Capture Analysis" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="4" side_tool="false" content_ui="tabs" />
<window_info id="Event Log" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.25416204" sideWeight="0.51171875" order="7" side_tool="true" content_ui="tabs" />
<window_info id="Maven Projects" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.32928804" sideWeight="0.5" order="3" side_tool="false" content_ui="tabs" />
<window_info id="Version Control" active="true" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" show_stripe_button="true" weight="0.2357631" sideWeight="0.4890625" order="7" side_tool="false" content_ui="tabs" />
<window_info id="Maven Projects" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" show_stripe_button="true" weight="0.3398058" sideWeight="0.5" order="3" side_tool="false" content_ui="tabs" />
<window_info id="Run" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.2596811" sideWeight="0.48828125" order="2" side_tool="false" content_ui="tabs" />
<window_info id="Version Control" active="true" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" show_stripe_button="true" weight="0.2357631" sideWeight="0.4890625" order="7" side_tool="false" content_ui="tabs" />
<window_info id="Terminal" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.32941177" sideWeight="0.4978678" order="7" side_tool="false" content_ui="tabs" />
<window_info id="Capture Tool" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="2" side_tool="false" content_ui="tabs" />
<window_info id="Designer" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="2" side_tool="false" content_ui="tabs" />
<window_info id="Project" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" show_stripe_button="true" weight="0.19417475" sideWeight="0.49441788" order="0" side_tool="false" content_ui="combo" />
<window_info id="Project" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" show_stripe_button="true" weight="0.20711975" sideWeight="0.49441788" order="0" side_tool="false" content_ui="combo" />
<window_info id="Structure" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.25" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" />
<window_info id="Ant Build" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.25" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" />
<window_info id="UI Designer" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="2" side_tool="false" content_ui="tabs" />
<window_info id="Theme Preview" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="4" side_tool="false" content_ui="tabs" />
<window_info id="Favorites" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.18176973" sideWeight="0.50558215" order="2" side_tool="true" content_ui="tabs" />
<window_info id="Debug" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.4" sideWeight="0.5" order="3" side_tool="false" content_ui="tabs" />
<window_info id="Favorites" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.18176973" sideWeight="0.50558215" order="2" side_tool="true" content_ui="tabs" />
<window_info id="Cvs" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.25" sideWeight="0.5" order="4" side_tool="false" content_ui="tabs" />
<window_info id="Message" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="0" side_tool="false" content_ui="tabs" />
<window_info id="Commander" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.4" sideWeight="0.5" order="0" side_tool="false" content_ui="tabs" />
@ -588,7 +550,8 @@
<MESSAGE value="Промежуточный коммит" />
<MESSAGE value="Реализация exception" />
<MESSAGE value="Добавление метода patch" />
<option name="LAST_COMMIT_MESSAGE" value="Добавление метода patch" />
<MESSAGE value="Добавление логов" />
<option name="LAST_COMMIT_MESSAGE" value="Добавление логов" />
</component>
<component name="XDebuggerManager">
<breakpoint-manager>
@ -601,16 +564,6 @@
<option name="FILTER_TARGETS" value="false" />
</component>
<component name="editorHistoryManager">
<entry file="file://$PROJECT_DIR$/src/main/java/ru/cft/task/restServer/EmailBook.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="918">
<caret line="61" column="0" lean-forward="false" selection-start-line="61" selection-start-column="0" selection-end-line="61" selection-end-column="0" />
<folding>
<element signature="imports" expanded="true" />
</folding>
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/pom.xml">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="1190">
@ -623,11 +576,6 @@
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="136">
<caret line="8" column="0" lean-forward="false" selection-start-line="8" selection-start-column="0" selection-end-line="8" selection-end-column="0" />
<folding>
<element signature="imports" expanded="true" />
<element signature="e#241#242#0" expanded="true" />
<element signature="e#296#297#0" expanded="true" />
</folding>
</state>
</provider>
</entry>
@ -635,21 +583,6 @@
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="119">
<caret line="7" column="23" lean-forward="false" selection-start-line="7" selection-start-column="23" selection-end-line="7" selection-end-column="23" />
<folding>
<element signature="e#301#302#0" expanded="true" />
<element signature="e#326#327#0" expanded="true" />
<element signature="e#360#361#0" expanded="true" />
<element signature="e#388#389#0" expanded="true" />
<element signature="e#419#420#0" expanded="true" />
<element signature="e#446#447#0" expanded="true" />
<element signature="e#486#487#0" expanded="true" />
<element signature="e#518#519#0" expanded="true" />
<element signature="e#578#579#0" expanded="true" />
<element signature="e#620#621#0" expanded="true" />
<element signature="e#654#655#0" expanded="true" />
<element signature="e#700#701#0" expanded="true" />
<element signature="e#756#757#0" expanded="true" />
</folding>
</state>
</provider>
</entry>
@ -693,11 +626,6 @@
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="34">
<caret line="2" column="0" lean-forward="false" selection-start-line="2" selection-start-column="0" selection-end-line="2" selection-end-column="0" />
<folding>
<element signature="imports" expanded="true" />
<element signature="e#241#242#0" expanded="true" />
<element signature="e#296#297#0" expanded="true" />
</folding>
</state>
</provider>
</entry>
@ -705,21 +633,6 @@
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="323">
<caret line="24" column="59" lean-forward="false" selection-start-line="24" selection-start-column="59" selection-end-line="24" selection-end-column="59" />
<folding>
<element signature="e#301#302#0" expanded="true" />
<element signature="e#326#327#0" expanded="true" />
<element signature="e#360#361#0" expanded="true" />
<element signature="e#388#389#0" expanded="true" />
<element signature="e#419#420#0" expanded="true" />
<element signature="e#446#447#0" expanded="true" />
<element signature="e#486#487#0" expanded="true" />
<element signature="e#518#519#0" expanded="true" />
<element signature="e#578#579#0" expanded="true" />
<element signature="e#620#621#0" expanded="true" />
<element signature="e#654#655#0" expanded="true" />
<element signature="e#700#701#0" expanded="true" />
<element signature="e#756#757#0" expanded="true" />
</folding>
</state>
</provider>
</entry>
@ -755,11 +668,6 @@
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="34">
<caret line="2" column="0" lean-forward="false" selection-start-line="2" selection-start-column="0" selection-end-line="2" selection-end-column="0" />
<folding>
<element signature="imports" expanded="true" />
<element signature="e#241#242#0" expanded="true" />
<element signature="e#296#297#0" expanded="true" />
</folding>
</state>
</provider>
</entry>
@ -767,21 +675,6 @@
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="323">
<caret line="24" column="59" lean-forward="false" selection-start-line="24" selection-start-column="59" selection-end-line="24" selection-end-column="59" />
<folding>
<element signature="e#301#302#0" expanded="true" />
<element signature="e#326#327#0" expanded="true" />
<element signature="e#360#361#0" expanded="true" />
<element signature="e#388#389#0" expanded="true" />
<element signature="e#419#420#0" expanded="true" />
<element signature="e#446#447#0" expanded="true" />
<element signature="e#486#487#0" expanded="true" />
<element signature="e#518#519#0" expanded="true" />
<element signature="e#578#579#0" expanded="true" />
<element signature="e#620#621#0" expanded="true" />
<element signature="e#654#655#0" expanded="true" />
<element signature="e#700#701#0" expanded="true" />
<element signature="e#756#757#0" expanded="true" />
</folding>
</state>
</provider>
</entry>
@ -817,11 +710,6 @@
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="221">
<caret line="15" column="0" lean-forward="false" selection-start-line="15" selection-start-column="0" selection-end-line="15" selection-end-column="0" />
<folding>
<element signature="imports" expanded="true" />
<element signature="e#241#242#0" expanded="true" />
<element signature="e#296#297#0" expanded="true" />
</folding>
</state>
</provider>
</entry>
@ -839,21 +727,6 @@
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="34">
<caret line="2" column="24" lean-forward="false" selection-start-line="2" selection-start-column="24" selection-end-line="2" selection-end-column="24" />
<folding>
<element signature="e#301#302#0" expanded="true" />
<element signature="e#326#327#0" expanded="true" />
<element signature="e#360#361#0" expanded="true" />
<element signature="e#388#389#0" expanded="true" />
<element signature="e#419#420#0" expanded="true" />
<element signature="e#446#447#0" expanded="true" />
<element signature="e#486#487#0" expanded="true" />
<element signature="e#518#519#0" expanded="true" />
<element signature="e#578#579#0" expanded="true" />
<element signature="e#620#621#0" expanded="true" />
<element signature="e#654#655#0" expanded="true" />
<element signature="e#700#701#0" expanded="true" />
<element signature="e#756#757#0" expanded="true" />
</folding>
</state>
</provider>
</entry>
@ -880,11 +753,6 @@
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="221">
<caret line="15" column="0" lean-forward="true" selection-start-line="15" selection-start-column="0" selection-end-line="15" selection-end-column="0" />
<folding>
<element signature="imports" expanded="true" />
<element signature="e#241#242#0" expanded="true" />
<element signature="e#296#297#0" expanded="true" />
</folding>
</state>
</provider>
</entry>
@ -902,21 +770,6 @@
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="34">
<caret line="2" column="24" lean-forward="false" selection-start-line="2" selection-start-column="24" selection-end-line="2" selection-end-column="24" />
<folding>
<element signature="e#301#302#0" expanded="true" />
<element signature="e#326#327#0" expanded="true" />
<element signature="e#360#361#0" expanded="true" />
<element signature="e#388#389#0" expanded="true" />
<element signature="e#419#420#0" expanded="true" />
<element signature="e#446#447#0" expanded="true" />
<element signature="e#486#487#0" expanded="true" />
<element signature="e#518#519#0" expanded="true" />
<element signature="e#578#579#0" expanded="true" />
<element signature="e#620#621#0" expanded="true" />
<element signature="e#654#655#0" expanded="true" />
<element signature="e#700#701#0" expanded="true" />
<element signature="e#756#757#0" expanded="true" />
</folding>
</state>
</provider>
</entry>
@ -943,11 +796,6 @@
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="153">
<caret line="9" column="0" lean-forward="false" selection-start-line="9" selection-start-column="0" selection-end-line="9" selection-end-column="0" />
<folding>
<element signature="imports" expanded="true" />
<element signature="e#241#242#0" expanded="true" />
<element signature="e#296#297#0" expanded="true" />
</folding>
</state>
</provider>
</entry>
@ -973,11 +821,6 @@
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="170">
<caret line="12" column="31" lean-forward="false" selection-start-line="12" selection-start-column="31" selection-end-line="12" selection-end-column="31" />
<folding>
<element signature="imports" expanded="true" />
<element signature="e#241#242#0" expanded="true" />
<element signature="e#296#297#0" expanded="true" />
</folding>
</state>
</provider>
</entry>
@ -1004,43 +847,6 @@
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/main/java/ru/cft/task/restServer/ErrorResponse.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="357">
<caret line="21" column="0" lean-forward="false" selection-start-line="21" selection-start-column="0" selection-end-line="21" selection-end-column="0" />
<folding>
<element signature="e#148#149#0" expanded="false" />
<element signature="e#180#181#0" expanded="false" />
<element signature="e#227#228#0" expanded="false" />
<element signature="e#269#270#0" expanded="false" />
<element signature="e#303#304#0" expanded="false" />
<element signature="e#333#334#0" expanded="false" />
<element signature="e#379#380#0" expanded="false" />
<element signature="e#417#418#0" expanded="false" />
</folding>
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/pom.xml">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="272">
<caret line="16" column="11" lean-forward="true" selection-start-line="16" selection-start-column="11" selection-end-line="16" selection-end-column="11" />
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/main/java/ru/cft/task/restServer/Main.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="153">
<caret line="12" column="0" lean-forward="false" selection-start-line="12" selection-start-column="0" selection-end-line="12" selection-end-column="0" />
<folding>
<element signature="imports" expanded="true" />
<element signature="e#241#242#0" expanded="true" />
<element signature="e#296#297#0" expanded="true" />
</folding>
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/main/resources/application.properties">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="51">
@ -1063,42 +869,56 @@
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/main/java/ru/cft/task/restServer/EmailBook.java">
<entry file="file://$PROJECT_DIR$/pom.xml">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="425">
<caret line="30" column="9" lean-forward="false" selection-start-line="30" selection-start-column="9" selection-end-line="30" selection-end-column="9" />
<folding>
<element signature="imports" expanded="true" />
</folding>
<state relative-caret-position="136">
<caret line="8" column="16" lean-forward="false" selection-start-line="8" selection-start-column="16" selection-end-line="8" selection-end-column="16" />
<folding />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/main/java/ru/cft/task/restServer/EmailRecord.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="357">
<caret line="29" column="30" lean-forward="false" selection-start-line="29" selection-start-column="30" selection-end-line="29" selection-end-column="30" />
<caret line="27" column="5" lean-forward="false" selection-start-line="27" selection-start-column="5" selection-end-line="27" selection-end-column="5" />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/main/java/ru/cft/task/restServer/Main.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="170">
<caret line="12" column="0" lean-forward="false" selection-start-line="12" selection-start-column="0" selection-end-line="12" selection-end-column="0" />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/main/java/ru/cft/task/restServer/ExceptionControllerAdvice.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="255">
<caret line="15" column="35" lean-forward="false" selection-start-line="15" selection-start-column="35" selection-end-line="15" selection-end-column="35" />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/main/java/ru/cft/task/restServer/ErrorResponse.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="34">
<caret line="2" column="13" lean-forward="false" selection-start-line="2" selection-start-column="13" selection-end-line="2" selection-end-column="13" />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/main/java/ru/cft/task/restServer/EmailBook.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="833">
<caret line="56" column="64" lean-forward="false" selection-start-line="56" selection-start-column="64" selection-end-line="56" selection-end-column="64" />
<folding>
<element signature="e#301#302#0" expanded="true" />
<element signature="e#326#327#0" expanded="true" />
<element signature="e#360#361#0" expanded="true" />
<element signature="e#388#389#0" expanded="true" />
<element signature="e#419#420#0" expanded="true" />
<element signature="e#446#447#0" expanded="true" />
<element signature="e#486#487#0" expanded="true" />
<element signature="e#518#519#0" expanded="true" />
<element signature="e#578#579#0" expanded="true" />
<element signature="e#620#621#0" expanded="true" />
<element signature="e#654#655#0" expanded="true" />
<element signature="e#700#701#0" expanded="true" />
<element signature="e#756#757#0" expanded="true" />
<element signature="imports" expanded="true" />
</folding>
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/main/java/ru/cft/task/restServer/EmailBookController.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="303">
<caret line="19" column="79" lean-forward="false" selection-start-line="19" selection-start-column="79" selection-end-line="19" selection-end-column="79" />
<state relative-caret-position="490">
<caret line="38" column="65" lean-forward="false" selection-start-line="38" selection-start-column="65" selection-end-line="38" selection-end-column="65" />
<folding>
<element signature="imports" expanded="true" />
</folding>

View File

@ -6,7 +6,7 @@
<groupId>ru.cft.task</groupId>
<artifactId>restServer</artifactId>
<version>0.1.0</version>
<version>0.2.0</version>
<parent>
<groupId>org.springframework.boot</groupId>

View File

@ -15,7 +15,7 @@ public class EmailBook {
public EmailRecord addEmailRecord(long id, String name, String email) throws EmailException {
for (Map.Entry<Long, EmailRecord> rec : book.entrySet()) {
if (rec.getValue().getEmail() == email) {
if (rec.getValue().getEmail().equalsIgnoreCase(email)) {
throw new EmailException("Запись с {email = " + email + "} уже есть в базе");
}
}
@ -45,7 +45,7 @@ public class EmailBook {
public EmailRecord findRecordByName(String name) throws EmailException {
for (Map.Entry<Long, EmailRecord> rec : book.entrySet()) {
if (rec.getValue().getName().toLowerCase() == name.toLowerCase()) {
if (rec.getValue().getName().equalsIgnoreCase(name)) {
return rec.getValue();
}
}
@ -54,7 +54,7 @@ public class EmailBook {
public EmailRecord findRecordByEmail(String email) throws EmailException {
for (Map.Entry<Long, EmailRecord> rec : book.entrySet()) {
if (rec.getValue().getEmail().toLowerCase() == email.toLowerCase()) {
if (rec.getValue().getEmail().equalsIgnoreCase(email)) {
return rec.getValue();
}
}

View File

@ -19,22 +19,24 @@ public class EmailBookController {
@RequestMapping(method = RequestMethod.POST)
public ResponseEntity<EmailRecord> addEmailRec(@RequestParam(value = "name") String name,
@RequestParam(value = "email") String email) throws EmailException {
System.out.println("Method POST: {name =" + name + ", email = " + email + "}");
System.out.println("Method POST: {name = " + name + ", email = " + email + "}");
return new ResponseEntity<EmailRecord>(emailBook.addEmailRecord(new_id.incrementAndGet(), name, email), HttpStatus.OK);
}
@RequestMapping(method = RequestMethod.GET)
public ResponseEntity<EmailRecord> findEmailRec(@RequestParam(value = "id") String id,
@RequestParam(value = "name") String name,
@RequestParam(value = "email") String email
public ResponseEntity<EmailRecord> findEmailRec(@RequestParam(value = "id", required = false) String id,
@RequestParam(value = "name", required = false) String name,
@RequestParam(value = "email", required = false) String email
) throws EmailException {
System.out.println("Method GET: {id = " + id + ", name =" + name + ", email = " + email + "}");
if (!name.isEmpty()) {
System.out.println("Method GET: {id = " + id + ", name = " + name + ", email = " + email + "}");
if (name != null && !name.isEmpty()) {
return new ResponseEntity<EmailRecord>(emailBook.findRecordByName(name), HttpStatus.OK);
} else if (!email.isEmpty()) {
} else if (email != null && !email.isEmpty()) {
return new ResponseEntity<EmailRecord>(emailBook.findRecordByEmail(email), HttpStatus.OK);
} else {
} else if (id != null && !id.isEmpty()) {
return new ResponseEntity<EmailRecord>(emailBook.findRecordById(Long.valueOf(id)), HttpStatus.OK);
} else {
throw new EmailException("Задайте параметр для поиска");
}
}
@ -43,7 +45,7 @@ public class EmailBookController {
@RequestParam(value = "name") String name,
@RequestParam(value = "email") String email
) throws EmailException {
System.out.println("Method PATCH: {id = " + id + ", name =" + name + ", email = " + email + "}");
System.out.println("Method PATCH: {id = " + id + ", name = " + name + ", email = " + email + "}");
return new ResponseEntity<EmailRecord>(emailBook.editRecord(Long.valueOf(id), name, email), HttpStatus.OK);
}
@ -64,13 +66,4 @@ public class EmailBookController {
System.out.println("Method GET: count");
return emailBook.count();
}
@ExceptionHandler({EmailException.class, Exception.class})
public ResponseEntity<ErrorResponse> exceptionHandler(Exception ex) {
ErrorResponse error = new ErrorResponse();
error.setErrorCode(HttpStatus.PRECONDITION_FAILED.value());
error.setMessage(ex.getMessage());
return new ResponseEntity<ErrorResponse>(error, HttpStatus.OK);
}
}

View File

@ -0,0 +1,18 @@
package ru.cft.task.restServer;
import org.springframework.http.HttpStatus;
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.ControllerAdvice;
import org.springframework.web.bind.annotation.ExceptionHandler;
@ControllerAdvice
public class ExceptionControllerAdvice {
@ExceptionHandler(Exception.class)
public ResponseEntity<ErrorResponse> exceptionHandler(Exception ex) {
ErrorResponse error = new ErrorResponse();
error.setErrorCode(HttpStatus.INTERNAL_SERVER_ERROR.value());
error.setMessage(ex.getMessage());
System.out.println("ErrorResponse: " + ex.getMessage());
return new ResponseEntity<ErrorResponse>(error, HttpStatus.INTERNAL_SERVER_ERROR);
}
}