Inital commit exercise 1

This commit is contained in:
Simon Giesel 2019-06-18 12:54:30 +02:00
parent 7a18e45212
commit 2c4a91eda2
56 changed files with 1435 additions and 0 deletions

View file

@ -0,0 +1,5 @@
<component name="ProjectCodeStyleConfiguration">
<state>
<option name="PREFERRED_PROJECT_CODE_STYLE" value="Default" />
</state>
</component>

View file

@ -0,0 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ProjectRootManager" version="2" languageLevel="JDK_1_8" default="true" project-jdk-name="1.8.0_212" project-jdk-type="JavaSDK">
<output url="file://$PROJECT_DIR$/out" />
</component>
</project>

View file

@ -0,0 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ProjectModuleManager">
<modules>
<module fileurl="file://$PROJECT_DIR$/PizzaProject.iml" filepath="$PROJECT_DIR$/PizzaProject.iml" />
</modules>
</component>
</project>

View file

@ -0,0 +1,14 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="SaveActionSettings">
<option name="actions">
<set>
<option value="activate" />
<option value="activateOnShortcut" />
<option value="activateOnBatch" />
<option value="reformat" />
</set>
</option>
<option name="configurationPath" value="" />
</component>
</project>

View file

@ -0,0 +1,124 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="Palette2">
<group name="Swing">
<item class="com.intellij.uiDesigner.HSpacer" tooltip-text="Horizontal Spacer" icon="/com/intellij/uiDesigner/icons/hspacer.png" removable="false" auto-create-binding="false" can-attach-label="false">
<default-constraints vsize-policy="1" hsize-policy="6" anchor="0" fill="1" />
</item>
<item class="com.intellij.uiDesigner.VSpacer" tooltip-text="Vertical Spacer" icon="/com/intellij/uiDesigner/icons/vspacer.png" removable="false" auto-create-binding="false" can-attach-label="false">
<default-constraints vsize-policy="6" hsize-policy="1" anchor="0" fill="2" />
</item>
<item class="javax.swing.JPanel" icon="/com/intellij/uiDesigner/icons/panel.png" removable="false" auto-create-binding="false" can-attach-label="false">
<default-constraints vsize-policy="3" hsize-policy="3" anchor="0" fill="3" />
</item>
<item class="javax.swing.JScrollPane" icon="/com/intellij/uiDesigner/icons/scrollPane.png" removable="false" auto-create-binding="false" can-attach-label="true">
<default-constraints vsize-policy="7" hsize-policy="7" anchor="0" fill="3" />
</item>
<item class="javax.swing.JButton" icon="/com/intellij/uiDesigner/icons/button.png" removable="false" auto-create-binding="true" can-attach-label="false">
<default-constraints vsize-policy="0" hsize-policy="3" anchor="0" fill="1" />
<initial-values>
<property name="text" value="Button" />
</initial-values>
</item>
<item class="javax.swing.JRadioButton" icon="/com/intellij/uiDesigner/icons/radioButton.png" removable="false" auto-create-binding="true" can-attach-label="false">
<default-constraints vsize-policy="0" hsize-policy="3" anchor="8" fill="0" />
<initial-values>
<property name="text" value="RadioButton" />
</initial-values>
</item>
<item class="javax.swing.JCheckBox" icon="/com/intellij/uiDesigner/icons/checkBox.png" removable="false" auto-create-binding="true" can-attach-label="false">
<default-constraints vsize-policy="0" hsize-policy="3" anchor="8" fill="0" />
<initial-values>
<property name="text" value="CheckBox" />
</initial-values>
</item>
<item class="javax.swing.JLabel" icon="/com/intellij/uiDesigner/icons/label.png" removable="false" auto-create-binding="false" can-attach-label="false">
<default-constraints vsize-policy="0" hsize-policy="0" anchor="8" fill="0" />
<initial-values>
<property name="text" value="Label" />
</initial-values>
</item>
<item class="javax.swing.JTextField" icon="/com/intellij/uiDesigner/icons/textField.png" removable="false" auto-create-binding="true" can-attach-label="true">
<default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1">
<preferred-size width="150" height="-1" />
</default-constraints>
</item>
<item class="javax.swing.JPasswordField" icon="/com/intellij/uiDesigner/icons/passwordField.png" removable="false" auto-create-binding="true" can-attach-label="true">
<default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1">
<preferred-size width="150" height="-1" />
</default-constraints>
</item>
<item class="javax.swing.JFormattedTextField" icon="/com/intellij/uiDesigner/icons/formattedTextField.png" removable="false" auto-create-binding="true" can-attach-label="true">
<default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1">
<preferred-size width="150" height="-1" />
</default-constraints>
</item>
<item class="javax.swing.JTextArea" icon="/com/intellij/uiDesigner/icons/textArea.png" removable="false" auto-create-binding="true" can-attach-label="true">
<default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
<preferred-size width="150" height="50" />
</default-constraints>
</item>
<item class="javax.swing.JTextPane" icon="/com/intellij/uiDesigner/icons/textPane.png" removable="false" auto-create-binding="true" can-attach-label="true">
<default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
<preferred-size width="150" height="50" />
</default-constraints>
</item>
<item class="javax.swing.JEditorPane" icon="/com/intellij/uiDesigner/icons/editorPane.png" removable="false" auto-create-binding="true" can-attach-label="true">
<default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
<preferred-size width="150" height="50" />
</default-constraints>
</item>
<item class="javax.swing.JComboBox" icon="/com/intellij/uiDesigner/icons/comboBox.png" removable="false" auto-create-binding="true" can-attach-label="true">
<default-constraints vsize-policy="0" hsize-policy="2" anchor="8" fill="1" />
</item>
<item class="javax.swing.JTable" icon="/com/intellij/uiDesigner/icons/table.png" removable="false" auto-create-binding="true" can-attach-label="false">
<default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
<preferred-size width="150" height="50" />
</default-constraints>
</item>
<item class="javax.swing.JList" icon="/com/intellij/uiDesigner/icons/list.png" removable="false" auto-create-binding="true" can-attach-label="false">
<default-constraints vsize-policy="6" hsize-policy="2" anchor="0" fill="3">
<preferred-size width="150" height="50" />
</default-constraints>
</item>
<item class="javax.swing.JTree" icon="/com/intellij/uiDesigner/icons/tree.png" removable="false" auto-create-binding="true" can-attach-label="false">
<default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
<preferred-size width="150" height="50" />
</default-constraints>
</item>
<item class="javax.swing.JTabbedPane" icon="/com/intellij/uiDesigner/icons/tabbedPane.png" removable="false" auto-create-binding="true" can-attach-label="false">
<default-constraints vsize-policy="3" hsize-policy="3" anchor="0" fill="3">
<preferred-size width="200" height="200" />
</default-constraints>
</item>
<item class="javax.swing.JSplitPane" icon="/com/intellij/uiDesigner/icons/splitPane.png" removable="false" auto-create-binding="false" can-attach-label="false">
<default-constraints vsize-policy="3" hsize-policy="3" anchor="0" fill="3">
<preferred-size width="200" height="200" />
</default-constraints>
</item>
<item class="javax.swing.JSpinner" icon="/com/intellij/uiDesigner/icons/spinner.png" removable="false" auto-create-binding="true" can-attach-label="true">
<default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1" />
</item>
<item class="javax.swing.JSlider" icon="/com/intellij/uiDesigner/icons/slider.png" removable="false" auto-create-binding="true" can-attach-label="false">
<default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1" />
</item>
<item class="javax.swing.JSeparator" icon="/com/intellij/uiDesigner/icons/separator.png" removable="false" auto-create-binding="false" can-attach-label="false">
<default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3" />
</item>
<item class="javax.swing.JProgressBar" icon="/com/intellij/uiDesigner/icons/progressbar.png" removable="false" auto-create-binding="true" can-attach-label="false">
<default-constraints vsize-policy="0" hsize-policy="6" anchor="0" fill="1" />
</item>
<item class="javax.swing.JToolBar" icon="/com/intellij/uiDesigner/icons/toolbar.png" removable="false" auto-create-binding="false" can-attach-label="false">
<default-constraints vsize-policy="0" hsize-policy="6" anchor="0" fill="1">
<preferred-size width="-1" height="20" />
</default-constraints>
</item>
<item class="javax.swing.JToolBar$Separator" icon="/com/intellij/uiDesigner/icons/toolbarSeparator.png" removable="false" auto-create-binding="false" can-attach-label="false">
<default-constraints vsize-policy="0" hsize-policy="0" anchor="0" fill="1" />
</item>
<item class="javax.swing.JScrollBar" icon="/com/intellij/uiDesigner/icons/scrollbar.png" removable="false" auto-create-binding="true" can-attach-label="false">
<default-constraints vsize-policy="6" hsize-policy="0" anchor="0" fill="2" />
</item>
</group>
</component>
</project>

View file

@ -0,0 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="VcsDirectoryMappings">
<mapping directory="$PROJECT_DIR$/.." vcs="Git" />
</component>
</project>

View file

@ -0,0 +1,637 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ChangeListManager">
<list default="true" id="ce5d9264-6543-4dfb-9894-4df6c2616d5e" name="Default" comment="" />
<ignored path="$PROJECT_DIR$/out/" />
<option name="EXCLUDED_CONVERTED_TO_IGNORED" value="true" />
<option name="SHOW_DIALOG" value="false" />
<option name="HIGHLIGHT_CONFLICTS" value="true" />
<option name="HIGHLIGHT_NON_ACTIVE_CHANGELIST" value="false" />
<option name="LAST_RESOLUTION" value="IGNORE" />
</component>
<component name="DefaultGradleProjectSettings">
<option name="testRunner" value="GRADLE" />
<option name="delegatedBuild" value="true" />
</component>
<component name="FileEditorManager">
<leaf SIDE_TABS_SIZE_LIMIT_KEY="300">
<file pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/src/view/PizzaListPanel.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="105">
<caret line="11" column="13" selection-start-line="11" selection-start-column="13" selection-end-line="11" selection-end-column="13" />
</state>
</provider>
</entry>
</file>
<file pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/src/view/PizzaConfiguratorPanel.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="75">
<caret line="8" column="38" selection-start-line="8" selection-start-column="38" selection-end-line="8" selection-end-column="38" />
</state>
</provider>
</entry>
</file>
<file pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/tests/model/OrderTest.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="525">
<caret line="37" column="5" selection-start-line="37" selection-start-column="5" selection-end-line="37" selection-end-column="5" />
<folding>
<element signature="imports" expanded="true" />
</folding>
</state>
</provider>
</entry>
</file>
<file pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/src/model/Order.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="960">
<caret line="78" selection-start-line="78" selection-end-line="78" />
<folding>
<element signature="imports" expanded="true" />
</folding>
</state>
</provider>
</entry>
</file>
<file pinned="false" current-in-tab="true">
<entry file="file://$PROJECT_DIR$/src/model/Pizza.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="686">
<caret line="83" column="32" selection-start-line="83" selection-start-column="32" selection-end-line="83" selection-end-column="32" />
<folding>
<element signature="e#1978#1979#0" expanded="true" />
<element signature="e#2017#2018#0" expanded="true" />
</folding>
</state>
</provider>
</entry>
</file>
</leaf>
</component>
<component name="FileTemplateManagerImpl">
<option name="RECENT_TEMPLATES">
<list>
<option value="JUnit5 Test Class" />
<option value="Class" />
<option value="Interface" />
</list>
</option>
</component>
<component name="Git.Settings">
<option name="RECENT_GIT_ROOT_PATH" value="$PROJECT_DIR$/.." />
</component>
<component name="IdeDocumentHistory">
<option name="CHANGED_PATHS">
<list>
<option value="$PROJECT_DIR$/src/model/Adress.java" />
<option value="$PROJECT_DIR$/src/model/Customer.java" />
<option value="$PROJECT_DIR$/tests/services/OrderServiceTest.java" />
<option value="$PROJECT_DIR$/tests/model/PizzaTest.java" />
<option value="$PROJECT_DIR$/src/services/PizzaService.java" />
<option value="$PROJECT_DIR$/src/model/OrderException.java" />
<option value="$PROJECT_DIR$/src/services/OrderService.java" />
<option value="$PROJECT_DIR$/src/services/IPizzaService.java" />
<option value="$PROJECT_DIR$/src/view/PizzaListPanel.java" />
<option value="$PROJECT_DIR$/src/model/exceptions/OrderException.java" />
<option value="$PROJECT_DIR$/src/services/dummy/PizzaServiceDummy.java" />
<option value="$PROJECT_DIR$/src/services/impl/OrderService.java" />
<option value="$PROJECT_DIR$/src/services/impl/PizzaService.java" />
<option value="$PROJECT_DIR$/src/services/interfaces/IPizzaService.java" />
<option value="$PROJECT_DIR$/src/services/io/PizzaIOHandler.java" />
<option value="$PROJECT_DIR$/src/view/MainFrame.java" />
<option value="$PROJECT_DIR$/src/view/PizzaConfiguratorPanel.java" />
<option value="$PROJECT_DIR$/tests/model/OrderTest.java" />
<option value="$PROJECT_DIR$/src/model/Order.java" />
<option value="$PROJECT_DIR$/src/model/Pizza.java" />
</list>
</option>
</component>
<component name="JsBuildToolGruntFileManager" detection-done="true" sorting="DEFINITION_ORDER" />
<component name="JsBuildToolPackageJson" detection-done="true" sorting="DEFINITION_ORDER" />
<component name="JsGulpfileManager">
<detection-done>true</detection-done>
<sorting>DEFINITION_ORDER</sorting>
</component>
<component name="ProjectConfigurationFiles">
<option name="files">
<list>
<option value="$PROJECT_DIR$/.idea/vcs.xml" />
<option value="$PROJECT_DIR$/.idea/saveactions_settings.xml" />
</list>
</option>
</component>
<component name="ProjectFrameBounds" extendedState="6">
<option name="x" value="240" />
<option name="y" value="131" />
<option name="width" value="1440" />
<option name="height" value="786" />
</component>
<component name="ProjectInspectionProfilesVisibleTreeState">
<entry key="Project Default">
<profile-state>
<expanded-state>
<State>
<id />
</State>
<State>
<id>Kotlin</id>
</State>
<State>
<id>Style issuesKotlin</id>
</State>
</expanded-state>
</profile-state>
</entry>
</component>
<component name="ProjectLevelVcsManager" settingsEditedManually="true" />
<component name="ProjectView">
<navigator proportions="" version="1">
<foldersAlwaysOnTop value="true" />
</navigator>
<panes>
<pane id="PackagesPane" />
<pane id="Scope" />
<pane id="ProjectPane">
<subPane>
<expand>
<path>
<item name="de.hhn.ai.prog2.blatt7.junit" type="b2602c69:ProjectViewProjectNode" />
<item name="de.hhn.ai.prog2.blatt7.junit" type="462c0819:PsiDirectoryNode" />
</path>
<path>
<item name="de.hhn.ai.prog2.blatt7.junit" type="b2602c69:ProjectViewProjectNode" />
<item name="de.hhn.ai.prog2.blatt7.junit" type="462c0819:PsiDirectoryNode" />
<item name="src" type="462c0819:PsiDirectoryNode" />
</path>
<path>
<item name="de.hhn.ai.prog2.blatt7.junit" type="b2602c69:ProjectViewProjectNode" />
<item name="de.hhn.ai.prog2.blatt7.junit" type="462c0819:PsiDirectoryNode" />
<item name="src" type="462c0819:PsiDirectoryNode" />
<item name="model" type="462c0819:PsiDirectoryNode" />
</path>
<path>
<item name="de.hhn.ai.prog2.blatt7.junit" type="b2602c69:ProjectViewProjectNode" />
<item name="de.hhn.ai.prog2.blatt7.junit" type="462c0819:PsiDirectoryNode" />
<item name="src" type="462c0819:PsiDirectoryNode" />
<item name="services" type="462c0819:PsiDirectoryNode" />
</path>
<path>
<item name="de.hhn.ai.prog2.blatt7.junit" type="b2602c69:ProjectViewProjectNode" />
<item name="de.hhn.ai.prog2.blatt7.junit" type="462c0819:PsiDirectoryNode" />
<item name="tests" type="462c0819:PsiDirectoryNode" />
</path>
<path>
<item name="de.hhn.ai.prog2.blatt7.junit" type="b2602c69:ProjectViewProjectNode" />
<item name="de.hhn.ai.prog2.blatt7.junit" type="462c0819:PsiDirectoryNode" />
<item name="tests" type="462c0819:PsiDirectoryNode" />
<item name="model" type="462c0819:PsiDirectoryNode" />
</path>
</expand>
<select />
</subPane>
</pane>
<pane id="AndroidView" />
</panes>
</component>
<component name="PropertiesComponent">
<property name="ASKED_SHARE_PROJECT_CONFIGURATION_FILES" value="true" />
<property name="Downloaded.Files.Path.Enabled" value="false" />
<property name="Repository.Attach.Annotations" value="false" />
<property name="Repository.Attach.JavaDocs" value="false" />
<property name="Repository.Attach.Sources" value="false" />
<property name="WebServerToolWindowFactoryState" value="false" />
<property name="aspect.path.notification.shown" value="true" />
<property name="com.intellij.testIntegration.createTest.CreateTestDialog.defaultLibrary" value="JUnit5" />
<property name="full.screen.before.presentation.mode" value="false" />
<property name="last_opened_file_path" value="$PROJECT_DIR$" />
<property name="nodejs_interpreter_path.stuck_in_default_project" value="undefined stuck path" />
<property name="project.structure.last.edited" value="Modules" />
<property name="project.structure.proportion" value="0.15" />
<property name="project.structure.side.proportion" value="0.2" />
<property name="settings.editor.selected.configurable" value="settings.saveactions" />
</component>
<component name="RecentsManager">
<key name="CreateTestDialog.RecentsKey">
<recent name="model" />
<recent name="services" />
</key>
<key name="MoveClassesOrPackagesDialog.RECENTS_KEY">
<recent name="services" />
</key>
<key name="CreateTestDialog.Recents.Supers">
<recent name="" />
</key>
<key name="CreateClassDialog.RecentsKey">
<recent name="model.exceptions" />
</key>
</component>
<component name="RunDashboard">
<option name="ruleStates">
<list>
<RuleState>
<option name="name" value="ConfigurationTypeDashboardGroupingRule" />
</RuleState>
<RuleState>
<option name="name" value="StatusDashboardGroupingRule" />
</RuleState>
</list>
</option>
</component>
<component name="RunManager" selected="JUnit.OrderTest">
<configuration default="true" type="#org.jetbrains.idea.devkit.run.PluginConfigurationType" factoryName="Plugin">
<module name="" />
<option name="VM_PARAMETERS" value="-Xmx512m -Xms256m -XX:MaxPermSize=250m -ea" />
<option name="PROGRAM_PARAMETERS" />
<predefined_log_file id="idea.log" enabled="true" />
</configuration>
<configuration default="true" type="Applet">
<option name="POLICY_FILE" value="$APPLICATION_HOME_DIR$/bin/appletviewer.policy" />
<method v="2">
<option name="Make" enabled="true" />
</method>
</configuration>
<configuration name="Order" type="Application" factoryName="Application" temporary="true" nameIsGenerated="true">
<option name="MAIN_CLASS_NAME" value="model.Order" />
<module name="PizzaProject" />
<extension name="coverage">
<pattern>
<option name="PATTERN" value="model.*" />
<option name="ENABLED" value="true" />
</pattern>
</extension>
<method v="2">
<option name="Make" enabled="true" />
</method>
</configuration>
<configuration name="PizzaServiceDummy" type="Application" factoryName="Application" temporary="true" nameIsGenerated="true">
<option name="MAIN_CLASS_NAME" value="services.dummy.PizzaServiceDummy" />
<module name="TestGPI2" />
<option name="WORKING_DIRECTORY" value="$PROJECT_DIR$" />
<extension name="coverage">
<pattern>
<option name="PATTERN" value="services.dummy.*" />
<option name="ENABLED" value="true" />
</pattern>
</extension>
<method v="2">
<option name="Make" enabled="true" />
</method>
</configuration>
<configuration default="true" type="Application" factoryName="Application">
<option name="WORKING_DIRECTORY" value="$PROJECT_DIR$" />
<method v="2">
<option name="Make" enabled="true" />
</method>
</configuration>
<configuration name="OrderTest" type="JUnit" factoryName="JUnit" temporary="true" nameIsGenerated="true">
<module name="PizzaProject" />
<extension name="coverage">
<pattern>
<option name="PATTERN" value="model.*" />
<option name="ENABLED" value="true" />
</pattern>
</extension>
<option name="PACKAGE_NAME" value="model" />
<option name="MAIN_CLASS_NAME" value="model.OrderTest" />
<option name="TEST_OBJECT" value="class" />
<option name="WORKING_DIRECTORY" value="%MODULE_WORKING_DIR%" />
<method v="2">
<option name="Make" enabled="true" />
</method>
</configuration>
<configuration default="true" type="JUnit" factoryName="JUnit">
<option name="TEST_OBJECT" value="class" />
<option name="WORKING_DIRECTORY" value="%MODULE_WORKING_DIR%" />
<method v="2">
<option name="Make" enabled="true" />
</method>
</configuration>
<configuration default="true" type="TestNG">
<option name="TEST_OBJECT" value="CLASS" />
<option name="WORKING_DIRECTORY" value="%MODULE_WORKING_DIR%" />
<properties />
<listeners />
<method v="2">
<option name="Make" enabled="true" />
</method>
</configuration>
<list>
<item itemvalue="Application.Order" />
<item itemvalue="Application.PizzaServiceDummy" />
<item itemvalue="JUnit.OrderTest" />
</list>
<recent_temporary>
<list>
<item itemvalue="JUnit.OrderTest" />
<item itemvalue="Application.Order" />
<item itemvalue="Application.PizzaServiceDummy" />
</list>
</recent_temporary>
</component>
<component name="SvnConfiguration">
<configuration />
</component>
<component name="TaskManager">
<task active="true" id="Default" summary="Default task">
<changelist id="ce5d9264-6543-4dfb-9894-4df6c2616d5e" name="Default" comment="" />
<created>1556781177162</created>
<option name="number" value="Default" />
<option name="presentableId" value="Default" />
<updated>1556781177162</updated>
<workItem from="1556781180070" duration="6825000" />
<workItem from="1556790175967" duration="103000" />
<workItem from="1556796283134" duration="993000" />
<workItem from="1556797289533" duration="2133000" />
<workItem from="1556801295847" duration="2831000" />
<workItem from="1556809116403" duration="443000" />
<workItem from="1557386292226" duration="7797000" />
<workItem from="1557396278761" duration="668000" />
<workItem from="1557401354429" duration="53000" />
<workItem from="1557401453084" duration="15000" />
</task>
<servers />
</component>
<component name="TestHistory">
<history-entry file="OrderTest - 2019.06.18 at 11h 42m 41s.xml">
<configuration name="OrderTest" configurationId="JUnit" />
</history-entry>
</component>
<component name="TimeTrackingManager">
<option name="totallyTimeSpent" value="21861000" />
</component>
<component name="ToolWindowManager">
<frame x="0" y="0" width="1920" height="1048" extended-state="6" />
<editor active="true" />
<layout>
<window_info active="true" content_ui="combo" id="Project" order="0" visible="true" weight="0.2768903" />
<window_info id="Structure" order="1" weight="0.25" />
<window_info id="Image Layers" order="2" />
<window_info id="Designer" order="3" />
<window_info id="UI Designer" order="4" />
<window_info id="Capture Tool" order="5" />
<window_info id="Favorites" order="6" side_tool="true" />
<window_info anchor="bottom" id="Message" order="0" />
<window_info anchor="bottom" id="Find" order="1" />
<window_info anchor="bottom" id="Run" order="2" visible="true" weight="0.3286638" />
<window_info anchor="bottom" id="Debug" order="3" weight="0.4" />
<window_info anchor="bottom" id="Cvs" order="4" weight="0.25" />
<window_info anchor="bottom" id="Inspection" order="5" weight="0.4" />
<window_info anchor="bottom" id="TODO" order="6" />
<window_info anchor="bottom" id="Terminal" order="7" weight="0.3297414" />
<window_info anchor="bottom" id="Event Log" order="8" side_tool="true" />
<window_info anchor="bottom" id="Version Control" order="9" />
<window_info anchor="bottom" id="Messages" order="10" weight="0.3286638" />
<window_info anchor="right" id="Commander" order="0" weight="0.4" />
<window_info anchor="right" id="Ant Build" order="1" weight="0.25" />
<window_info anchor="right" content_ui="combo" id="Hierarchy" order="2" weight="0.25" />
<window_info anchor="right" id="Palette" order="3" />
<window_info anchor="right" id="Capture Analysis" order="4" />
<window_info anchor="right" id="Theme Preview" order="5" />
<window_info anchor="right" id="Database" order="6" />
<window_info anchor="right" id="Palette&#9;" order="7" />
<window_info anchor="right" id="Maven Projects" order="8" />
<window_info anchor="right" id="Maven" order="9" />
</layout>
<layout-to-restore>
<window_info content_ui="combo" id="Project" order="0" visible="true" weight="0.25579977" />
<window_info id="Structure" order="1" weight="0.25" />
<window_info id="Capture Tool" order="2" />
<window_info id="Designer" order="3" />
<window_info id="UI Designer" order="4" />
<window_info id="Image Layers" order="5" />
<window_info id="Favorites" order="6" side_tool="true" />
<window_info anchor="bottom" id="Message" order="0" />
<window_info anchor="bottom" id="Find" order="1" />
<window_info anchor="bottom" id="Run" order="2" />
<window_info anchor="bottom" id="Debug" order="3" weight="0.4" />
<window_info anchor="bottom" id="Cvs" order="4" weight="0.25" />
<window_info anchor="bottom" id="Inspection" order="5" weight="0.4" />
<window_info anchor="bottom" id="TODO" order="6" />
<window_info anchor="bottom" id="Event Log" order="7" side_tool="true" />
<window_info anchor="bottom" id="Version Control" order="8" show_stripe_button="false" />
<window_info anchor="bottom" id="Terminal" order="9" />
<window_info anchor="right" id="Commander" order="0" weight="0.4" />
<window_info anchor="right" id="Ant Build" order="1" weight="0.25" />
<window_info anchor="right" content_ui="combo" id="Hierarchy" order="2" weight="0.25" />
<window_info anchor="right" id="Palette" order="3" />
<window_info anchor="right" id="Maven Projects" order="4" />
<window_info anchor="right" id="Database" order="5" />
<window_info anchor="right" id="Palette&#9;" order="6" />
<window_info anchor="right" id="Capture Analysis" order="7" />
<window_info anchor="right" id="Theme Preview" order="8" />
</layout-to-restore>
</component>
<component name="TypeScriptGeneratedFilesManager">
<option name="version" value="1" />
</component>
<component name="editorHistoryManager">
<entry file="file://$PROJECT_DIR$/src/model/Customer.java" />
<entry file="file://$PROJECT_DIR$/src/model/Adress.java" />
<entry file="file://$PROJECT_DIR$/src/io.java" />
<entry file="file://$PROJECT_DIR$/src/model/exceptions/OrderException.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="60">
<caret line="4" selection-start-line="4" selection-end-line="4" />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/services/dummy/PizzaServiceDummy.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="345">
<caret line="65" selection-start-line="65" selection-end-line="65" />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/tests/model/PizzaTest.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="345">
<caret line="27" column="20" selection-start-line="27" selection-start-column="20" selection-end-line="27" selection-end-column="20" />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/tests/services/OrderServiceTest.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="420">
<caret line="32" column="5" selection-start-line="32" selection-start-column="5" selection-end-line="32" selection-end-column="5" />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/services/impl/OrderService.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="364">
<caret line="25" column="5" selection-start-line="25" selection-start-column="5" selection-end-line="25" selection-end-column="5" />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/services/impl/PizzaService.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="315">
<caret line="21" column="39" selection-start-line="10" selection-end-line="21" selection-end-column="39" />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/services/interfaces/IPizzaService.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="330">
<caret line="22" column="40" selection-start-line="22" selection-start-column="40" selection-end-line="22" selection-end-column="40" />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/services/io/PizzaIOHandler.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="105">
<caret line="9" selection-start-line="9" selection-end-line="9" />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/view/MainFrame.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="75">
<caret line="5" column="44" selection-start-line="5" selection-start-column="44" selection-end-line="5" selection-end-column="44" />
</state>
</provider>
</entry>
<entry file="jar:///usr/lib/jvm/java-8-openjdk/jre/lib/rt.jar!/java/util/Collections.class">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="199">
<caret line="810" column="22" selection-start-line="810" selection-start-column="22" selection-end-line="810" selection-end-column="22" />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/view/PizzaListPanel.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="105">
<caret line="11" column="13" selection-start-line="11" selection-start-column="13" selection-end-line="11" selection-end-column="13" />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/view/PizzaConfiguratorPanel.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="75">
<caret line="8" column="38" selection-start-line="8" selection-start-column="38" selection-end-line="8" selection-end-column="38" />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/tests/model/OrderTest.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="525">
<caret line="37" column="5" selection-start-line="37" selection-start-column="5" selection-end-line="37" selection-end-column="5" />
<folding>
<element signature="imports" expanded="true" />
</folding>
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/model/Order.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="960">
<caret line="78" selection-start-line="78" selection-end-line="78" />
<folding>
<element signature="imports" expanded="true" />
</folding>
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/src/model/Pizza.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="686">
<caret line="83" column="32" selection-start-line="83" selection-start-column="32" selection-end-line="83" selection-end-column="32" />
<folding>
<element signature="e#1978#1979#0" expanded="true" />
<element signature="e#2017#2018#0" expanded="true" />
</folding>
</state>
</provider>
</entry>
</component>
<component name="masterDetails">
<states>
<state key="ArtifactsStructureConfigurable.UI">
<settings>
<artifact-editor />
<splitter-proportions>
<option name="proportions">
<list>
<option value="0.2" />
</list>
</option>
</splitter-proportions>
</settings>
</state>
<state key="FacetStructureConfigurable.UI">
<settings>
<last-edited>No facets are configured</last-edited>
<splitter-proportions>
<option name="proportions">
<list>
<option value="0.2" />
</list>
</option>
</splitter-proportions>
</settings>
</state>
<state key="GlobalLibrariesConfigurable.UI">
<settings>
<splitter-proportions>
<option name="proportions">
<list>
<option value="0.2" />
</list>
</option>
</splitter-proportions>
</settings>
</state>
<state key="JdkListConfigurable.UI">
<settings>
<last-edited>1.8</last-edited>
<splitter-proportions>
<option name="proportions">
<list>
<option value="0.2" />
</list>
</option>
</splitter-proportions>
</settings>
</state>
<state key="ModuleStructureConfigurable.UI">
<settings>
<last-edited>PizzaProject</last-edited>
<splitter-proportions>
<option name="proportions">
<list>
<option value="0.2" />
</list>
</option>
</splitter-proportions>
</settings>
</state>
<state key="ProjectJDKs.UI">
<settings>
<last-edited>1.8</last-edited>
<splitter-proportions>
<option name="proportions">
<list>
<option value="0.2" />
</list>
</option>
</splitter-proportions>
</settings>
</state>
<state key="ProjectLibrariesConfigurable.UI">
<settings>
<splitter-proportions>
<option name="proportions">
<list>
<option value="0.2" />
</list>
</option>
</splitter-proportions>
</settings>
</state>
</states>
</component>
</project>

View file

@ -0,0 +1,36 @@
<?xml version="1.0" encoding="UTF-8"?>
<module type="JAVA_MODULE" version="4">
<component name="NewModuleRootManager" inherit-compiler-output="true">
<exclude-output />
<content url="file://$MODULE_DIR$">
<sourceFolder url="file://$MODULE_DIR$/src" isTestSource="false" />
<sourceFolder url="file://$MODULE_DIR$/tests" isTestSource="true" />
</content>
<orderEntry type="inheritedJdk" />
<orderEntry type="sourceFolder" forTests="false" />
<orderEntry type="module-library" exported="" scope="TEST">
<library name="JUnit5.0">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/junit/jupiter/junit-jupiter-api/5.0.0/junit-jupiter-api-5.0.0.jar!/" />
<root url="jar://$MAVEN_REPOSITORY$/org/apiguardian/apiguardian-api/1.0.0/apiguardian-api-1.0.0.jar!/" />
<root url="jar://$MAVEN_REPOSITORY$/org/opentest4j/opentest4j/1.0.0/opentest4j-1.0.0.jar!/" />
<root url="jar://$MAVEN_REPOSITORY$/org/junit/platform/junit-platform-commons/1.0.0/junit-platform-commons-1.0.0.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES />
</library>
</orderEntry>
<orderEntry type="module-library" scope="TEST">
<library name="JUnit5.3">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/junit/jupiter/junit-jupiter-api/5.5.0-RC1/junit-jupiter-api-5.5.0-RC1.jar!/" />
<root url="jar://$MAVEN_REPOSITORY$/org/apiguardian/apiguardian-api/1.1.0/apiguardian-api-1.1.0.jar!/" />
<root url="jar://$MAVEN_REPOSITORY$/org/opentest4j/opentest4j/1.2.0/opentest4j-1.2.0.jar!/" />
<root url="jar://$MAVEN_REPOSITORY$/org/junit/platform/junit-platform-commons/1.5.0-RC1/junit-platform-commons-1.5.0-RC1.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES />
</library>
</orderEntry>
</component>
</module>

View file

@ -0,0 +1,127 @@
package model;
import model.exceptions.OrderException;
import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import java.util.List;
/**
* This class represent a typical order in our shop.
*/
public class Order {
private String customer;
private List<Pizza> pizzas;
private Date date;
private OrderState state;
public Order(String customer, List<Pizza> pizzas, Date date) {
this.customer = customer;
this.pizzas = pizzas;
this.date = date;
}
public String getCustomer() {
return customer;
}
/**
* Set the customer. This is not possible if the order is already deliverd
*
* @param customer
*/
public void setCustomer(String customer) {
if(this.state == OrderState.IN_PROGRESS)
this.customer = customer;
}
public List<Pizza> getPizzas() {
return pizzas;
}
/**
* Set the pizzas.
*
* @param pizzas
* @throws OrderException if {@see state} is not in {@link OrderState#IN_PROGRESS}.
*/
public void setPizzas(List<Pizza> pizzas) throws OrderException {
if(this.state == OrderState.IN_PROGRESS)
this.pizzas = pizzas;
else throw new OrderException();
}
/**
* Add pizza p to the order
*
* @param p
* @throws OrderException if {@see state} is not in {@link OrderState#IN_PROGRESS}.
*/
public void addPizza(Pizza p) throws OrderException {
if(this.state == OrderState.IN_PROGRESS)
this.pizzas.add(p);
else throw new OrderException();
}
/**
* @param state the state to be set.
*/
public void setOrderState(OrderState state) {
this.state = state;
}
public Date getDate() {
return date;
}
/**
* Set the Time of the Order
*
* @param date
* @throws IllegalArgumentException if the Order is in the future.
*/
public void setDate(Date date) throws IllegalArgumentException {
Date today = new Date();
Calendar c = Calendar.getInstance();
c.setTime(today);
c.add(Calendar.DAY_OF_MONTH, 20);
Date currentDatePlus20d = c.getTime();
if(date.before(currentDatePlus20d))
this.date = date;
else throw new IllegalArgumentException();
}
/**
* State of the order.
*/
public enum OrderState {
/**
* Customer enter all items
*/
IN_PROGRESS,
/**
* Customer finish order, waiting to be prepared
*/
WAIT,
/**
* Order is in preperatopion
*/
IN_PREPERATION,
/**
* Order is cooked
*/
ORDER_COMPLET,
/**
* Order is in delivery by the waiter or deliveryman
*/
IN_DELIVERY,
/**
* Order is finished completely.
*/
DELIVERD
}
}

View file

@ -0,0 +1,103 @@
package model;
import sun.reflect.generics.reflectiveObjects.NotImplementedException;
import java.util.ArrayList;
import java.util.Collections;
import java.util.Date;
import java.util.List;
public class Pizza {
private List<Toppings> toppings = new ArrayList<>();
private Size size;
private String name;
public List<Toppings> getToppings() {
return toppings;
}
/**
* Add a topping to the pizza. The same topping can be added twice to duplicate the amount.
*
* @param t
*/
public void addTopping(Toppings t) {
if (Collections.frequency(toppings, t) < 2)
this.toppings.add(t);
}
public void setToppings(List<Toppings> toppings) {
this.toppings = toppings;
}
public Size getSize() {
return size;
}
public void setSize(Size size) {
this.size = size;
}
/**
* Set the pizza Size in cm.
* A pizza under 15cm is small.
* Between 15cm and 20cm medium and over 20 cm large.
*
* @param dimension
* @throws IllegalArgumentException if the size is above 25cm
*/
public void setSize(int dimension) throws IllegalArgumentException {
if (dimension > 25)
throw new IllegalArgumentException();
else if (dimension > 20)
this.size = Size.LARGE;
else if (dimension >= 15)
this.size = Size.MEDIUM;
else
this.size = Size.SMALL;
}
public String getName() {
return name;
}
/**
* Set the name of the pizza. Also special charakters as !=?... are not allowed. If the name is empty a default name is set.
*
* @param name
*/
public void setName(String name) {
if (name.isEmpty())
this.name = new Date().toString();
else
this.name = name;
}
/**
* Removes the topping t
*
* @param t
*/
public void removeTopping(Toppings t) {
this.toppings.remove(t);
}
public String toString() {
String toppingString = "";
for (Toppings t : toppings) {
toppingString += t + "/";
}
return "Name " + getName() + ", Size :" + getSize() + "Toppings:" + toppingString;
}
public enum Toppings {Cheese, Tomato, Ham, Chicken, PineApple, Pepperonie}
;
public enum Size {SMALL, MEDIUM, LARGE}
;
}

View file

@ -0,0 +1,5 @@
package model.exceptions;
public class OrderException extends Exception {
}

View file

@ -0,0 +1,76 @@
package services.dummy;
import model.Pizza;
import services.interfaces.IPizzaService;
import sun.reflect.generics.reflectiveObjects.NotImplementedException;
import java.nio.charset.Charset;
import java.util.ArrayList;
import java.util.List;
import java.util.Random;
public class PizzaServiceDummy implements IPizzaService {
private Random random = new Random();
private List<Pizza> pizzas;
public PizzaServiceDummy() {
pizzas = getListOfRandomPizzas(20);
}
public List<Pizza> getListOfRandomPizzas(int number) {
List<Pizza> list = new ArrayList<>();
for (int i = 0; i < number; i++) {
Pizza p = generateRandomPizza();
list.add(p);
}
return list;
}
public Pizza generateRandomPizza() {
Pizza p = new Pizza();
int toppingCounter = random.nextInt(10) + 1;
for (int i = 0; i < toppingCounter; i++) {
Pizza.Toppings t = getRandomTopping();
p.addTopping(t);
}
p.setSize(getRandomSize());
p.setName(generateRandomName());
return p;
}
public Pizza.Toppings getRandomTopping() {
Pizza.Toppings[] toppings = Pizza.Toppings.values();
int t = random.nextInt(toppings.length - 1);
return toppings[t];
}
public Pizza.Size getRandomSize() {
Pizza.Size[] sizes = Pizza.Size.values();
int t = random.nextInt(sizes.length - 1);
return sizes[t];
}
public String generateRandomName() {
byte[] array = new byte[7]; // length is bounded by 7
new Random().nextBytes(array);
return new String(array, Charset.forName("UTF-8"));
}
@Override
public void saveNewPizza(Pizza p) {
pizzas.add(p);
}
@Override
public List<Pizza> getAllPizzas() {
return pizzas;
}
@Override
public Pizza getPizzaByNAme(String name) {
throw new NotImplementedException();
}
}

View file

@ -0,0 +1,39 @@
package services.impl;
import model.Order;
import sun.reflect.generics.reflectiveObjects.NotImplementedException;
import java.util.List;
public class OrderService {
private List<Order> orders;
public OrderService(List<Order> orders) {
this.orders = orders;
//TODO
throw new NotImplementedException();
}
public void addOrder(Order o) {
//TODO
throw new NotImplementedException();
}
public void removeOrder(Order o) {
//TODO
throw new NotImplementedException();
}
public List<Order> getAllNonDeliverdOrder() {
//TODO
throw new NotImplementedException();
//return null;
}
public List<Order> getAllDeliverdOder() {
//TODO
throw new NotImplementedException();
// return null;
}
}

View file

@ -0,0 +1,25 @@
package services.impl;
import model.Pizza;
import services.io.PizzaIOHandler;
import java.util.List;
public class PizzaService {
private PizzaIOHandler pizzaIOHandler;
private List<Pizza> pizzas;
public void saveNewPizza(Pizza p) {
pizzas.add(p);
pizzaIOHandler.savePizzas(pizzas);
}
public void loadPizzas() {
//Filechooser und
pizzas = pizzaIOHandler.loadPizzas("filename");
}
public List<Pizza> getAllPizzas() {
return pizzas;
}
}

View file

@ -0,0 +1,26 @@
package services.interfaces;
import model.Pizza;
import java.util.List;
public interface IPizzaService {
/**
* Save the pizza p
*
* @param p
*/
public void saveNewPizza(Pizza p);
/**
* @return all Pizzas that have been created
*/
public List<Pizza> getAllPizzas();
/**
* @param name
* @return Pizza with the name name.
*/
public Pizza getPizzaByNAme(String name);
}

View file

@ -0,0 +1,16 @@
package services.io;
import model.Pizza;
import java.util.List;
public class PizzaIOHandler {
public void savePizzas(List<Pizza> p) {
}
public List<Pizza> loadPizzas(String filename) {
return null;
}
}

View file

@ -0,0 +1,16 @@
package view;
import javax.swing.*;
/**
* Excample implementastion of a Main Frame.
*/
public class MainFrame extends JFrame {
private PizzaConfiguratorPanel configuratorPanel;
private PizzaListPanel listPanel;
public void updateAllViews() {
listPanel.update();
configuratorPanel.update();
}
}

View file

@ -0,0 +1,25 @@
package view;
import model.Pizza;
import services.impl.PizzaService;
import javax.swing.*;
/**
* Example implementation of a custom Panel
*/
public class PizzaConfiguratorPanel extends JPanel {
private PizzaService service;
private MainFrame mainFrame;
private void saveNewPizza() {
//Todo
service.saveNewPizza(new Pizza());
mainFrame.updateAllViews();
}
public void update() {
}
}

View file

@ -0,0 +1,22 @@
package view;
import model.Pizza;
import services.impl.PizzaService;
import javax.swing.*;
import java.util.List;
/**
* Example of a custom Panel
*/
public class PizzaListPanel extends JPanel {
PizzaService service;
private void displayAllServices() {
List<Pizza> pizzas = service.getAllPizzas();
}
public void update() {
}
}

View file

@ -0,0 +1,51 @@
package model;
import org.junit.jupiter.api.Test;
import static org.junit.jupiter.api.Assertions.*;
class OrderTest {
@Test
void getCustomer() {
}
@Test
void setCustomer() {
}
@Test
void getPizzas() {
}
@Test
void setPizzas() {
}
/**
* Tests if the exception is thrown when order is not in {@link model.Order.OrderState#IN_PROGRESS}
*/
@Test
void addPizzaAfterCompletion() {
}
/**
* Tests if the pizza is added to the pizza List.
*/
@Test
void addPizzaBeforCompletion() {
}
@Test
void setOrderState() {
}
@Test
void getDate() {
}
@Test
void setDate() {
}
}

View file

@ -0,0 +1,34 @@
package model;
import org.junit.jupiter.api.AfterEach;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
import static org.junit.jupiter.api.Assertions.*;
class PizzaTest {
@BeforeEach
void setUp() {
}
@AfterEach
void tearDown() {
}
@Test
void addTopping() {
}
@Test
void setSize() {
}
@Test
void setName() {
}
@Test
void removeTopping() {
}
}

View file

@ -0,0 +1,34 @@
package services;
import org.junit.jupiter.api.AfterEach;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
import static org.junit.jupiter.api.Assertions.*;
class OrderServiceTest {
@BeforeEach
void setUp() {
}
@AfterEach
void tearDown() {
}
@Test
void addOrder() {
}
@Test
void removeOrder() {
}
@Test
void getAllNonDeliverdOrder() {
}
@Test
void getAllDeliverdOder() {
}
}