Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
P
Projet GORDYJAN_BAGNOLY_GARCIA_POIGNONNEC
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
POIGNONNEC
Projet GORDYJAN_BAGNOLY_GARCIA_POIGNONNEC
Commits
23b372a2
Commit
23b372a2
authored
May 13, 2019
by
Arthur POIGNONNEC
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
[DEV] Evol modèle voiture (pièces)
parent
fa45fb1e
Changes
29
Hide whitespace changes
Inline
Side-by-side
Showing
29 changed files
with
520 additions
and
47 deletions
+520
-47
geometry.iml
.idea/geometry.iml
+2
-0
misc.xml
.idea/misc.xml
+1
-1
uiDesigner.xml
.idea/uiDesigner.xml
+124
-0
Option.java
garage/src/Option/Option.java
+0
-6
Garage.java
garage/src/garage/Garage.java
+1
-1
Main.java
garage/src/main/Main.java
+1
-1
Brand.java
garage/src/vehicle/Brand.java
+1
-12
Vehicle.java
garage/src/vehicle/Vehicle.java
+7
-6
Brake.java
garage/src/vehicle/part/brake/Brake.java
+26
-0
BrakeType.java
garage/src/vehicle/part/brake/BrakeType.java
+32
-0
DieselEngine.java
garage/src/vehicle/part/engine/DieselEngine.java
+2
-2
ElectricEngine.java
garage/src/vehicle/part/engine/ElectricEngine.java
+1
-1
Engine.java
garage/src/vehicle/part/engine/Engine.java
+2
-8
EngineBrokenException.java
garage/src/vehicle/part/engine/EngineBrokenException.java
+7
-0
EngineType.java
garage/src/vehicle/part/engine/EngineType.java
+2
-3
HybridEngine.java
garage/src/vehicle/part/engine/HybridEngine.java
+1
-1
PetrolEngine.java
garage/src/vehicle/part/engine/PetrolEngine.java
+1
-1
Gear.java
garage/src/vehicle/part/gearbox/Gear.java
+41
-0
GearBox.java
garage/src/vehicle/part/gearbox/GearBox.java
+15
-0
GearBoxAutomatic.java
garage/src/vehicle/part/gearbox/GearBoxAutomatic.java
+23
-0
GearBoxManual.java
garage/src/vehicle/part/gearbox/GearBoxManual.java
+98
-0
StallException.java
garage/src/vehicle/part/gearbox/StallException.java
+8
-0
Pedal.java
garage/src/vehicle/part/pedal/Pedal.java
+11
-0
PedalAccelerator.java
garage/src/vehicle/part/pedal/PedalAccelerator.java
+25
-0
PedalBrake.java
garage/src/vehicle/part/pedal/PedalBrake.java
+32
-0
PedalClutch.java
garage/src/vehicle/part/pedal/PedalClutch.java
+34
-0
TestEngine.java
garage/test/TestEngine.java
+0
-2
TestVehicle.java
garage/test/TestVehicle.java
+0
-2
geometry.iml
geometry.iml
+22
-0
No files found.
.idea/geometry.iml
View file @
23b372a2
...
...
@@ -3,6 +3,8 @@
<component
name=
"NewModuleRootManager"
inherit-compiler-output=
"true"
>
<exclude-output
/>
<content
url=
"file://$MODULE_DIR$"
>
<sourceFolder
url=
"file://$MODULE_DIR$/garage/src"
isTestSource=
"false"
/>
<sourceFolder
url=
"file://$MODULE_DIR$/garage/test"
isTestSource=
"true"
/>
<excludeFolder
url=
"file://$MODULE_DIR$/.gradle"
/>
<excludeFolder
url=
"file://$MODULE_DIR$/build"
/>
</content>
...
...
.idea/misc.xml
View file @
23b372a2
<?xml version="1.0" encoding="UTF-8"?>
<project
version=
"4"
>
<component
name=
"ProjectRootManager"
version=
"2"
languageLevel=
"JDK_11"
project-jdk-name=
"1
2
"
project-jdk-type=
"JavaSDK"
>
<component
name=
"ProjectRootManager"
version=
"2"
languageLevel=
"JDK_11"
project-jdk-name=
"1
1
"
project-jdk-type=
"JavaSDK"
>
<output
url=
"file://$PROJECT_DIR$/classes"
/>
</component>
</project>
\ No newline at end of file
.idea/uiDesigner.xml
0 → 100644
View file @
23b372a2
<?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>
\ No newline at end of file
garage/src/Option/Option.java
deleted
100644 → 0
View file @
fa45fb1e
package
Option
;
public
class
Option
{
}
garage/src/
main
/Garage.java
→
garage/src/
garage
/Garage.java
View file @
23b372a2
package
main
;
package
garage
;
public
class
Garage
{
}
garage/src/main/Main.java
View file @
23b372a2
...
...
@@ -2,7 +2,7 @@ package main;
public
class
Main
{
public
static
void
main
(
String
[]
args
)
{
public
static
void
main
(
String
[]
args
)
throws
Exception
{
// CREATE vehicle LAGUNA
...
...
garage/src/
V
ehicle/Brand.java
→
garage/src/
v
ehicle/Brand.java
View file @
23b372a2
package
V
ehicle
;
package
v
ehicle
;
public
enum
Brand
{
...
...
@@ -16,17 +16,6 @@ public enum Brand {
return
value
;
}
/*
public static Brand getEnum(String value) {
for (Brand brand : Brand.values()) {
if (brand.getValue().equals(value)) {
return brand;
}
}
}
*/
public
static
boolean
contains
(
String
value
)
{
for
(
Brand
brand
:
Brand
.
values
())
{
if
(
brand
.
getValue
().
equals
(
value
))
{
...
...
garage/src/
V
ehicle/Vehicle.java
→
garage/src/
v
ehicle/Vehicle.java
View file @
23b372a2
package
V
ehicle
;
package
v
ehicle
;
public
class
Vehicle
{
public
abstract
class
Vehicle
{
private
static
int
numberOfVehicles
=
0
;
private
Double
price
;
private
String
name
;
// private options List<Option>
// private brandName Brand
private
Brand
brand
;
private
Double
weight
;
private
Double
length
;
private
Double
width
;
public
Vehicle
()
{
numberOfVehicles
++;
}
// METHODS
...
...
garage/src/vehicle/part/brake/Brake.java
0 → 100644
View file @
23b372a2
package
vehicle
.
part
.
brake
;
public
class
Brake
{
private
BrakeType
type
;
private
Integer
strength
;
private
Integer
resistance
;
private
Double
wear
;
private
Double
state
;
public
Brake
(
BrakeType
type
)
{
this
.
type
=
type
;
this
.
strength
=
type
.
getStrength
();
this
.
resistance
=
type
.
getResistance
();
this
.
wear
=
0
d
;
this
.
state
=
0
d
;
}
public
void
update
()
{
}
public
void
setState
(
Double
state
){
this
.
state
=
state
;
}
}
garage/src/vehicle/part/brake/BrakeType.java
0 → 100644
View file @
23b372a2
package
vehicle
.
part
.
brake
;
public
enum
BrakeType
{
DISC_FX100
(
15
,
1
),
DISC_FX200
(
25
,
1
),
DISC_FX300
(
30
,
2
),
DISC_FX400
(
35
,
2
),
DISC_FX500
(
50
,
3
),
PAD_FX100
(
10
,
1
),
PAD_FX200
(
15
,
1
),
PAD_FX300
(
25
,
2
),
PAD_FX400
(
30
,
3
),
PAD_FX500
(
45
,
4
);
private
final
Integer
strength
;
private
final
Integer
resistance
;
BrakeType
(
Integer
strength
,
Integer
resistance
)
{
this
.
resistance
=
resistance
;
this
.
strength
=
strength
;
}
public
Integer
getStrength
()
{
return
strength
;
}
public
Integer
getResistance
()
{
return
resistance
;
}
}
garage/src/
E
ngine/DieselEngine.java
→
garage/src/
vehicle/part/e
ngine/DieselEngine.java
View file @
23b372a2
package
E
ngine
;
package
vehicle
.
part
.
e
ngine
;
public
class
DieselEngine
extends
Engine
{
...
...
@@ -9,6 +9,6 @@ public class DieselEngine extends Engine {
}
public
String
toString
()
{
return
"Diesel Engine"
;
return
"Diesel
vehicle.parts.
Engine"
;
}
}
garage/src/
E
ngine/ElectricEngine.java
→
garage/src/
vehicle/part/e
ngine/ElectricEngine.java
View file @
23b372a2
package
E
ngine
;
package
vehicle
.
part
.
e
ngine
;
public
class
ElectricEngine
{
}
garage/src/
E
ngine/Engine.java
→
garage/src/
vehicle/part/e
ngine/Engine.java
View file @
23b372a2
package
E
ngine
;
package
vehicle
.
part
.
e
ngine
;
public
class
Engine
{
...
...
@@ -14,17 +14,11 @@ public class Engine {
}
public
String
toString
()
{
return
"This
vehicle ha
s a "
+
cylindre
+
"engine, it's a "
+
type
+
" engine and it costs "
+
price
+
" €."
;
return
"This
i
s a "
+
cylindre
+
"engine, it's a "
+
type
+
" engine and it costs "
+
price
+
" €."
;
}
public
String
getCylindre
()
{
return
this
.
cylindre
;
}
public
Double
getPrice
()
{
}
}
garage/src/vehicle/part/engine/EngineBrokenException.java
0 → 100644
View file @
23b372a2
package
vehicle
.
part
.
engine
;
public
class
EngineBrokenException
extends
Exception
{
}
garage/src/
E
ngine/EngineType.java
→
garage/src/
vehicle/part/e
ngine/EngineType.java
View file @
23b372a2
package
E
ngine
;
package
vehicle
.
part
.
e
ngine
;
public
enum
EngineType
{
...
...
@@ -17,15 +17,14 @@ public enum EngineType {
return
value
;
}
/*
public
static
EngineType
getEnum
(
String
value
)
{
for
(
EngineType
type
:
EngineType
.
values
())
{
if
(
type
.
getValue
().
equals
(
value
))
{
return
type
;
}
}
return
null
;
}
*/
public
static
boolean
contains
(
String
value
)
{
for
(
EngineType
type
:
EngineType
.
values
())
{
...
...
garage/src/
E
ngine/HybridEngine.java
→
garage/src/
vehicle/part/e
ngine/HybridEngine.java
View file @
23b372a2
package
E
ngine
;
package
vehicle
.
part
.
e
ngine
;
public
class
HybridEngine
{
}
garage/src/
E
ngine/PetrolEngine.java
→
garage/src/
vehicle/part/e
ngine/PetrolEngine.java
View file @
23b372a2
package
E
ngine
;
package
vehicle
.
part
.
e
ngine
;
public
class
PetrolEngine
{
}
garage/src/vehicle/part/gearbox/Gear.java
0 → 100644
View file @
23b372a2
package
vehicle
.
part
.
gearbox
;
public
enum
Gear
{
REVERSE
(-
1
),
NEUTRAL
(
0
),
FIRST
(
1
),
SECOND
(
2
),
THRID
(
3
),
FORTH
(
4
),
FIFTH
(
5
),
SIXTH
(
6
);
private
final
Integer
value
;
Gear
(
Integer
value
)
{
this
.
value
=
value
;
}
public
Integer
getValue
()
{
return
value
;
}
public
static
Gear
getEnum
(
Integer
value
)
{
for
(
Gear
type
:
Gear
.
values
())
{
if
(
type
.
getValue
().
equals
(
value
))
{
return
type
;
}
}
return
null
;
}
public
static
boolean
contains
(
Integer
value
)
{
for
(
Gear
type
:
Gear
.
values
())
{
if
(
type
.
getValue
().
equals
(
value
))
{
return
true
;
}
}
return
false
;
}
}
garage/src/vehicle/part/gearbox/GearBox.java
0 → 100644
View file @
23b372a2
package
vehicle
.
part
.
gearbox
;
import
vehicle.part.engine.EngineBrokenException
;
public
interface
GearBox
{
void
gearUp
()
throws
StallException
;
void
gearDown
()
throws
StallException
;
void
neutral
()
throws
StallException
;
void
reverse
()
throws
StallException
,
EngineBrokenException
;
}
\ No newline at end of file
garage/src/vehicle/part/gearbox/GearBoxAutomatic.java
0 → 100644
View file @
23b372a2
package
vehicle
.
part
.
gearbox
;
public
class
GearBoxAutomatic
implements
GearBox
{
@Override
public
void
gearUp
()
{
}
@Override
public
void
gearDown
()
{
}
@Override
public
void
neutral
()
{
}
@Override
public
void
reverse
()
{
}
}
garage/src/vehicle/part/gearbox/GearBoxManual.java
0 → 100644
View file @
23b372a2
package
vehicle
.
part
.
gearbox
;
import
vehicle.part.engine.Engine
;
import
vehicle.part.engine.EngineBrokenException
;
public
class
GearBoxManual
implements
GearBox
{
private
Gear
currentGear
;
private
Gear
maxGear
;
private
Boolean
engaged
;
/**
* Constructor
* @param maxGear
*/
public
GearBoxManual
(
Gear
maxGear
)
{
this
.
maxGear
=
maxGear
;
this
.
currentGear
=
Gear
.
NEUTRAL
;
this
.
engaged
=
false
;
}
/**
* Method to gear up
* @throws StallException
*/
@Override
public
void
gearUp
()
throws
StallException
{
if
(
engaged
)
{
if
(!
currentGear
.
equals
(
maxGear
))
{
currentGear
=
Gear
.
getEnum
(
currentGear
.
getValue
()
+
1
);
}
}
else
throw
new
StallException
();
}
/**
* Method to gear down
* @throws StallException
*/
@Override
public
void
gearDown
()
throws
StallException
{
if
(
engaged
)
{
if
(!
currentGear
.
equals
(
Gear
.
REVERSE
))
{
currentGear
=
Gear
.
getEnum
(
currentGear
.
getValue
()
-
1
);
}
}
else
throw
new
StallException
();
}
/**
* Go to neutral gear
* @throws StallException
*/
@Override
public
void
neutral
()
throws
StallException
{
if
(
engaged
)
{
currentGear
=
Gear
.
NEUTRAL
;
}
else
throw
new
StallException
();
}
/**
* Go to reverse gear
* @throws StallException
* @throws EngineBrokenException
*/
@Override
public
void
reverse
()
throws
StallException
,
EngineBrokenException
{
if
(
engaged
)
{
// TODO Récupérer la vitesse de la voiture pour savoir si le moteur casse
if
(
true
)
{
currentGear
=
Gear
.
REVERSE
;
}
else
{
throw
new
EngineBrokenException
();
}
}
else
throw
new
StallException
();
}
/**
* Engage
*/
public
void
engage
(){
engaged
=
true
;
}
/**
* Disengage
*/
public
void
disengage
(){
engaged
=
false
;
}
}
garage/src/vehicle/part/gearbox/StallException.java
0 → 100644
View file @
23b372a2
package
vehicle
.
part
.
gearbox
;
public
class
StallException
extends
Exception
{
public
StallException
()
{
super
(
"Le moteur a calé"
);
}
}
garage/src/vehicle/part/pedal/Pedal.java
0 → 100644
View file @
23b372a2
package
vehicle
.
part
.
pedal
;
public
interface
Pedal
{
void
setState
(
Double
pressure
);
void
release
();
void
update
();
}
garage/src/vehicle/part/pedal/PedalAccelerator.java
0 → 100644
View file @
23b372a2
package
vehicle
.
part
.
pedal
;
import
vehicle.part.engine.Engine
;
public
class
PedalAccelerator
implements
Pedal
{
private
Engine
engine
;
private
Double
state
;
@Override
public
void
setState
(
Double
pressure
)
{
this
.
state
=
pressure
;
}
@Override
public
void
release
()
{
state
=
0
d
;
}
@Override
public
void
update
()
{
}
}
garage/src/vehicle/part/pedal/PedalBrake.java
0 → 100644
View file @
23b372a2
package
vehicle
.
part
.
pedal
;
import
vehicle.part.brake.Brake
;
import
java.util.List
;
public
class
PedalBrake
implements
Pedal
{
private
List
<
Brake
>
brakes
;
private
Double
state
;
public
PedalBrake
(
List
<
Brake
>
brakes
)
{
this
.
brakes
=
brakes
;
}
@Override
public
void
setState
(
Double
pressure
)
{
state
=
pressure
;
}
@Override
public
void
release
()
{
state
=
0
d
;
}
@Override
public
void
update
()
{
for
(
Brake
brake
:
brakes
){
brake
.
setState
(
state
);
}
}
}
garage/src/vehicle/part/pedal/PedalClutch.java
0 → 100644
View file @
23b372a2
package
vehicle
.
part
.
pedal
;
import
vehicle.part.gearbox.GearBox
;
import
vehicle.part.gearbox.GearBoxManual
;
public
class
PedalClutch
implements
Pedal
{
private
GearBoxManual
gearBox
;
private
Double
state
;
public
PedalClutch
(
GearBoxManual
gearBox
)
{
this
.
gearBox
=
gearBox
;
this
.
state
=
0
d
;
}
@Override
public
void
setState
(
Double
pressure
)
{
state
=
pressure
;
}
@Override
public
void
release
()
{
state
=
0
d
;
}
@Override
public
void
update
()
{
if
(
state
>
40
d
)
gearBox
.
engage
();
else
gearBox
.
disengage
();
}
}
garage/
src/
test/TestEngine.java
→
garage/test/TestEngine.java
View file @
23b372a2
package
test
;
public
class
TestEngine
{
}
garage/
src/
test/TestVehicle.java
→
garage/test/TestVehicle.java
View file @
23b372a2
package
test
;
public
class
TestVehicle
{
}
geometry.iml
0 → 100644
View file @
23b372a2
<?xml version="1.0" encoding="UTF-8"?>
<module
external.linked.project.id=
"geometry"
external.linked.project.path=
"$MODULE_DIR$"
external.root.project.path=
"$MODULE_DIR$"
external.system.id=
"GRADLE"
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/main"
isTestSource=
"false"
/>
<sourceFolder
url=
"file://$MODULE_DIR$/src/tests"
isTestSource=
"true"
/>
</content>
<orderEntry
type=
"inheritedJdk"
/>
<orderEntry
type=
"sourceFolder"
forTests=
"false"
/>
<orderEntry
type=
"module-library"
scope=
"TEST"
>
<library
name=
"JUnit4"
>
<CLASSES>
<root
url=
"jar://$USER_HOME$/.m2/repository/junit/junit/4.12/junit-4.12.jar!/"
/>
<root
url=
"jar://$USER_HOME$/.m2/repository/org/hamcrest/hamcrest-core/1.3/hamcrest-core-1.3.jar!/"
/>
</CLASSES>
<JAVADOC
/>
<SOURCES
/>
</library>
</orderEntry>
</component>
</module>
\ No newline at end of file
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment