Browse Source

Projet-Fini

Joao Conceicao Nunes 3 years ago
commit
be99e1497b
100 changed files with 19895 additions and 0 deletions
  1. 14280
    0
      .metadata/.bak_0.log
  2. 0
    0
      .metadata/.lock
  3. 58
    0
      .metadata/.log
  4. 334
    0
      .metadata/.plugins/org.eclipse.core.resources/.history/1/608a8de3fa48001b145081b6f5274ba2
  5. 274
    0
      .metadata/.plugins/org.eclipse.core.resources/.history/21/70f982a99e47001b1997ad6a8c66f017
  6. 234
    0
      .metadata/.plugins/org.eclipse.core.resources/.history/2d/a03e93079d47001b1997ad6a8c66f017
  7. 271
    0
      .metadata/.plugins/org.eclipse.core.resources/.history/2f/30c7668e9d47001b1997ad6a8c66f017
  8. 342
    0
      .metadata/.plugins/org.eclipse.core.resources/.history/30/303e7b12fb48001b145081b6f5274ba2
  9. 52
    0
      .metadata/.plugins/org.eclipse.core.resources/.history/38/103cfca2fc48001b145081b6f5274ba2
  10. 355
    0
      .metadata/.plugins/org.eclipse.core.resources/.history/40/a0a3b407ed48001b145081b6f5274ba2
  11. 281
    0
      .metadata/.plugins/org.eclipse.core.resources/.history/52/f0fcc67ba047001b1997ad6a8c66f017
  12. 271
    0
      .metadata/.plugins/org.eclipse.core.resources/.history/67/a038f64a9d47001b1997ad6a8c66f017
  13. 334
    0
      .metadata/.plugins/org.eclipse.core.resources/.history/69/7045b2eff448001b145081b6f5274ba2
  14. 225
    0
      .metadata/.plugins/org.eclipse.core.resources/.history/8/108d1eef9847001b1997ad6a8c66f017
  15. 314
    0
      .metadata/.plugins/org.eclipse.core.resources/.history/80/e0f2dc6ea247001b1997ad6a8c66f017
  16. 60
    0
      .metadata/.plugins/org.eclipse.core.resources/.history/8b/6035942ffd48001b145081b6f5274ba2
  17. 358
    0
      .metadata/.plugins/org.eclipse.core.resources/.history/95/1080a487fe48001b145081b6f5274ba2
  18. 225
    0
      .metadata/.plugins/org.eclipse.core.resources/.history/9f/906a0a379947001b1997ad6a8c66f017
  19. 216
    0
      .metadata/.plugins/org.eclipse.core.resources/.history/a9/306e7b699847001b1997ad6a8c66f017
  20. 225
    0
      .metadata/.plugins/org.eclipse.core.resources/.history/b3/d003a4a59947001b1997ad6a8c66f017
  21. 330
    0
      .metadata/.plugins/org.eclipse.core.resources/.history/f/5052879af148001b145081b6f5274ba2
  22. 353
    0
      .metadata/.plugins/org.eclipse.core.resources/.history/f4/c04bf41dfc48001b145081b6f5274ba2
  23. 345
    0
      .metadata/.plugins/org.eclipse.core.resources/.history/fa/f06335b8fb48001b145081b6f5274ba2
  24. BIN
      .metadata/.plugins/org.eclipse.core.resources/.projects/AutomChauffage/.indexes/properties.index
  25. BIN
      .metadata/.plugins/org.eclipse.core.resources/.projects/AutomChauffage/.location
  26. BIN
      .metadata/.plugins/org.eclipse.core.resources/.projects/AutomChauffage/.markers
  27. BIN
      .metadata/.plugins/org.eclipse.core.resources/.projects/AutomChauffage/org.eclipse.jdt.core/state.dat
  28. BIN
      .metadata/.plugins/org.eclipse.core.resources/.projects/AutomFenetre/.indexes/properties.index
  29. BIN
      .metadata/.plugins/org.eclipse.core.resources/.projects/AutomFenetre/.location
  30. BIN
      .metadata/.plugins/org.eclipse.core.resources/.projects/AutomFenetre/.markers
  31. BIN
      .metadata/.plugins/org.eclipse.core.resources/.projects/AutomFenetre/org.eclipse.jdt.core/state.dat
  32. BIN
      .metadata/.plugins/org.eclipse.core.resources/.projects/AutomLumiere/.indexes/properties.index
  33. BIN
      .metadata/.plugins/org.eclipse.core.resources/.projects/AutomLumiere/.location
  34. BIN
      .metadata/.plugins/org.eclipse.core.resources/.projects/AutomLumiere/.markers
  35. BIN
      .metadata/.plugins/org.eclipse.core.resources/.projects/AutomLumiere/org.eclipse.jdt.core/state.dat
  36. BIN
      .metadata/.plugins/org.eclipse.core.resources/.projects/AutomPorte/.indexes/properties.index
  37. BIN
      .metadata/.plugins/org.eclipse.core.resources/.projects/AutomPorte/.location
  38. BIN
      .metadata/.plugins/org.eclipse.core.resources/.projects/AutomPorte/.markers
  39. BIN
      .metadata/.plugins/org.eclipse.core.resources/.projects/AutomPorte/org.eclipse.jdt.core/state.dat
  40. BIN
      .metadata/.plugins/org.eclipse.core.resources/.projects/CaptCO2/.indexes/properties.index
  41. BIN
      .metadata/.plugins/org.eclipse.core.resources/.projects/CaptCO2/.location
  42. BIN
      .metadata/.plugins/org.eclipse.core.resources/.projects/CaptCO2/.markers
  43. BIN
      .metadata/.plugins/org.eclipse.core.resources/.projects/CaptCO2/org.eclipse.jdt.core/state.dat
  44. BIN
      .metadata/.plugins/org.eclipse.core.resources/.projects/CaptHum/.indexes/properties.index
  45. BIN
      .metadata/.plugins/org.eclipse.core.resources/.projects/CaptHum/.location
  46. BIN
      .metadata/.plugins/org.eclipse.core.resources/.projects/CaptHum/.markers
  47. BIN
      .metadata/.plugins/org.eclipse.core.resources/.projects/CaptHum/org.eclipse.jdt.core/state.dat
  48. BIN
      .metadata/.plugins/org.eclipse.core.resources/.projects/CaptMouv/.indexes/e4/b9/22/7e/e5/history.index
  49. BIN
      .metadata/.plugins/org.eclipse.core.resources/.projects/CaptMouv/.indexes/properties.index
  50. BIN
      .metadata/.plugins/org.eclipse.core.resources/.projects/CaptMouv/.location
  51. BIN
      .metadata/.plugins/org.eclipse.core.resources/.projects/CaptMouv/.markers
  52. BIN
      .metadata/.plugins/org.eclipse.core.resources/.projects/CaptMouv/org.eclipse.jdt.core/state.dat
  53. BIN
      .metadata/.plugins/org.eclipse.core.resources/.projects/CaptTemp/.indexes/properties.index
  54. BIN
      .metadata/.plugins/org.eclipse.core.resources/.projects/CaptTemp/.location
  55. BIN
      .metadata/.plugins/org.eclipse.core.resources/.projects/CaptTemp/.markers
  56. BIN
      .metadata/.plugins/org.eclipse.core.resources/.projects/CaptTemp/org.eclipse.jdt.core/state.dat
  57. BIN
      .metadata/.plugins/org.eclipse.core.resources/.projects/Controller/.indexes/e4/b9/22/7e/44/history.index
  58. BIN
      .metadata/.plugins/org.eclipse.core.resources/.projects/Controller/.indexes/properties.index
  59. BIN
      .metadata/.plugins/org.eclipse.core.resources/.projects/Controller/.location
  60. BIN
      .metadata/.plugins/org.eclipse.core.resources/.projects/Controller/.markers
  61. BIN
      .metadata/.plugins/org.eclipse.core.resources/.projects/Controller/org.eclipse.jdt.core/state.dat
  62. BIN
      .metadata/.plugins/org.eclipse.core.resources/.projects/Simulation/.indexes/properties.index
  63. BIN
      .metadata/.plugins/org.eclipse.core.resources/.projects/Simulation/.location
  64. BIN
      .metadata/.plugins/org.eclipse.core.resources/.projects/Simulation/.markers
  65. BIN
      .metadata/.plugins/org.eclipse.core.resources/.projects/Simulation/org.eclipse.jdt.core/state.dat
  66. BIN
      .metadata/.plugins/org.eclipse.core.resources/.projects/semantic/.indexes/properties.index
  67. BIN
      .metadata/.plugins/org.eclipse.core.resources/.projects/semantic/.location
  68. BIN
      .metadata/.plugins/org.eclipse.core.resources/.projects/semantic/.markers
  69. BIN
      .metadata/.plugins/org.eclipse.core.resources/.projects/semantic/1.tree
  70. 3
    0
      .metadata/.plugins/org.eclipse.core.resources/.projects/semantic/org.eclipse.egit.core/GitProjectData.properties
  71. BIN
      .metadata/.plugins/org.eclipse.core.resources/.projects/semantic/org.eclipse.jdt.core/state.dat
  72. 1
    0
      .metadata/.plugins/org.eclipse.core.resources/.root/.indexes/history.version
  73. BIN
      .metadata/.plugins/org.eclipse.core.resources/.root/.indexes/properties.index
  74. 1
    0
      .metadata/.plugins/org.eclipse.core.resources/.root/.indexes/properties.version
  75. BIN
      .metadata/.plugins/org.eclipse.core.resources/.root/10.tree
  76. BIN
      .metadata/.plugins/org.eclipse.core.resources/.safetable/org.eclipse.core.resources
  77. 2
    0
      .metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.core.resources.prefs
  78. 3
    0
      .metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.debug.ui.prefs
  79. 3
    0
      .metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.egit.core.prefs
  80. 9
    0
      .metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jdt.core.prefs
  81. 2
    0
      .metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jdt.junit.prefs
  82. 2
    0
      .metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jdt.launching.prefs
  83. 12
    0
      .metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jdt.ui.prefs
  84. 2
    0
      .metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jsch.core.prefs
  85. 2
    0
      .metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.m2e.discovery.prefs
  86. 2
    0
      .metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.pde.api.tools.prefs
  87. 2
    0
      .metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.pde.core.prefs
  88. 2
    0
      .metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.editors.prefs
  89. 5
    0
      .metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.ide.prefs
  90. 2
    0
      .metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.navigator.prefs
  91. 2
    0
      .metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.prefs
  92. 9
    0
      .metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.workbench.prefs
  93. 2
    0
      .metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.urischeme.prefs
  94. 15
    0
      .metadata/.plugins/org.eclipse.debug.core/.launches/AutomChauffageApplication.launch
  95. 15
    0
      .metadata/.plugins/org.eclipse.debug.core/.launches/AutomFenetreApplication.launch
  96. 15
    0
      .metadata/.plugins/org.eclipse.debug.core/.launches/AutomLumiereApplication.launch
  97. 15
    0
      .metadata/.plugins/org.eclipse.debug.core/.launches/AutomPorteApplication.launch
  98. 15
    0
      .metadata/.plugins/org.eclipse.debug.core/.launches/CaptCo2Application.launch
  99. 15
    0
      .metadata/.plugins/org.eclipse.debug.core/.launches/CaptMouvApplication.launch
  100. 0
    0
      .metadata/.plugins/org.eclipse.debug.core/.launches/CaptTempApplication.launch

+ 14280
- 0
.metadata/.bak_0.log
File diff suppressed because it is too large
View File


+ 0
- 0
.metadata/.lock View File


+ 58
- 0
.metadata/.log View File

@@ -0,0 +1,58 @@
1
+!SESSION 2020-12-28 09:58:41.980 -----------------------------------------------
2
+eclipse.buildId=4.17.0.I20200902-1800
3
+java.version=13.0.2
4
+java.vendor=Oracle Corporation
5
+BootLoader constants: OS=win32, ARCH=x86_64, WS=win32, NL=fr_FR
6
+Framework arguments:  -product org.eclipse.epp.package.rcp.product
7
+Command-line arguments:  -os win32 -ws win32 -arch x86_64 -product org.eclipse.epp.package.rcp.product
8
+
9
+This is a continuation of log file C:\Users\nunes\OneDrive\Bureau\WorkDay\INSA\TP_NAWAL\Services_package\.metadata\.bak_0.log
10
+Created Time: 2020-12-28 12:06:08.591
11
+
12
+!ENTRY org.eclipse.ui.monitoring 2 0 2020-12-28 12:06:08.592
13
+!MESSAGE UI freeze of 0,66s at 12:06:07.932
14
+!SUBENTRY 1 org.eclipse.ui.monitoring 1 0 2020-12-28 12:06:08.592
15
+!MESSAGE Sample at 12:06:08.268 (+0,336s)
16
+Thread 'main' tid=1 (TIMED_WAITING)
17
+!STACK 0
18
+Stack Trace
19
+	at java.base@13.0.2/java.lang.Object.wait(Native Method)
20
+	at org.eclipse.jdt.core.manipulation.CoreASTProvider.getAST(CoreASTProvider.java:174)
21
+	at org.eclipse.jdt.core.manipulation.SharedASTProviderCore.getAST(SharedASTProviderCore.java:138)
22
+	at org.eclipse.jdt.internal.ui.text.correction.AssistContext.getASTRoot(AssistContext.java:128)
23
+	at org.eclipse.jdt.internal.ui.text.java.hover.ProblemHover$ProblemInfo.getJavaAnnotationFixes(ProblemHover.java:101)
24
+	at org.eclipse.jdt.internal.ui.text.java.hover.ProblemHover$ProblemInfo.getCompletionProposals(ProblemHover.java:79)
25
+	at org.eclipse.jdt.internal.ui.text.java.hover.AbstractAnnotationHover$AnnotationInformationControl.deferredCreateContent(AbstractAnnotationHover.java:304)
26
+	at org.eclipse.jdt.internal.ui.text.java.hover.AbstractAnnotationHover$AnnotationInformationControl.setInput(AbstractAnnotationHover.java:190)
27
+	at org.eclipse.jface.text.AbstractInformationControlManager.internalShowInformationControl(AbstractInformationControlManager.java:1151)
28
+	at org.eclipse.jface.text.AbstractInformationControlManager.presentInformation(AbstractInformationControlManager.java:1120)
29
+	at org.eclipse.jface.text.AbstractHoverInformationControlManager.presentInformation(AbstractHoverInformationControlManager.java:884)
30
+	at org.eclipse.jface.text.TextViewerHoverManager.doPresentInformation(TextViewerHoverManager.java:237)
31
+	at org.eclipse.jface.text.TextViewerHoverManager.lambda$3(TextViewerHoverManager.java:227)
32
+	at org.eclipse.jface.text.TextViewerHoverManager$$Lambda$888/0x0000000801a48440.run(Unknown Source)
33
+	at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:40)
34
+	at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:185)
35
+	at org.eclipse.swt.widgets.Display.runAsyncMessages(Display.java:3987)
36
+	at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3615)
37
+	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$5.run(PartRenderingEngine.java:1157)
38
+	at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338)
39
+	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1046)
40
+	at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:155)
41
+	at org.eclipse.ui.internal.Workbench.lambda$3(Workbench.java:644)
42
+	at org.eclipse.ui.internal.Workbench$$Lambda$216/0x0000000800ec6c40.run(Unknown Source)
43
+	at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338)
44
+	at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:551)
45
+	at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:153)
46
+	at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:150)
47
+	at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:203)
48
+	at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:134)
49
+	at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104)
50
+	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:401)
51
+	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:255)
52
+	at java.base@13.0.2/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
53
+	at java.base@13.0.2/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
54
+	at java.base@13.0.2/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
55
+	at java.base@13.0.2/java.lang.reflect.Method.invoke(Method.java:567)
56
+	at app//org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:657)
57
+	at app//org.eclipse.equinox.launcher.Main.basicRun(Main.java:594)
58
+	at app//org.eclipse.equinox.launcher.Main.run(Main.java:1465)

+ 334
- 0
.metadata/.plugins/org.eclipse.core.resources/.history/1/608a8de3fa48001b145081b6f5274ba2 View File

@@ -0,0 +1,334 @@
1
+package Services.Controller;
2
+import java.awt.Color;
3
+import java.io.OutputStream;
4
+import java.net.HttpURLConnection;
5
+import java.net.URL;
6
+
7
+import javax.swing.JButton;
8
+import javax.swing.JFrame;
9
+import javax.swing.JPanel;
10
+
11
+import org.springframework.boot.SpringApplication;
12
+import org.springframework.web.client.*;
13
+
14
+
15
+import org.springframework.boot.autoconfigure.SpringBootApplication;
16
+import org.springframework.http.HttpEntity;
17
+import org.springframework.http.HttpHeaders;
18
+import org.springframework.http.HttpMethod;
19
+import org.springframework.http.ResponseEntity;
20
+import org.springframework.web.bind.annotation.GetMapping;
21
+import org.springframework.web.bind.annotation.RequestMapping;
22
+import org.springframework.web.bind.annotation.RestController;
23
+
24
+@RestController
25
+@SpringBootApplication
26
+@RequestMapping("/controller/")
27
+public class ControllerApplication {
28
+	
29
+	private final String captMouvURI = "http://localhost:8081/CaptMouv/";
30
+	private final String captTempURI = "http://localhost:8082/CaptTemp/";
31
+	private final String captCO2URI = "http://localhost:8083/CaptCO2/";
32
+	private final String captHumURI = "http://localhost:8084/CaptHum/";
33
+	private final String automPorteURI = "http://localhost:8085/AutomPorteApplication/";
34
+	private final String automFenetreURI = "http://localhost:8086/AutomFenetreApplication/";
35
+	private final String automLumiereURI = "http://localhost:8087/AutomLumiereApplication/";
36
+	private final String automChauffageURI = "http://localhost:8088/AutomChauffageApplication/";
37
+	private final String simulationURI = "http://localhost:8089/Simulation/";
38
+	
39
+	
40
+	boolean ControlLumiereAutomatique = false;
41
+	boolean PorteFenetreAutomatique_TemperatureCO2 = false;
42
+	boolean PorteFenetreAutomatique_CO2 = false;
43
+	boolean MouvementAlarmActivated = false;
44
+	boolean TemperatureAlarmActivated = false;
45
+	boolean CO2AlarmActivated = false;
46
+	
47
+	
48
+	//Controle de la lumiere automatique
49
+	//Controle en fonction du mouvement
50
+	@GetMapping("isControlLumiereAutomatiqueActivated/")
51
+	private final boolean isControlLumiereAutomatique() {
52
+		return ControlLumiereAutomatique;
53
+	}
54
+	@GetMapping("setControlLumiereAutomatique/")
55
+	private final void setControlLumiereAutomatique(boolean controlLumiereAutomatique) {
56
+		ControlLumiereAutomatique = controlLumiereAutomatique;
57
+	}
58
+	
59
+	//Control de l'ouverture de la porte et fenetre
60
+	//Control en fonction de la temperature et CO2
61
+	@GetMapping("isPorteFenetreAutomatique_TemperatureCO2Activated/")
62
+	private final boolean isPorteFenetreAutomatique_TemperatureCO2() {
63
+		return PorteFenetreAutomatique_TemperatureCO2;
64
+	}
65
+
66
+
67
+	@GetMapping("setPorteFenetreAutomatique_TemperatureCO2/")
68
+	private final void setPorteFenetreAutomatique_TemperatureCO2(boolean porteFenetreAutomatique_TemperatureCO2) {
69
+		PorteFenetreAutomatique_TemperatureCO2 = porteFenetreAutomatique_TemperatureCO2;
70
+	}
71
+	//Controle en fonction du CO2
72
+	@GetMapping("isPorteFenetreAutomatique_CO2Activated/")
73
+	private final boolean isPorteFenetreAutomatique_CO2() {
74
+		return PorteFenetreAutomatique_CO2;
75
+	}
76
+
77
+
78
+	@GetMapping("setPorteFenetreAutomatique_CO2/")
79
+	private final void setPorteFenetreAutomatique_CO2(boolean porteFenetreAutomatique_CO2) {
80
+		PorteFenetreAutomatique_CO2 = porteFenetreAutomatique_CO2;
81
+	}
82
+
83
+
84
+
85
+
86
+	public void ControlLumiereAutomatique() {
87
+		String url_getDetection = captMouvURI + "getDetection/";
88
+		String url_allumerLumiere = automLumiereURI + "setON/?oN=true";
89
+		String url_eteindreLumiere = automLumiereURI + "setON/?oN=false";
90
+		RestTemplate restTemplate = new RestTemplate();
91
+		
92
+		
93
+		//return restTemplate.getForObject(test, String.class);
94
+		
95
+		
96
+		if (restTemplate.getForObject(url_getDetection,boolean.class)) {
97
+			restTemplate.getForObject(url_allumerLumiere,boolean.class);			
98
+		}
99
+		else {
100
+			restTemplate.getForObject(url_eteindreLumiere,boolean.class);
101
+		}
102
+	}
103
+	
104
+	
105
+	public void PorteFenetreAutomatique_TemperatureCO2() {
106
+		String url_getTemp = captTempURI + "getTemp/";
107
+		String url_getCO2 = captCO2URI + "getCO2/";
108
+		String url_setOuvertureFenetre = automFenetreURI + "setOpen/?open=true";
109
+		String url_setFermetureFenetre = automFenetreURI + "setOpen/?open=false";
110
+		String url_setOuverturePorte = automPorteURI + "setOpen/?open=true";
111
+		String url_setFermeturePorte = automPorteURI + "setOpen/?open=false";
112
+		RestTemplate restTemplate = new RestTemplate();
113
+		
114
+		if (((restTemplate.getForObject(url_getTemp,double.class)) > 30) | ((restTemplate.getForObject(url_getCO2,int.class)) > 500)) {
115
+			restTemplate.getForObject(url_setOuvertureFenetre,double.class);
116
+			restTemplate.getForObject(url_setOuverturePorte,double.class);
117
+		}
118
+		else {
119
+			restTemplate.getForObject(url_setFermetureFenetre,double.class);
120
+			restTemplate.getForObject(url_setFermeturePorte,double.class);
121
+		}
122
+		
123
+	}
124
+	
125
+	
126
+	public void PorteFenetreAutomatique_CO2() {
127
+		
128
+		String url_getCO2 = captCO2URI + "getCO2/";
129
+		String url_setOuvertureFenetre = automFenetreURI + "setOpen/?open=true";
130
+		String url_setFermetureFenetre = automFenetreURI + "setOpen/?open=false";
131
+		String url_setOuverturePorte = automPorteURI + "setOpen/?open=true";
132
+		String url_setFermeturePorte = automPorteURI + "setOpen/?open=false";
133
+		RestTemplate restTemplate = new RestTemplate();
134
+		
135
+		if (((restTemplate.getForObject(url_getCO2,int.class)) > 500)) {
136
+			restTemplate.getForObject(url_setOuvertureFenetre,double.class);
137
+			restTemplate.getForObject(url_setOuverturePorte,double.class);
138
+		}
139
+		else {
140
+			restTemplate.getForObject(url_setFermetureFenetre,double.class);
141
+			restTemplate.getForObject(url_setFermeturePorte,double.class);
142
+		}
143
+		
144
+	}
145
+	@GetMapping("getSalleOccupee/")
146
+	public String SalleOccupe() {
147
+		String url_getDetection = captMouvURI + "getDetection/";
148
+		RestTemplate restTemplate = new RestTemplate();
149
+		boolean salle_occupe = restTemplate.getForObject(url_getDetection,boolean.class);
150
+		
151
+		
152
+		return ("La salle est:" + String.valueOf(salle_occupe)) ;
153
+		
154
+	}
155
+	
156
+	@GetMapping("setTemperatureHeatingSystem/")
157
+	public void setTemperatureHeatingSystem(int temp) {
158
+		String url_setTemp = automChauffageURI + "setTemperatureSet/?temperatureSet=" + String.valueOf(temp);
159
+		
160
+		RestTemplate restTemplate = new RestTemplate();
161
+		restTemplate.getForObject(url_setTemp,void.class);
162
+	}
163
+	
164
+	@GetMapping("getHeatingSystemONOFF/")
165
+	public boolean getHeatingSystemONOFF() {
166
+		String url_getONOFF = automChauffageURI + "isActive/";
167
+		
168
+		RestTemplate restTemplate = new RestTemplate();
169
+		return (restTemplate.getForObject(url_getONOFF,boolean.class));
170
+	}
171
+	
172
+	public boolean getMovementDetection() {
173
+		String url_getDetection = captMouvURI + "getDetection/";
174
+		boolean resultat = false;
175
+		RestTemplate restTemplate = new RestTemplate();
176
+		
177
+		return (restTemplate.getForObject(url_getDetection, boolean.class));
178
+		
179
+	}
180
+	
181
+	@GetMapping("getTemperatureAlarm/")
182
+	public boolean getTemperatureAlarm() {
183
+		return (TemperatureAlarmActivated);
184
+	}
185
+	@GetMapping("setTemperatureAlarm/")
186
+	public void setTemperatureAlarm(boolean active) {
187
+		TemperatureAlarmActivated = active;
188
+	}
189
+	
190
+	@GetMapping("setMouvementAlarm/")
191
+	public void setMouvementAlarm(boolean active) {
192
+		MouvementAlarmActivated = active;
193
+	}
194
+	
195
+	@GetMapping("setCO2Alarm/")
196
+	public void setCO2Alarm(boolean active) {
197
+		CO2AlarmActivated = active;
198
+	}
199
+	
200
+	
201
+	
202
+	
203
+	@GetMapping("run")
204
+	public int run() throws Exception {
205
+		
206
+		if (ControlLumiereAutomatique) {
207
+			ControlLumiereAutomatique();
208
+		}
209
+		
210
+		if (PorteFenetreAutomatique_TemperatureCO2) {
211
+			PorteFenetreAutomatique_TemperatureCO2();
212
+		}
213
+		
214
+		if (PorteFenetreAutomatique_CO2) {
215
+			PorteFenetreAutomatique_CO2();
216
+		}
217
+		
218
+		//Notification de mouvement Alarm
219
+		if (MouvementAlarmActivated & (getMovementDetection())) {
220
+			//Communication avec OneM2M
221
+			
222
+			RestTemplate restTemplate = new RestTemplate();
223
+			HttpHeaders headers = new HttpHeaders();
224
+			
225
+			headers.set("X-M2M-ORIGIN", "admin:admin");
226
+			headers.set("Content-Type", "application/xml;ty=4");
227
+			//headers.set("Accept", "application/xml");
228
+			String parameters = "	\n"
229
+					+ "<m2m:cin xmlns:m2m=\"http://www.onem2m.org/xml/protocols\">\n"
230
+					+ "    <cnf>message</cnf>\n"
231
+					+ "    <con>\n"
232
+					+ "      &lt;obj&gt;\n"
233
+					+ "        &lt;str name=&quot;data&quot; val=&quot;Mouvement_GEI213&quot;/&gt;\n"
234
+					+ "        \n"
235
+					+ "      &lt;/obj&gt;\n"
236
+					+ "    </con>\n"
237
+					+ "</m2m:cin>";
238
+			
239
+			HttpEntity <String> entity = new HttpEntity <String> (parameters,headers);
240
+			String url = "http://127.0.0.1:8080/~/in-cse/in-name/Alarm_Notification/DATA/";
241
+			
242
+			restTemplate.exchange(url,HttpMethod.POST,entity,String.class);
243
+			
244
+		}
245
+		
246
+		//Notification temperature elevée
247
+		if (TemperatureAlarmActivated) {
248
+			String url_getTemp = captTempURI + "getTemp/";
249
+			int temp;
250
+			//Communication avec OneM2M
251
+			
252
+			RestTemplate restTemplate = new RestTemplate();
253
+			temp = restTemplate.getForObject(url_getTemp,int.class);
254
+			if ((temp > 35) | (temp<15)) {
255
+			HttpHeaders headers = new HttpHeaders();
256
+			
257
+			headers.set("X-M2M-ORIGIN", "admin:admin");
258
+			headers.set("Content-Type", "application/xml;ty=4");
259
+			//headers.set("Accept", "application/xml");
260
+			String parameters = "	\n"
261
+					+ "<m2m:cin xmlns:m2m=\"http://www.onem2m.org/xml/protocols\">\n"
262
+					+ "    <cnf>message</cnf>\n"
263
+					+ "    <con>\n"
264
+					+ "      &lt;obj&gt;\n"
265
+					+ "        &lt;str name=&quot;location&quot; val=&quot;GEI213&quot;/&gt;\n"
266
+					+ "			&lt;str name=&quot;data&quot; val=&quot;" + String.valueOf(temp) +"&quot;/&gt;\n"
267
+					+ "        \n"
268
+					+ "      &lt;/obj&gt;\n"
269
+					+ "    </con>\n"
270
+					+ "</m2m:cin>";
271
+			
272
+			HttpEntity <String> entity = new HttpEntity <String> (parameters,headers);
273
+			String url = "http://127.0.0.1:8080/~/in-cse/in-name/Alarm_Temperature/DATA/";
274
+			
275
+			restTemplate.exchange(url,HttpMethod.POST,entity,String.class);
276
+			}
277
+		}
278
+			
279
+			//Notification CO2 elevée
280
+			if (CO2AlarmActivated) {
281
+				String url_getCO2 = captCO2URI + "getCO2/";
282
+				double CO2;
283
+				//Communication avec OneM2M
284
+				
285
+				RestTemplate restTemplate = new RestTemplate();
286
+				CO2 = restTemplate.getForObject(url_getCO2,double.class);
287
+				if (CO2 > 1000) {
288
+				HttpHeaders headers = new HttpHeaders();
289
+				
290
+				headers.set("X-M2M-ORIGIN", "admin:admin");
291
+				headers.set("Content-Type", "application/xml;ty=4");
292
+				//headers.set("Accept", "application/xml");
293
+				String parameters = "	\n"
294
+						+ "<m2m:cin xmlns:m2m=\"http://www.onem2m.org/xml/protocols\">\n"
295
+						+ "    <cnf>message</cnf>\n"
296
+						+ "    <con>\n"
297
+						+ "      &lt;obj&gt;\n"
298
+						+ "        &lt;str name=&quot;location&quot; val=&quot;GEI213&quot;/&gt;\n"
299
+						+ "			&lt;str name=&quot;data&quot; val=&quot;" + String.valueOf(CO2) +"&quot;/&gt;\n"
300
+						+ "        \n"
301
+						+ "      &lt;/obj&gt;\n"
302
+						+ "    </con>\n"
303
+						+ "</m2m:cin>";
304
+				
305
+				HttpEntity <String> entity = new HttpEntity <String> (parameters,headers);
306
+				String url = "http://127.0.0.1:8080/~/in-cse/in-name/Alarm_CO2/DATA/";
307
+				
308
+				restTemplate.exchange(url,HttpMethod.POST,entity,String.class);
309
+				}
310
+		}
311
+		
312
+		
313
+		
314
+		return 0;
315
+		
316
+		
317
+		
318
+	}
319
+	
320
+	
321
+
322
+	 
323
+     
324
+     
325
+	
326
+	
327
+	
328
+	public static void main(String[] args) {
329
+		SpringApplication.run(ControllerApplication.class, args);
330
+		
331
+	
332
+	}
333
+
334
+}

+ 274
- 0
.metadata/.plugins/org.eclipse.core.resources/.history/21/70f982a99e47001b1997ad6a8c66f017 View File

@@ -0,0 +1,274 @@
1
+package Services.Controller;
2
+import java.awt.Color;
3
+import java.io.OutputStream;
4
+import java.net.HttpURLConnection;
5
+import java.net.URL;
6
+
7
+import javax.swing.JButton;
8
+import javax.swing.JFrame;
9
+import javax.swing.JPanel;
10
+
11
+import org.springframework.boot.SpringApplication;
12
+import org.springframework.web.client.*;
13
+
14
+
15
+import org.springframework.boot.autoconfigure.SpringBootApplication;
16
+import org.springframework.http.HttpEntity;
17
+import org.springframework.http.HttpHeaders;
18
+import org.springframework.http.HttpMethod;
19
+import org.springframework.http.ResponseEntity;
20
+import org.springframework.web.bind.annotation.GetMapping;
21
+import org.springframework.web.bind.annotation.RequestMapping;
22
+import org.springframework.web.bind.annotation.RestController;
23
+
24
+@RestController
25
+@SpringBootApplication
26
+@RequestMapping("/controller/")
27
+public class ControllerApplication {
28
+	
29
+	private final String captMouvURI = "http://localhost:8081/CaptMouv/";
30
+	private final String captTempURI = "http://localhost:8082/CaptTemp/";
31
+	private final String captCO2URI = "http://localhost:8083/CaptCO2/";
32
+	private final String captHumURI = "http://localhost:8084/";
33
+	private final String automPorteURI = "http://localhost:8085/AutomPorteApplication/";
34
+	private final String automFenetreURI = "http://localhost:8086/AutomFenetreApplication/";
35
+	private final String automLumiereURI = "http://localhost:8087/AutomLumiereApplication/";
36
+	private final String automChauffageURI = "http://localhost:8088/AutomChauffageApplication/";
37
+	private final String simulationURI = "http://localhost:8089/Simulation/";
38
+	
39
+	
40
+	boolean ControlLumiereAutomatique = false;
41
+	boolean PorteFenetreAutomatique_TemperatureCO2 = false;
42
+	boolean PorteFenetreAutomatique_CO2 = false;
43
+	boolean AlarmActivated = false;
44
+	
45
+	
46
+	//Controle de la lumiere automatique
47
+	//Controle en fonction du mouvement
48
+	@GetMapping("isControlLumiereAutomatiqueActivated/")
49
+	private final boolean isControlLumiereAutomatique() {
50
+		return ControlLumiereAutomatique;
51
+	}
52
+	@GetMapping("setControlLumiereAutomatique/")
53
+	private final void setControlLumiereAutomatique(boolean controlLumiereAutomatique) {
54
+		ControlLumiereAutomatique = controlLumiereAutomatique;
55
+	}
56
+	
57
+	//Control de l'ouverture de la porte et fenetre
58
+	//Control en fonction de la temperature et CO2
59
+	@GetMapping("isPorteFenetreAutomatique_TemperatureCO2Activated/")
60
+	private final boolean isPorteFenetreAutomatique_TemperatureCO2() {
61
+		return PorteFenetreAutomatique_TemperatureCO2;
62
+	}
63
+
64
+
65
+	@GetMapping("setPorteFenetreAutomatique_TemperatureCO2/")
66
+	private final void setPorteFenetreAutomatique_TemperatureCO2(boolean porteFenetreAutomatique_TemperatureCO2) {
67
+		PorteFenetreAutomatique_TemperatureCO2 = porteFenetreAutomatique_TemperatureCO2;
68
+	}
69
+	//Controle en fonction du CO2
70
+	@GetMapping("isPorteFenetreAutomatique_CO2Activated/")
71
+	private final boolean isPorteFenetreAutomatique_CO2() {
72
+		return PorteFenetreAutomatique_CO2;
73
+	}
74
+
75
+
76
+	@GetMapping("setPorteFenetreAutomatique_CO2/")
77
+	private final void setPorteFenetreAutomatique_CO2(boolean porteFenetreAutomatique_CO2) {
78
+		PorteFenetreAutomatique_CO2 = porteFenetreAutomatique_CO2;
79
+	}
80
+
81
+
82
+
83
+
84
+	public void ControlLumiereAutomatique() {
85
+		String url_getDetection = captMouvURI + "getDetection/";
86
+		String url_allumerLumiere = automLumiereURI + "setON/?oN=true";
87
+		String url_eteindreLumiere = automLumiereURI + "setON/?oN=false";
88
+		RestTemplate restTemplate = new RestTemplate();
89
+		
90
+		
91
+		//return restTemplate.getForObject(test, String.class);
92
+		
93
+		
94
+		if (restTemplate.getForObject(url_getDetection,boolean.class)) {
95
+			restTemplate.getForObject(url_allumerLumiere,boolean.class);			
96
+		}
97
+		else {
98
+			restTemplate.getForObject(url_eteindreLumiere,boolean.class);
99
+		}
100
+	}
101
+	
102
+	
103
+	public void PorteFenetreAutomatique_TemperatureCO2() {
104
+		String url_getTemp = captTempURI + "getTemp/";
105
+		String url_getCO2 = captCO2URI + "getCO2/";
106
+		String url_setOuvertureFenetre = automFenetreURI + "setOpen/?open=true";
107
+		String url_setFermetureFenetre = automFenetreURI + "setOpen/?open=false";
108
+		String url_setOuverturePorte = automPorteURI + "setOpen/?open=true";
109
+		String url_setFermeturePorte = automPorteURI + "setOpen/?open=false";
110
+		RestTemplate restTemplate = new RestTemplate();
111
+		
112
+		if (((restTemplate.getForObject(url_getTemp,double.class)) > 30) | ((restTemplate.getForObject(url_getCO2,int.class)) > 500)) {
113
+			restTemplate.getForObject(url_setOuvertureFenetre,double.class);
114
+			restTemplate.getForObject(url_setOuverturePorte,double.class);
115
+		}
116
+		else {
117
+			restTemplate.getForObject(url_setFermetureFenetre,double.class);
118
+			restTemplate.getForObject(url_setFermeturePorte,double.class);
119
+		}
120
+		
121
+	}
122
+	
123
+	
124
+	public void PorteFenetreAutomatique_CO2() {
125
+		
126
+		String url_getCO2 = captCO2URI + "getCO2/";
127
+		String url_setOuvertureFenetre = automFenetreURI + "setOpen/?open=true";
128
+		String url_setFermetureFenetre = automFenetreURI + "setOpen/?open=false";
129
+		String url_setOuverturePorte = automPorteURI + "setOpen/?open=true";
130
+		String url_setFermeturePorte = automPorteURI + "setOpen/?open=false";
131
+		RestTemplate restTemplate = new RestTemplate();
132
+		
133
+		if (((restTemplate.getForObject(url_getCO2,int.class)) > 500)) {
134
+			restTemplate.getForObject(url_setOuvertureFenetre,double.class);
135
+			restTemplate.getForObject(url_setOuverturePorte,double.class);
136
+		}
137
+		else {
138
+			restTemplate.getForObject(url_setFermetureFenetre,double.class);
139
+			restTemplate.getForObject(url_setFermeturePorte,double.class);
140
+		}
141
+		
142
+	}
143
+	@GetMapping("getSalleOccupee/")
144
+	public String SalleOccupe() {
145
+		String url_getDetection = captMouvURI + "getDetection/";
146
+		RestTemplate restTemplate = new RestTemplate();
147
+		boolean salle_occupe = restTemplate.getForObject(url_getDetection,boolean.class);
148
+		
149
+		
150
+		return ("La salle est:" + String.valueOf(salle_occupe)) ;
151
+		
152
+	}
153
+	
154
+	@GetMapping("setTemperatureHeatingSystem/")
155
+	public void setTemperatureHeatingSystem(int temp) {
156
+		String url_setTemp = automChauffageURI + "setTemperatureSet/?temperatureSet=" + String.valueOf(temp);
157
+		
158
+		RestTemplate restTemplate = new RestTemplate();
159
+		restTemplate.getForObject(url_setTemp,void.class);
160
+	}
161
+	
162
+	@GetMapping("getHeatingSystemONOFF/")
163
+	public boolean getHeatingSystemONOFF() {
164
+		String url_getONOFF = automChauffageURI + "isActive/";
165
+		
166
+		RestTemplate restTemplate = new RestTemplate();
167
+		return (restTemplate.getForObject(url_getONOFF,boolean.class));
168
+	}
169
+	
170
+	public boolean getMovementDetection() {
171
+		String url_getDetection = captMouvURI + "getDetection/";
172
+		boolean resultat = false;
173
+		RestTemplate restTemplate = new RestTemplate();
174
+		
175
+		return (restTemplate.getForObject(url_getDetection, boolean.class));
176
+		
177
+	}
178
+	@GetMapping("setAlarm/")
179
+	public void setAlarm(boolean active) {
180
+		AlarmActivated = active;
181
+	}
182
+	
183
+	
184
+	@GetMapping("run")
185
+	public int run() throws Exception {
186
+		
187
+		if (ControlLumiereAutomatique) {
188
+			ControlLumiereAutomatique();
189
+		}
190
+		
191
+		if (PorteFenetreAutomatique_TemperatureCO2) {
192
+			PorteFenetreAutomatique_TemperatureCO2();
193
+		}
194
+		
195
+		if (PorteFenetreAutomatique_CO2) {
196
+			PorteFenetreAutomatique_CO2();
197
+		}
198
+		if (AlarmActivated & (getMovementDetection())) {
199
+			//Communication avec OneM2M
200
+			
201
+			RestTemplate restTemplate = new RestTemplate();
202
+			HttpHeaders headers = new HttpHeaders();
203
+			
204
+			headers.set("X-M2M-ORIGIN", "admin:admin");
205
+			headers.set("Content-Type", "application/xml;ty=4");
206
+			//headers.set("Accept", "application/xml");
207
+			String parameters = "	\n"
208
+					+ "<m2m:cin xmlns:m2m=\"http://www.onem2m.org/xml/protocols\">\n"
209
+					+ "    <cnf>message</cnf>\n"
210
+					+ "    <con>\n"
211
+					+ "      &lt;obj&gt;\n"
212
+					+ "        &lt;str name=&quot;data&quot; val=&quot;Mouvement_GEI213&quot;/&gt;\n"
213
+					+ "        \n"
214
+					+ "      &lt;/obj&gt;\n"
215
+					+ "    </con>\n"
216
+					+ "</m2m:cin>";
217
+			
218
+			HttpEntity <String> entity = new HttpEntity <String> (parameters,headers);
219
+			String url = "http://127.0.0.1:8080/~/in-cse/in-name/Alarm_Notification/DATA/";
220
+			
221
+			restTemplate.exchange(url,HttpMethod.POST,entity,String.class);
222
+			
223
+			return 3;
224
+			
225
+		}
226
+		
227
+		
228
+		
229
+		return 0;
230
+		//Communication avec OneM2M
231
+		/*
232
+		RestTemplate restTemplate = new RestTemplate();
233
+		HttpHeaders headers = new HttpHeaders();
234
+		
235
+		headers.set("X-M2M-ORIGIN", "admin:admin");
236
+		headers.set("Content-Type", "application/xml;ty=4");
237
+		//headers.set("Accept", "application/xml");
238
+		String parameters = "	\n"
239
+				+ "<m2m:cin xmlns:m2m=\"http://www.onem2m.org/xml/protocols\">\n"
240
+				+ "    <cnf>message</cnf>\n"
241
+				+ "    <con>\n"
242
+				+ "      &lt;obj&gt;\n"
243
+				+ "        &lt;str name=&quot;presence&quot; val=&quot;1&quot;/&gt;\n"
244
+				+ "        \n"
245
+				+ "      &lt;/obj&gt;\n"
246
+				+ "    </con>\n"
247
+				+ "</m2m:cin>";
248
+		
249
+		HttpEntity <String> entity = new HttpEntity <String> (parameters,headers);
250
+		String url = "http://127.0.0.1:8080/~/in-cse/in-name/Capteur_Mouvement/DATA/";
251
+		
252
+		ResponseEntity respEntity = restTemplate.exchange(url,HttpMethod.POST,entity,String.class);
253
+		String resp = (String) respEntity.getBody();
254
+		return resp;
255
+		*/
256
+		
257
+		
258
+	}
259
+	
260
+	
261
+
262
+	 
263
+     
264
+     
265
+	
266
+	
267
+	
268
+	public static void main(String[] args) {
269
+		SpringApplication.run(ControllerApplication.class, args);
270
+		
271
+	
272
+	}
273
+
274
+}

+ 234
- 0
.metadata/.plugins/org.eclipse.core.resources/.history/2d/a03e93079d47001b1997ad6a8c66f017 View File

@@ -0,0 +1,234 @@
1
+package Services.Controller;
2
+import java.awt.Color;
3
+import java.io.OutputStream;
4
+import java.net.HttpURLConnection;
5
+import java.net.URL;
6
+
7
+import javax.swing.JButton;
8
+import javax.swing.JFrame;
9
+import javax.swing.JPanel;
10
+
11
+import org.springframework.boot.SpringApplication;
12
+import org.springframework.web.client.*;
13
+
14
+
15
+import org.springframework.boot.autoconfigure.SpringBootApplication;
16
+import org.springframework.http.HttpEntity;
17
+import org.springframework.http.HttpHeaders;
18
+import org.springframework.http.HttpMethod;
19
+import org.springframework.http.ResponseEntity;
20
+import org.springframework.web.bind.annotation.GetMapping;
21
+import org.springframework.web.bind.annotation.RequestMapping;
22
+import org.springframework.web.bind.annotation.RestController;
23
+
24
+@RestController
25
+@SpringBootApplication
26
+@RequestMapping("/controller/")
27
+public class ControllerApplication {
28
+	
29
+	private final String captMouvURI = "http://localhost:8081/CaptMouv/";
30
+	private final String captTempURI = "http://localhost:8082/CaptTemp/";
31
+	private final String captCO2URI = "http://localhost:8083/CaptCO2/";
32
+	private final String captHumURI = "http://localhost:8084/";
33
+	private final String automPorteURI = "http://localhost:8085/AutomPorteApplication/";
34
+	private final String automFenetreURI = "http://localhost:8086/AutomFenetreApplication/";
35
+	private final String automLumiereURI = "http://localhost:8087/AutomLumiereApplication/";
36
+	private final String automChauffageURI = "http://localhost:8088/AutomChauffageApplication/";
37
+	private final String simulationURI = "http://localhost:8089/Simulation/";
38
+	
39
+	
40
+	boolean ControlLumiereAutomatique = false;
41
+	boolean PorteFenetreAutomatique_TemperatureCO2 = false;
42
+	boolean PorteFenetreAutomatique_CO2 = false;
43
+	
44
+	
45
+	
46
+	//Controle de la lumiere automatique
47
+	//Controle en fonction du mouvement
48
+	@GetMapping("isControlLumiereAutomatiqueActivated/")
49
+	private final boolean isControlLumiereAutomatique() {
50
+		return ControlLumiereAutomatique;
51
+	}
52
+	@GetMapping("setControlLumiereAutomatique/")
53
+	private final void setControlLumiereAutomatique(boolean controlLumiereAutomatique) {
54
+		ControlLumiereAutomatique = controlLumiereAutomatique;
55
+	}
56
+	
57
+	//Control de l'ouverture de la porte et fenetre
58
+	//Control en fonction de la temperature et CO2
59
+	@GetMapping("isPorteFenetreAutomatique_TemperatureCO2Activated/")
60
+	private final boolean isPorteFenetreAutomatique_TemperatureCO2() {
61
+		return PorteFenetreAutomatique_TemperatureCO2;
62
+	}
63
+
64
+
65
+	@GetMapping("setPorteFenetreAutomatique_TemperatureCO2/")
66
+	private final void setPorteFenetreAutomatique_TemperatureCO2(boolean porteFenetreAutomatique_TemperatureCO2) {
67
+		PorteFenetreAutomatique_TemperatureCO2 = porteFenetreAutomatique_TemperatureCO2;
68
+	}
69
+	//Controle en fonction du CO2
70
+	@GetMapping("isPorteFenetreAutomatique_CO2Activated/")
71
+	private final boolean isPorteFenetreAutomatique_CO2() {
72
+		return PorteFenetreAutomatique_CO2;
73
+	}
74
+
75
+
76
+	@GetMapping("setPorteFenetreAutomatique_CO2/")
77
+	private final void setPorteFenetreAutomatique_CO2(boolean porteFenetreAutomatique_CO2) {
78
+		PorteFenetreAutomatique_CO2 = porteFenetreAutomatique_CO2;
79
+	}
80
+
81
+
82
+
83
+
84
+	public void ControlLumiereAutomatique() {
85
+		String url_getDetection = captMouvURI + "getDetection/";
86
+		String url_allumerLumiere = automLumiereURI + "setON/?oN=true";
87
+		String url_eteindreLumiere = automLumiereURI + "setON/?oN=false";
88
+		RestTemplate restTemplate = new RestTemplate();
89
+		
90
+		
91
+		//return restTemplate.getForObject(test, String.class);
92
+		
93
+		
94
+		if (restTemplate.getForObject(url_getDetection,boolean.class)) {
95
+			restTemplate.getForObject(url_allumerLumiere,boolean.class);			
96
+		}
97
+		else {
98
+			restTemplate.getForObject(url_eteindreLumiere,boolean.class);
99
+		}
100
+	}
101
+	
102
+	
103
+	public void PorteFenetreAutomatique_TemperatureCO2() {
104
+		String url_getTemp = captTempURI + "getTemp/";
105
+		String url_getCO2 = captCO2URI + "getCO2/";
106
+		String url_setOuvertureFenetre = automFenetreURI + "setOpen/?open=true";
107
+		String url_setFermetureFenetre = automFenetreURI + "setOpen/?open=false";
108
+		String url_setOuverturePorte = automPorteURI + "setOpen/?open=true";
109
+		String url_setFermeturePorte = automPorteURI + "setOpen/?open=false";
110
+		RestTemplate restTemplate = new RestTemplate();
111
+		
112
+		if (((restTemplate.getForObject(url_getTemp,double.class)) > 30) | ((restTemplate.getForObject(url_getCO2,int.class)) > 500)) {
113
+			restTemplate.getForObject(url_setOuvertureFenetre,double.class);
114
+			restTemplate.getForObject(url_setOuverturePorte,double.class);
115
+		}
116
+		else {
117
+			restTemplate.getForObject(url_setFermetureFenetre,double.class);
118
+			restTemplate.getForObject(url_setFermeturePorte,double.class);
119
+		}
120
+		
121
+	}
122
+	
123
+	
124
+	public void PorteFenetreAutomatique_CO2() {
125
+		
126
+		String url_getCO2 = captCO2URI + "getCO2/";
127
+		String url_setOuvertureFenetre = automFenetreURI + "setOpen/?open=true";
128
+		String url_setFermetureFenetre = automFenetreURI + "setOpen/?open=false";
129
+		String url_setOuverturePorte = automPorteURI + "setOpen/?open=true";
130
+		String url_setFermeturePorte = automPorteURI + "setOpen/?open=false";
131
+		RestTemplate restTemplate = new RestTemplate();
132
+		
133
+		if (((restTemplate.getForObject(url_getCO2,int.class)) > 500)) {
134
+			restTemplate.getForObject(url_setOuvertureFenetre,double.class);
135
+			restTemplate.getForObject(url_setOuverturePorte,double.class);
136
+		}
137
+		else {
138
+			restTemplate.getForObject(url_setFermetureFenetre,double.class);
139
+			restTemplate.getForObject(url_setFermeturePorte,double.class);
140
+		}
141
+		
142
+	}
143
+	@GetMapping("getSalleOccupee/")
144
+	public String SalleOccupe() {
145
+		String url_getDetection = captMouvURI + "getDetection/";
146
+		RestTemplate restTemplate = new RestTemplate();
147
+		boolean salle_occupe = restTemplate.getForObject(url_getDetection,boolean.class);
148
+		
149
+		
150
+		return ("La salle est:" + String.valueOf(salle_occupe)) ;
151
+		
152
+	}
153
+	
154
+	@GetMapping("setTemperatureHeatingSystem/")
155
+	public void setTemperatureHeatingSystem(int temp) {
156
+		String url_setTemp = automChauffageURI + "setTemperatureSet/?temperatureSet=" + String.valueOf(temp);
157
+		
158
+		RestTemplate restTemplate = new RestTemplate();
159
+		restTemplate.getForObject(url_setTemp,void.class);
160
+	}
161
+	
162
+	@GetMapping("getHeatingSystemONOFF/")
163
+	public boolean getHeatingSystemONOFF() {
164
+		String url_getONOFF = automChauffageURI + "isActive/";
165
+		
166
+		RestTemplate restTemplate = new RestTemplate();
167
+		return (restTemplate.getForObject(url_getONOFF,boolean.class));
168
+	}
169
+	
170
+	
171
+	
172
+	@GetMapping("run")
173
+	public int run() throws Exception {
174
+		/*
175
+		if (ControlLumiereAutomatique) {
176
+			ControlLumiereAutomatique();
177
+		}
178
+		
179
+		if (PorteFenetreAutomatique_TemperatureCO2) {
180
+			PorteFenetreAutomatique_TemperatureCO2();
181
+		}
182
+		
183
+		if (PorteFenetreAutomatique_CO2) {
184
+			PorteFenetreAutomatique_CO2();
185
+		}
186
+		*/
187
+		
188
+		
189
+		return 0;
190
+		//Communication avec OneM2M
191
+		/*
192
+		RestTemplate restTemplate = new RestTemplate();
193
+		HttpHeaders headers = new HttpHeaders();
194
+		
195
+		headers.set("X-M2M-ORIGIN", "admin:admin");
196
+		headers.set("Content-Type", "application/xml;ty=4");
197
+		//headers.set("Accept", "application/xml");
198
+		String parameters = "	\n"
199
+				+ "<m2m:cin xmlns:m2m=\"http://www.onem2m.org/xml/protocols\">\n"
200
+				+ "    <cnf>message</cnf>\n"
201
+				+ "    <con>\n"
202
+				+ "      &lt;obj&gt;\n"
203
+				+ "        &lt;str name=&quot;presence&quot; val=&quot;1&quot;/&gt;\n"
204
+				+ "        \n"
205
+				+ "      &lt;/obj&gt;\n"
206
+				+ "    </con>\n"
207
+				+ "</m2m:cin>";
208
+		
209
+		HttpEntity <String> entity = new HttpEntity <String> (parameters,headers);
210
+		String url = "http://127.0.0.1:8080/~/in-cse/in-name/Capteur_Mouvement/DATA/";
211
+		
212
+		ResponseEntity respEntity = restTemplate.exchange(url,HttpMethod.POST,entity,String.class);
213
+		String resp = (String) respEntity.getBody();
214
+		return resp;
215
+		*/
216
+		
217
+		
218
+	}
219
+	
220
+	
221
+
222
+	 
223
+     
224
+     
225
+	
226
+	
227
+	
228
+	public static void main(String[] args) {
229
+		SpringApplication.run(ControllerApplication.class, args);
230
+		
231
+	
232
+	}
233
+
234
+}

+ 271
- 0
.metadata/.plugins/org.eclipse.core.resources/.history/2f/30c7668e9d47001b1997ad6a8c66f017 View File

@@ -0,0 +1,271 @@
1
+package Services.Controller;
2
+import java.awt.Color;
3
+import java.io.OutputStream;
4
+import java.net.HttpURLConnection;
5
+import java.net.URL;
6
+
7
+import javax.swing.JButton;
8
+import javax.swing.JFrame;
9
+import javax.swing.JPanel;
10
+
11
+import org.springframework.boot.SpringApplication;
12
+import org.springframework.web.client.*;
13
+
14
+
15
+import org.springframework.boot.autoconfigure.SpringBootApplication;
16
+import org.springframework.http.HttpEntity;
17
+import org.springframework.http.HttpHeaders;
18
+import org.springframework.http.HttpMethod;
19
+import org.springframework.http.ResponseEntity;
20
+import org.springframework.web.bind.annotation.GetMapping;
21
+import org.springframework.web.bind.annotation.RequestMapping;
22
+import org.springframework.web.bind.annotation.RestController;
23
+
24
+@RestController
25
+@SpringBootApplication
26
+@RequestMapping("/controller/")
27
+public class ControllerApplication {
28
+	
29
+	private final String captMouvURI = "http://localhost:8081/CaptMouv/";
30
+	private final String captTempURI = "http://localhost:8082/CaptTemp/";
31
+	private final String captCO2URI = "http://localhost:8083/CaptCO2/";
32
+	private final String captHumURI = "http://localhost:8084/";
33
+	private final String automPorteURI = "http://localhost:8085/AutomPorteApplication/";
34
+	private final String automFenetreURI = "http://localhost:8086/AutomFenetreApplication/";
35
+	private final String automLumiereURI = "http://localhost:8087/AutomLumiereApplication/";
36
+	private final String automChauffageURI = "http://localhost:8088/AutomChauffageApplication/";
37
+	private final String simulationURI = "http://localhost:8089/Simulation/";
38
+	
39
+	
40
+	boolean ControlLumiereAutomatique = false;
41
+	boolean PorteFenetreAutomatique_TemperatureCO2 = false;
42
+	boolean PorteFenetreAutomatique_CO2 = false;
43
+	boolean AlarmActivated = false;
44
+	
45
+	
46
+	//Controle de la lumiere automatique
47
+	//Controle en fonction du mouvement
48
+	@GetMapping("isControlLumiereAutomatiqueActivated/")
49
+	private final boolean isControlLumiereAutomatique() {
50
+		return ControlLumiereAutomatique;
51
+	}
52
+	@GetMapping("setControlLumiereAutomatique/")
53
+	private final void setControlLumiereAutomatique(boolean controlLumiereAutomatique) {
54
+		ControlLumiereAutomatique = controlLumiereAutomatique;
55
+	}
56
+	
57
+	//Control de l'ouverture de la porte et fenetre
58
+	//Control en fonction de la temperature et CO2
59
+	@GetMapping("isPorteFenetreAutomatique_TemperatureCO2Activated/")
60
+	private final boolean isPorteFenetreAutomatique_TemperatureCO2() {
61
+		return PorteFenetreAutomatique_TemperatureCO2;
62
+	}
63
+
64
+
65
+	@GetMapping("setPorteFenetreAutomatique_TemperatureCO2/")
66
+	private final void setPorteFenetreAutomatique_TemperatureCO2(boolean porteFenetreAutomatique_TemperatureCO2) {
67
+		PorteFenetreAutomatique_TemperatureCO2 = porteFenetreAutomatique_TemperatureCO2;
68
+	}
69
+	//Controle en fonction du CO2
70
+	@GetMapping("isPorteFenetreAutomatique_CO2Activated/")
71
+	private final boolean isPorteFenetreAutomatique_CO2() {
72
+		return PorteFenetreAutomatique_CO2;
73
+	}
74
+
75
+
76
+	@GetMapping("setPorteFenetreAutomatique_CO2/")
77
+	private final void setPorteFenetreAutomatique_CO2(boolean porteFenetreAutomatique_CO2) {
78
+		PorteFenetreAutomatique_CO2 = porteFenetreAutomatique_CO2;
79
+	}
80
+
81
+
82
+
83
+
84
+	public void ControlLumiereAutomatique() {
85
+		String url_getDetection = captMouvURI + "getDetection/";
86
+		String url_allumerLumiere = automLumiereURI + "setON/?oN=true";
87
+		String url_eteindreLumiere = automLumiereURI + "setON/?oN=false";
88
+		RestTemplate restTemplate = new RestTemplate();
89
+		
90
+		
91
+		//return restTemplate.getForObject(test, String.class);
92
+		
93
+		
94
+		if (restTemplate.getForObject(url_getDetection,boolean.class)) {
95
+			restTemplate.getForObject(url_allumerLumiere,boolean.class);			
96
+		}
97
+		else {
98
+			restTemplate.getForObject(url_eteindreLumiere,boolean.class);
99
+		}
100
+	}
101
+	
102
+	
103
+	public void PorteFenetreAutomatique_TemperatureCO2() {
104
+		String url_getTemp = captTempURI + "getTemp/";
105
+		String url_getCO2 = captCO2URI + "getCO2/";
106
+		String url_setOuvertureFenetre = automFenetreURI + "setOpen/?open=true";
107
+		String url_setFermetureFenetre = automFenetreURI + "setOpen/?open=false";
108
+		String url_setOuverturePorte = automPorteURI + "setOpen/?open=true";
109
+		String url_setFermeturePorte = automPorteURI + "setOpen/?open=false";
110
+		RestTemplate restTemplate = new RestTemplate();
111
+		
112
+		if (((restTemplate.getForObject(url_getTemp,double.class)) > 30) | ((restTemplate.getForObject(url_getCO2,int.class)) > 500)) {
113
+			restTemplate.getForObject(url_setOuvertureFenetre,double.class);
114
+			restTemplate.getForObject(url_setOuverturePorte,double.class);
115
+		}
116
+		else {
117
+			restTemplate.getForObject(url_setFermetureFenetre,double.class);
118
+			restTemplate.getForObject(url_setFermeturePorte,double.class);
119
+		}
120
+		
121
+	}
122
+	
123
+	
124
+	public void PorteFenetreAutomatique_CO2() {
125
+		
126
+		String url_getCO2 = captCO2URI + "getCO2/";
127
+		String url_setOuvertureFenetre = automFenetreURI + "setOpen/?open=true";
128
+		String url_setFermetureFenetre = automFenetreURI + "setOpen/?open=false";
129
+		String url_setOuverturePorte = automPorteURI + "setOpen/?open=true";
130
+		String url_setFermeturePorte = automPorteURI + "setOpen/?open=false";
131
+		RestTemplate restTemplate = new RestTemplate();
132
+		
133
+		if (((restTemplate.getForObject(url_getCO2,int.class)) > 500)) {
134
+			restTemplate.getForObject(url_setOuvertureFenetre,double.class);
135
+			restTemplate.getForObject(url_setOuverturePorte,double.class);
136
+		}
137
+		else {
138
+			restTemplate.getForObject(url_setFermetureFenetre,double.class);
139
+			restTemplate.getForObject(url_setFermeturePorte,double.class);
140
+		}
141
+		
142
+	}
143
+	@GetMapping("getSalleOccupee/")
144
+	public String SalleOccupe() {
145
+		String url_getDetection = captMouvURI + "getDetection/";
146
+		RestTemplate restTemplate = new RestTemplate();
147
+		boolean salle_occupe = restTemplate.getForObject(url_getDetection,boolean.class);
148
+		
149
+		
150
+		return ("La salle est:" + String.valueOf(salle_occupe)) ;
151
+		
152
+	}
153
+	
154
+	@GetMapping("setTemperatureHeatingSystem/")
155
+	public void setTemperatureHeatingSystem(int temp) {
156
+		String url_setTemp = automChauffageURI + "setTemperatureSet/?temperatureSet=" + String.valueOf(temp);
157
+		
158
+		RestTemplate restTemplate = new RestTemplate();
159
+		restTemplate.getForObject(url_setTemp,void.class);
160
+	}
161
+	
162
+	@GetMapping("getHeatingSystemONOFF/")
163
+	public boolean getHeatingSystemONOFF() {
164
+		String url_getONOFF = automChauffageURI + "isActive/";
165
+		
166
+		RestTemplate restTemplate = new RestTemplate();
167
+		return (restTemplate.getForObject(url_getONOFF,boolean.class));
168
+	}
169
+	
170
+	public boolean getMovementDetection() {
171
+		String url_getDetection = captMouvURI + "getDetection/";
172
+		boolean resultat = false;
173
+		RestTemplate restTemplate = new RestTemplate();
174
+		
175
+		return (restTemplate.getForObject(url_getDetection, boolean.class));
176
+		
177
+	
178
+	}
179
+	
180
+	
181
+	@GetMapping("run")
182
+	public int run() throws Exception {
183
+		
184
+		if (ControlLumiereAutomatique) {
185
+			ControlLumiereAutomatique();
186
+		}
187
+		
188
+		if (PorteFenetreAutomatique_TemperatureCO2) {
189
+			PorteFenetreAutomatique_TemperatureCO2();
190
+		}
191
+		
192
+		if (PorteFenetreAutomatique_CO2) {
193
+			PorteFenetreAutomatique_CO2();
194
+		}
195
+		if (AlarmActivated & (getMovementDetection())) {
196
+			//Communication avec OneM2M
197
+			
198
+			RestTemplate restTemplate = new RestTemplate();
199
+			HttpHeaders headers = new HttpHeaders();
200
+			
201
+			headers.set("X-M2M-ORIGIN", "admin:admin");
202
+			headers.set("Content-Type", "application/xml;ty=4");
203
+			//headers.set("Accept", "application/xml");
204
+			String parameters = "	\n"
205
+					+ "<m2m:cin xmlns:m2m=\"http://www.onem2m.org/xml/protocols\">\n"
206
+					+ "    <cnf>message</cnf>\n"
207
+					+ "    <con>\n"
208
+					+ "      &lt;obj&gt;\n"
209
+					+ "        &lt;str name=&quot;data&quot; val=&quot;Mouvement_GEI213&quot;/&gt;\n"
210
+					+ "        \n"
211
+					+ "      &lt;/obj&gt;\n"
212
+					+ "    </con>\n"
213
+					+ "</m2m:cin>";
214
+			
215
+			HttpEntity <String> entity = new HttpEntity <String> (parameters,headers);
216
+			String url = "http://127.0.0.1:8080/~/in-cse/in-name/Alarm_Notification/DATA/";
217
+			
218
+			restTemplate.exchange(url,HttpMethod.POST,entity,String.class);
219
+			
220
+			return 3;
221
+			
222
+		}
223
+		
224
+		
225
+		
226
+		return 0;
227
+		//Communication avec OneM2M
228
+		/*
229
+		RestTemplate restTemplate = new RestTemplate();
230
+		HttpHeaders headers = new HttpHeaders();
231
+		
232
+		headers.set("X-M2M-ORIGIN", "admin:admin");
233
+		headers.set("Content-Type", "application/xml;ty=4");
234
+		//headers.set("Accept", "application/xml");
235
+		String parameters = "	\n"
236
+				+ "<m2m:cin xmlns:m2m=\"http://www.onem2m.org/xml/protocols\">\n"
237
+				+ "    <cnf>message</cnf>\n"
238
+				+ "    <con>\n"
239
+				+ "      &lt;obj&gt;\n"
240
+				+ "        &lt;str name=&quot;presence&quot; val=&quot;1&quot;/&gt;\n"
241
+				+ "        \n"
242
+				+ "      &lt;/obj&gt;\n"
243
+				+ "    </con>\n"
244
+				+ "</m2m:cin>";
245
+		
246
+		HttpEntity <String> entity = new HttpEntity <String> (parameters,headers);
247
+		String url = "http://127.0.0.1:8080/~/in-cse/in-name/Capteur_Mouvement/DATA/";
248
+		
249
+		ResponseEntity respEntity = restTemplate.exchange(url,HttpMethod.POST,entity,String.class);
250
+		String resp = (String) respEntity.getBody();
251
+		return resp;
252
+		*/
253
+		
254
+		
255
+	}
256
+	
257
+	
258
+
259
+	 
260
+     
261
+     
262
+	
263
+	
264
+	
265
+	public static void main(String[] args) {
266
+		SpringApplication.run(ControllerApplication.class, args);
267
+		
268
+	
269
+	}
270
+
271
+}

+ 342
- 0
.metadata/.plugins/org.eclipse.core.resources/.history/30/303e7b12fb48001b145081b6f5274ba2 View File

@@ -0,0 +1,342 @@
1
+package Services.Controller;
2
+import java.awt.Color;
3
+import java.io.OutputStream;
4
+import java.net.HttpURLConnection;
5
+import java.net.URL;
6
+
7
+import javax.swing.JButton;
8
+import javax.swing.JFrame;
9
+import javax.swing.JPanel;
10
+
11
+import org.springframework.boot.SpringApplication;
12
+import org.springframework.web.client.*;
13
+
14
+
15
+import org.springframework.boot.autoconfigure.SpringBootApplication;
16
+import org.springframework.http.HttpEntity;
17
+import org.springframework.http.HttpHeaders;
18
+import org.springframework.http.HttpMethod;
19
+import org.springframework.http.ResponseEntity;
20
+import org.springframework.web.bind.annotation.GetMapping;
21
+import org.springframework.web.bind.annotation.RequestMapping;
22
+import org.springframework.web.bind.annotation.RestController;
23
+
24
+@RestController
25
+@SpringBootApplication
26
+@RequestMapping("/controller/")
27
+public class ControllerApplication {
28
+	
29
+	private final String captMouvURI = "http://localhost:8081/CaptMouv/";
30
+	private final String captTempURI = "http://localhost:8082/CaptTemp/";
31
+	private final String captCO2URI = "http://localhost:8083/CaptCO2/";
32
+	private final String captHumURI = "http://localhost:8084/CaptHum/";
33
+	private final String automPorteURI = "http://localhost:8085/AutomPorteApplication/";
34
+	private final String automFenetreURI = "http://localhost:8086/AutomFenetreApplication/";
35
+	private final String automLumiereURI = "http://localhost:8087/AutomLumiereApplication/";
36
+	private final String automChauffageURI = "http://localhost:8088/AutomChauffageApplication/";
37
+	private final String simulationURI = "http://localhost:8089/Simulation/";
38
+	
39
+	
40
+	boolean ControlLumiereAutomatique = false;
41
+	boolean PorteFenetreAutomatique_TemperatureCO2 = false;
42
+	boolean PorteFenetreAutomatique_CO2 = false;
43
+	boolean MouvementAlarmActivated = false;
44
+	boolean TemperatureAlarmActivated = false;
45
+	boolean CO2AlarmActivated = false;
46
+	
47
+	
48
+	//Controle de la lumiere automatique
49
+	//Controle en fonction du mouvement
50
+	@GetMapping("isControlLumiereAutomatiqueActivated/")
51
+	private final boolean isControlLumiereAutomatique() {
52
+		return ControlLumiereAutomatique;
53
+	}
54
+	@GetMapping("setControlLumiereAutomatique/")
55
+	private final void setControlLumiereAutomatique(boolean controlLumiereAutomatique) {
56
+		ControlLumiereAutomatique = controlLumiereAutomatique;
57
+	}
58
+	
59
+	//Control de l'ouverture de la porte et fenetre
60
+	//Control en fonction de la temperature et CO2
61
+	@GetMapping("isPorteFenetreAutomatique_TemperatureCO2Activated/")
62
+	private final boolean isPorteFenetreAutomatique_TemperatureCO2() {
63
+		return PorteFenetreAutomatique_TemperatureCO2;
64
+	}
65
+
66
+
67
+	@GetMapping("setPorteFenetreAutomatique_TemperatureCO2/")
68
+	private final void setPorteFenetreAutomatique_TemperatureCO2(boolean porteFenetreAutomatique_TemperatureCO2) {
69
+		PorteFenetreAutomatique_TemperatureCO2 = porteFenetreAutomatique_TemperatureCO2;
70
+	}
71
+	//Controle en fonction du CO2
72
+	@GetMapping("isPorteFenetreAutomatique_CO2Activated/")
73
+	private final boolean isPorteFenetreAutomatique_CO2() {
74
+		return PorteFenetreAutomatique_CO2;
75
+	}
76
+
77
+
78
+	@GetMapping("setPorteFenetreAutomatique_CO2/")
79
+	private final void setPorteFenetreAutomatique_CO2(boolean porteFenetreAutomatique_CO2) {
80
+		PorteFenetreAutomatique_CO2 = porteFenetreAutomatique_CO2;
81
+	}
82
+
83
+
84
+
85
+
86
+	public void ControlLumiereAutomatique() {
87
+		String url_getDetection = captMouvURI + "getDetection/";
88
+		String url_allumerLumiere = automLumiereURI + "setON/?oN=true";
89
+		String url_eteindreLumiere = automLumiereURI + "setON/?oN=false";
90
+		RestTemplate restTemplate = new RestTemplate();
91
+		
92
+		
93
+		//return restTemplate.getForObject(test, String.class);
94
+		
95
+		
96
+		if (restTemplate.getForObject(url_getDetection,boolean.class)) {
97
+			restTemplate.getForObject(url_allumerLumiere,boolean.class);			
98
+		}
99
+		else {
100
+			restTemplate.getForObject(url_eteindreLumiere,boolean.class);
101
+		}
102
+	}
103
+	
104
+	
105
+	public void PorteFenetreAutomatique_TemperatureCO2() {
106
+		String url_getTemp = captTempURI + "getTemp/";
107
+		String url_getCO2 = captCO2URI + "getCO2/";
108
+		String url_setOuvertureFenetre = automFenetreURI + "setOpen/?open=true";
109
+		String url_setFermetureFenetre = automFenetreURI + "setOpen/?open=false";
110
+		String url_setOuverturePorte = automPorteURI + "setOpen/?open=true";
111
+		String url_setFermeturePorte = automPorteURI + "setOpen/?open=false";
112
+		RestTemplate restTemplate = new RestTemplate();
113
+		
114
+		if (((restTemplate.getForObject(url_getTemp,double.class)) > 30) | ((restTemplate.getForObject(url_getCO2,int.class)) > 500)) {
115
+			restTemplate.getForObject(url_setOuvertureFenetre,double.class);
116
+			restTemplate.getForObject(url_setOuverturePorte,double.class);
117
+		}
118
+		else {
119
+			restTemplate.getForObject(url_setFermetureFenetre,double.class);
120
+			restTemplate.getForObject(url_setFermeturePorte,double.class);
121
+		}
122
+		
123
+	}
124
+	
125
+	
126
+	public void PorteFenetreAutomatique_CO2() {
127
+		
128
+		String url_getCO2 = captCO2URI + "getCO2/";
129
+		String url_setOuvertureFenetre = automFenetreURI + "setOpen/?open=true";
130
+		String url_setFermetureFenetre = automFenetreURI + "setOpen/?open=false";
131
+		String url_setOuverturePorte = automPorteURI + "setOpen/?open=true";
132
+		String url_setFermeturePorte = automPorteURI + "setOpen/?open=false";
133
+		RestTemplate restTemplate = new RestTemplate();
134
+		
135
+		if (((restTemplate.getForObject(url_getCO2,int.class)) > 500)) {
136
+			restTemplate.getForObject(url_setOuvertureFenetre,double.class);
137
+			restTemplate.getForObject(url_setOuverturePorte,double.class);
138
+		}
139
+		else {
140
+			restTemplate.getForObject(url_setFermetureFenetre,double.class);
141
+			restTemplate.getForObject(url_setFermeturePorte,double.class);
142
+		}
143
+		
144
+	}
145
+	@GetMapping("getSalleOccupee/")
146
+	public String SalleOccupe() {
147
+		String url_getDetection = captMouvURI + "getDetection/";
148
+		RestTemplate restTemplate = new RestTemplate();
149
+		boolean salle_occupe = restTemplate.getForObject(url_getDetection,boolean.class);
150
+		
151
+		
152
+		return ("La salle est:" + String.valueOf(salle_occupe)) ;
153
+		
154
+	}
155
+	
156
+	@GetMapping("setTemperatureHeatingSystem/")
157
+	public void setTemperatureHeatingSystem(int temp) {
158
+		String url_setTemp = automChauffageURI + "setTemperatureSet/?temperatureSet=" + String.valueOf(temp);
159
+		
160
+		RestTemplate restTemplate = new RestTemplate();
161
+		restTemplate.getForObject(url_setTemp,void.class);
162
+	}
163
+	
164
+	@GetMapping("getHeatingSystemONOFF/")
165
+	public boolean getHeatingSystemONOFF() {
166
+		String url_getONOFF = automChauffageURI + "isActive/";
167
+		
168
+		RestTemplate restTemplate = new RestTemplate();
169
+		return (restTemplate.getForObject(url_getONOFF,boolean.class));
170
+	}
171
+	
172
+	public boolean getMovementDetection() {
173
+		String url_getDetection = captMouvURI + "getDetection/";
174
+		boolean resultat = false;
175
+		RestTemplate restTemplate = new RestTemplate();
176
+		
177
+		return (restTemplate.getForObject(url_getDetection, boolean.class));
178
+		
179
+	}
180
+	
181
+	@GetMapping("getTemperatureAlarm/")
182
+	public boolean getTemperatureAlarm() {
183
+		return (TemperatureAlarmActivated);
184
+	}
185
+	@GetMapping("setTemperatureAlarm/")
186
+	public void setTemperatureAlarm(boolean active) {
187
+		TemperatureAlarmActivated = active;
188
+	}
189
+	
190
+	@GetMapping("setMouvementAlarm/")
191
+	public void setMouvementAlarm(boolean active) {
192
+		MouvementAlarmActivated = active;
193
+	}
194
+	@GetMapping("getMouvementAlarm/")
195
+	public boolean getMouvementAlarm() {
196
+		return (MouvementAlarmActivated);
197
+	}
198
+	
199
+	@GetMapping("setCO2Alarm/")
200
+	public void setCO2Alarm(boolean active) {
201
+		CO2AlarmActivated = active;
202
+	}
203
+	@GetMapping("getCO2Alarm/")
204
+	public boolean getCO2Alarm() {
205
+		return (CO2AlarmActivated);
206
+	}
207
+	
208
+	
209
+	
210
+	
211
+	@GetMapping("run")
212
+	public int run() throws Exception {
213
+		
214
+		if (ControlLumiereAutomatique) {
215
+			ControlLumiereAutomatique();
216
+		}
217
+		
218
+		if (PorteFenetreAutomatique_TemperatureCO2) {
219
+			PorteFenetreAutomatique_TemperatureCO2();
220
+		}
221
+		
222
+		if (PorteFenetreAutomatique_CO2) {
223
+			PorteFenetreAutomatique_CO2();
224
+		}
225
+		
226
+		//Notification de mouvement Alarm
227
+		if (MouvementAlarmActivated & (getMovementDetection())) {
228
+			//Communication avec OneM2M
229
+			
230
+			RestTemplate restTemplate = new RestTemplate();
231
+			HttpHeaders headers = new HttpHeaders();
232
+			
233
+			headers.set("X-M2M-ORIGIN", "admin:admin");
234
+			headers.set("Content-Type", "application/xml;ty=4");
235
+			//headers.set("Accept", "application/xml");
236
+			String parameters = "	\n"
237
+					+ "<m2m:cin xmlns:m2m=\"http://www.onem2m.org/xml/protocols\">\n"
238
+					+ "    <cnf>message</cnf>\n"
239
+					+ "    <con>\n"
240
+					+ "      &lt;obj&gt;\n"
241
+					+ "        &lt;str name=&quot;data&quot; val=&quot;Mouvement_GEI213&quot;/&gt;\n"
242
+					+ "        \n"
243
+					+ "      &lt;/obj&gt;\n"
244
+					+ "    </con>\n"
245
+					+ "</m2m:cin>";
246
+			
247
+			HttpEntity <String> entity = new HttpEntity <String> (parameters,headers);
248
+			String url = "http://127.0.0.1:8080/~/in-cse/in-name/Alarm_Notification/DATA/";
249
+			
250
+			restTemplate.exchange(url,HttpMethod.POST,entity,String.class);
251
+			
252
+		}
253
+		
254
+		//Notification temperature elevée
255
+		if (TemperatureAlarmActivated) {
256
+			String url_getTemp = captTempURI + "getTemp/";
257
+			int temp;
258
+			//Communication avec OneM2M
259
+			
260
+			RestTemplate restTemplate = new RestTemplate();
261
+			temp = restTemplate.getForObject(url_getTemp,int.class);
262
+			if ((temp > 35) | (temp<15)) {
263
+			HttpHeaders headers = new HttpHeaders();
264
+			
265
+			headers.set("X-M2M-ORIGIN", "admin:admin");
266
+			headers.set("Content-Type", "application/xml;ty=4");
267
+			//headers.set("Accept", "application/xml");
268
+			String parameters = "	\n"
269
+					+ "<m2m:cin xmlns:m2m=\"http://www.onem2m.org/xml/protocols\">\n"
270
+					+ "    <cnf>message</cnf>\n"
271
+					+ "    <con>\n"
272
+					+ "      &lt;obj&gt;\n"
273
+					+ "        &lt;str name=&quot;location&quot; val=&quot;GEI213&quot;/&gt;\n"
274
+					+ "			&lt;str name=&quot;data&quot; val=&quot;" + String.valueOf(temp) +"&quot;/&gt;\n"
275
+					+ "        \n"
276
+					+ "      &lt;/obj&gt;\n"
277
+					+ "    </con>\n"
278
+					+ "</m2m:cin>";
279
+			
280
+			HttpEntity <String> entity = new HttpEntity <String> (parameters,headers);
281
+			String url = "http://127.0.0.1:8080/~/in-cse/in-name/Alarm_Temperature/DATA/";
282
+			
283
+			restTemplate.exchange(url,HttpMethod.POST,entity,String.class);
284
+			}
285
+		}
286
+			
287
+			//Notification CO2 elevée
288
+			if (CO2AlarmActivated) {
289
+				String url_getCO2 = captCO2URI + "getCO2/";
290
+				double CO2;
291
+				//Communication avec OneM2M
292
+				
293
+				RestTemplate restTemplate = new RestTemplate();
294
+				CO2 = restTemplate.getForObject(url_getCO2,double.class);
295
+				if (CO2 > 1000) {
296
+				HttpHeaders headers = new HttpHeaders();
297
+				
298
+				headers.set("X-M2M-ORIGIN", "admin:admin");
299
+				headers.set("Content-Type", "application/xml;ty=4");
300
+				//headers.set("Accept", "application/xml");
301
+				String parameters = "	\n"
302
+						+ "<m2m:cin xmlns:m2m=\"http://www.onem2m.org/xml/protocols\">\n"
303
+						+ "    <cnf>message</cnf>\n"
304
+						+ "    <con>\n"
305
+						+ "      &lt;obj&gt;\n"
306
+						+ "        &lt;str name=&quot;location&quot; val=&quot;GEI213&quot;/&gt;\n"
307
+						+ "			&lt;str name=&quot;data&quot; val=&quot;" + String.valueOf(CO2) +"&quot;/&gt;\n"
308
+						+ "        \n"
309
+						+ "      &lt;/obj&gt;\n"
310
+						+ "    </con>\n"
311
+						+ "</m2m:cin>";
312
+				
313
+				HttpEntity <String> entity = new HttpEntity <String> (parameters,headers);
314
+				String url = "http://127.0.0.1:8080/~/in-cse/in-name/Alarm_CO2/DATA/";
315
+				
316
+				restTemplate.exchange(url,HttpMethod.POST,entity,String.class);
317
+				}
318
+		}
319
+		
320
+		
321
+		
322
+		return 0;
323
+		
324
+		
325
+		
326
+	}
327
+	
328
+	
329
+
330
+	 
331
+     
332
+     
333
+	
334
+	
335
+	
336
+	public static void main(String[] args) {
337
+		SpringApplication.run(ControllerApplication.class, args);
338
+		
339
+	
340
+	}
341
+
342
+}

+ 52
- 0
.metadata/.plugins/org.eclipse.core.resources/.history/38/103cfca2fc48001b145081b6f5274ba2 View File

@@ -0,0 +1,52 @@
1
+package Services.CaptMouv;
2
+
3
+import org.springframework.boot.SpringApplication;
4
+import org.springframework.boot.autoconfigure.SpringBootApplication;
5
+import org.springframework.web.bind.annotation.GetMapping;
6
+import org.springframework.web.bind.annotation.RequestMapping;
7
+import org.springframework.web.bind.annotation.RestController;
8
+
9
+
10
+
11
+@RestController
12
+@SpringBootApplication
13
+@RequestMapping("/CaptMouv/")
14
+public class CaptMouvApplication {
15
+
16
+	
17
+	private double range;
18
+	private boolean detection;
19
+	
20
+	
21
+	//Constructor
22
+	public CaptMouvApplication() {
23
+		
24
+		this.range = 7;
25
+		this.detection = false;
26
+	}
27
+	
28
+	//Methodes
29
+	@GetMapping("getRange/")
30
+	public double getRange() {
31
+		return range;
32
+	}
33
+	@GetMapping("setRange/")
34
+	public void setRange(double range) {
35
+		this.range = range;
36
+	}
37
+	@GetMapping("getDetection/")
38
+	public boolean getDetection() {
39
+		return detection;
40
+	}
41
+	@GetMapping("setDetection/")
42
+	public void setDetection(boolean detection) {
43
+		this.detection = detection;
44
+	}
45
+	
46
+	
47
+	public static void main(String[] args) {
48
+		SpringApplication.run(CaptMouvApplication.class, args);
49
+		
50
+	}
51
+
52
+}

+ 355
- 0
.metadata/.plugins/org.eclipse.core.resources/.history/40/a0a3b407ed48001b145081b6f5274ba2 View File

@@ -0,0 +1,355 @@
1
+package Services.Controller;
2
+import java.awt.Color;
3
+import java.io.OutputStream;
4
+import java.net.HttpURLConnection;
5
+import java.net.URL;
6
+
7
+import javax.swing.JButton;
8
+import javax.swing.JFrame;
9
+import javax.swing.JPanel;
10
+
11
+import org.springframework.boot.SpringApplication;
12
+import org.springframework.web.client.*;
13
+
14
+
15
+import org.springframework.boot.autoconfigure.SpringBootApplication;
16
+import org.springframework.http.HttpEntity;
17
+import org.springframework.http.HttpHeaders;
18
+import org.springframework.http.HttpMethod;
19
+import org.springframework.http.ResponseEntity;
20
+import org.springframework.web.bind.annotation.GetMapping;
21
+import org.springframework.web.bind.annotation.RequestMapping;
22
+import org.springframework.web.bind.annotation.RestController;
23
+
24
+@RestController
25
+@SpringBootApplication
26
+@RequestMapping("/controller/")
27
+public class ControllerApplication {
28
+	
29
+	private final String captMouvURI = "http://localhost:8081/CaptMouv/";
30
+	private final String captTempURI = "http://localhost:8082/CaptTemp/";
31
+	private final String captCO2URI = "http://localhost:8083/CaptCO2/";
32
+	private final String captHumURI = "http://localhost:8084/";
33
+	private final String automPorteURI = "http://localhost:8085/AutomPorteApplication/";
34
+	private final String automFenetreURI = "http://localhost:8086/AutomFenetreApplication/";
35
+	private final String automLumiereURI = "http://localhost:8087/AutomLumiereApplication/";
36
+	private final String automChauffageURI = "http://localhost:8088/AutomChauffageApplication/";
37
+	private final String simulationURI = "http://localhost:8089/Simulation/";
38
+	
39
+	
40
+	boolean ControlLumiereAutomatique = false;
41
+	boolean PorteFenetreAutomatique_TemperatureCO2 = false;
42
+	boolean PorteFenetreAutomatique_CO2 = false;
43
+	boolean MouvementAlarmActivated = false;
44
+	boolean TemperatureAlarmActivated = false;
45
+	boolean CO2AlarmActivated = false;
46
+	
47
+	
48
+	//Controle de la lumiere automatique
49
+	//Controle en fonction du mouvement
50
+	@GetMapping("isControlLumiereAutomatiqueActivated/")
51
+	private final boolean isControlLumiereAutomatique() {
52
+		return ControlLumiereAutomatique;
53
+	}
54
+	@GetMapping("setControlLumiereAutomatique/")
55
+	private final void setControlLumiereAutomatique(boolean controlLumiereAutomatique) {
56
+		ControlLumiereAutomatique = controlLumiereAutomatique;
57
+	}
58
+	
59
+	//Control de l'ouverture de la porte et fenetre
60
+	//Control en fonction de la temperature et CO2
61
+	@GetMapping("isPorteFenetreAutomatique_TemperatureCO2Activated/")
62
+	private final boolean isPorteFenetreAutomatique_TemperatureCO2() {
63
+		return PorteFenetreAutomatique_TemperatureCO2;
64
+	}
65
+
66
+
67
+	@GetMapping("setPorteFenetreAutomatique_TemperatureCO2/")
68
+	private final void setPorteFenetreAutomatique_TemperatureCO2(boolean porteFenetreAutomatique_TemperatureCO2) {
69
+		PorteFenetreAutomatique_TemperatureCO2 = porteFenetreAutomatique_TemperatureCO2;
70
+	}
71
+	//Controle en fonction du CO2
72
+	@GetMapping("isPorteFenetreAutomatique_CO2Activated/")
73
+	private final boolean isPorteFenetreAutomatique_CO2() {
74
+		return PorteFenetreAutomatique_CO2;
75
+	}
76
+
77
+
78
+	@GetMapping("setPorteFenetreAutomatique_CO2/")
79
+	private final void setPorteFenetreAutomatique_CO2(boolean porteFenetreAutomatique_CO2) {
80
+		PorteFenetreAutomatique_CO2 = porteFenetreAutomatique_CO2;
81
+	}
82
+
83
+
84
+
85
+
86
+	public void ControlLumiereAutomatique() {
87
+		String url_getDetection = captMouvURI + "getDetection/";
88
+		String url_allumerLumiere = automLumiereURI + "setON/?oN=true";
89
+		String url_eteindreLumiere = automLumiereURI + "setON/?oN=false";
90
+		RestTemplate restTemplate = new RestTemplate();
91
+		
92
+		
93
+		//return restTemplate.getForObject(test, String.class);
94
+		
95
+		
96
+		if (restTemplate.getForObject(url_getDetection,boolean.class)) {
97
+			restTemplate.getForObject(url_allumerLumiere,boolean.class);			
98
+		}
99
+		else {
100
+			restTemplate.getForObject(url_eteindreLumiere,boolean.class);
101
+		}
102
+	}
103
+	
104
+	
105
+	public void PorteFenetreAutomatique_TemperatureCO2() {
106
+		String url_getTemp = captTempURI + "getTemp/";
107
+		String url_getCO2 = captCO2URI + "getCO2/";
108
+		String url_setOuvertureFenetre = automFenetreURI + "setOpen/?open=true";
109
+		String url_setFermetureFenetre = automFenetreURI + "setOpen/?open=false";
110
+		String url_setOuverturePorte = automPorteURI + "setOpen/?open=true";
111
+		String url_setFermeturePorte = automPorteURI + "setOpen/?open=false";
112
+		RestTemplate restTemplate = new RestTemplate();
113
+		
114
+		if (((restTemplate.getForObject(url_getTemp,double.class)) > 30) | ((restTemplate.getForObject(url_getCO2,int.class)) > 500)) {
115
+			restTemplate.getForObject(url_setOuvertureFenetre,double.class);
116
+			restTemplate.getForObject(url_setOuverturePorte,double.class);
117
+		}
118
+		else {
119
+			restTemplate.getForObject(url_setFermetureFenetre,double.class);
120
+			restTemplate.getForObject(url_setFermeturePorte,double.class);
121
+		}
122
+		
123
+	}
124
+	
125
+	
126
+	public void PorteFenetreAutomatique_CO2() {
127
+		
128
+		String url_getCO2 = captCO2URI + "getCO2/";
129
+		String url_setOuvertureFenetre = automFenetreURI + "setOpen/?open=true";
130
+		String url_setFermetureFenetre = automFenetreURI + "setOpen/?open=false";
131
+		String url_setOuverturePorte = automPorteURI + "setOpen/?open=true";
132
+		String url_setFermeturePorte = automPorteURI + "setOpen/?open=false";
133
+		RestTemplate restTemplate = new RestTemplate();
134
+		
135
+		if (((restTemplate.getForObject(url_getCO2,int.class)) > 500)) {
136
+			restTemplate.getForObject(url_setOuvertureFenetre,double.class);
137
+			restTemplate.getForObject(url_setOuverturePorte,double.class);
138
+		}
139
+		else {
140
+			restTemplate.getForObject(url_setFermetureFenetre,double.class);
141
+			restTemplate.getForObject(url_setFermeturePorte,double.class);
142
+		}
143
+		
144
+	}
145
+	@GetMapping("getSalleOccupee/")
146
+	public String SalleOccupe() {
147
+		String url_getDetection = captMouvURI + "getDetection/";
148
+		RestTemplate restTemplate = new RestTemplate();
149
+		boolean salle_occupe = restTemplate.getForObject(url_getDetection,boolean.class);
150
+		
151
+		
152
+		return ("La salle est:" + String.valueOf(salle_occupe)) ;
153
+		
154
+	}
155
+	
156
+	@GetMapping("setTemperatureHeatingSystem/")
157
+	public void setTemperatureHeatingSystem(int temp) {
158
+		String url_setTemp = automChauffageURI + "setTemperatureSet/?temperatureSet=" + String.valueOf(temp);
159
+		
160
+		RestTemplate restTemplate = new RestTemplate();
161
+		restTemplate.getForObject(url_setTemp,void.class);
162
+	}
163
+	
164
+	@GetMapping("getHeatingSystemONOFF/")
165
+	public boolean getHeatingSystemONOFF() {
166
+		String url_getONOFF = automChauffageURI + "isActive/";
167
+		
168
+		RestTemplate restTemplate = new RestTemplate();
169
+		return (restTemplate.getForObject(url_getONOFF,boolean.class));
170
+	}
171
+	
172
+	public boolean getMovementDetection() {
173
+		String url_getDetection = captMouvURI + "getDetection/";
174
+		boolean resultat = false;
175
+		RestTemplate restTemplate = new RestTemplate();
176
+		
177
+		return (restTemplate.getForObject(url_getDetection, boolean.class));
178
+		
179
+	}
180
+	
181
+	@GetMapping("setTemperatureAlarm/")
182
+	public void setTemperatureAlarm(boolean active) {
183
+		TemperatureAlarmActivated = active;
184
+	}
185
+	
186
+	@GetMapping("setMouvementAlarm/")
187
+	public void setMouvementAlarm(boolean active) {
188
+		MouvementAlarmActivated = active;
189
+	}
190
+	
191
+	@GetMapping("setCO2Alarm/")
192
+	public void setCO2Alarm(boolean active) {
193
+		CO2AlarmActivated = active;
194
+	}
195
+	
196
+	
197
+	
198
+	
199
+	@GetMapping("run")
200
+	public int run() throws Exception {
201
+		
202
+		if (ControlLumiereAutomatique) {
203
+			ControlLumiereAutomatique();
204
+		}
205
+		
206
+		if (PorteFenetreAutomatique_TemperatureCO2) {
207
+			PorteFenetreAutomatique_TemperatureCO2();
208
+		}
209
+		
210
+		if (PorteFenetreAutomatique_CO2) {
211
+			PorteFenetreAutomatique_CO2();
212
+		}
213
+		
214
+		//Notification de mouvement Alarm
215
+		if (MouvementAlarmActivated & (getMovementDetection())) {
216
+			//Communication avec OneM2M
217
+			
218
+			RestTemplate restTemplate = new RestTemplate();
219
+			HttpHeaders headers = new HttpHeaders();
220
+			
221
+			headers.set("X-M2M-ORIGIN", "admin:admin");
222
+			headers.set("Content-Type", "application/xml;ty=4");
223
+			//headers.set("Accept", "application/xml");
224
+			String parameters = "	\n"
225
+					+ "<m2m:cin xmlns:m2m=\"http://www.onem2m.org/xml/protocols\">\n"
226
+					+ "    <cnf>message</cnf>\n"
227
+					+ "    <con>\n"
228
+					+ "      &lt;obj&gt;\n"
229
+					+ "        &lt;str name=&quot;data&quot; val=&quot;Mouvement_GEI213&quot;/&gt;\n"
230
+					+ "        \n"
231
+					+ "      &lt;/obj&gt;\n"
232
+					+ "    </con>\n"
233
+					+ "</m2m:cin>";
234
+			
235
+			HttpEntity <String> entity = new HttpEntity <String> (parameters,headers);
236
+			String url = "http://127.0.0.1:8080/~/in-cse/in-name/Alarm_Notification/DATA/";
237
+			
238
+			restTemplate.exchange(url,HttpMethod.POST,entity,String.class);
239
+			
240
+		}
241
+		
242
+		//Notification temperature elevée
243
+		if (TemperatureAlarmActivated) {
244
+			String url_getTemp = captTempURI + "getTemp/";
245
+			int temp;
246
+			//Communication avec OneM2M
247
+			
248
+			RestTemplate restTemplate = new RestTemplate();
249
+			temp = restTemplate.getForObject(url_getTemp,int.class);
250
+			if ((temp > 35) | (temp<15)) {
251
+			HttpHeaders headers = new HttpHeaders();
252
+			
253
+			headers.set("X-M2M-ORIGIN", "admin:admin");
254
+			headers.set("Content-Type", "application/xml;ty=4");
255
+			//headers.set("Accept", "application/xml");
256
+			String parameters = "	\n"
257
+					+ "<m2m:cin xmlns:m2m=\"http://www.onem2m.org/xml/protocols\">\n"
258
+					+ "    <cnf>message</cnf>\n"
259
+					+ "    <con>\n"
260
+					+ "      &lt;obj&gt;\n"
261
+					+ "        &lt;str name=&quot;location&quot; val=&quot;GEI213&quot;/&gt;\n"
262
+					+ "			&lt;str name=&quot;data&quot; val=&quot;" + String.valueOf(temp) +"&quot;/&gt;\n"
263
+					+ "        \n"
264
+					+ "      &lt;/obj&gt;\n"
265
+					+ "    </con>\n"
266
+					+ "</m2m:cin>";
267
+			
268
+			HttpEntity <String> entity = new HttpEntity <String> (parameters,headers);
269
+			String url = "http://127.0.0.1:8080/~/in-cse/in-name/Alarm_Temperature/DATA/";
270
+			
271
+			restTemplate.exchange(url,HttpMethod.POST,entity,String.class);
272
+			}
273
+		}
274
+			
275
+			//Notification CO2 elevée
276
+			if (CO2AlarmActivated) {
277
+				String url_getCO2 = captCO2URI + "getCO2/";
278
+				double CO2;
279
+				//Communication avec OneM2M
280
+				
281
+				RestTemplate restTemplate = new RestTemplate();
282
+				CO2 = restTemplate.getForObject(url_getCO2,double.class);
283
+				if (CO2 > 1000) {
284
+				HttpHeaders headers = new HttpHeaders();
285
+				
286
+				headers.set("X-M2M-ORIGIN", "admin:admin");
287
+				headers.set("Content-Type", "application/xml;ty=4");
288
+				//headers.set("Accept", "application/xml");
289
+				String parameters = "	\n"
290
+						+ "<m2m:cin xmlns:m2m=\"http://www.onem2m.org/xml/protocols\">\n"
291
+						+ "    <cnf>message</cnf>\n"
292
+						+ "    <con>\n"
293
+						+ "      &lt;obj&gt;\n"
294
+						+ "        &lt;str name=&quot;location&quot; val=&quot;GEI213&quot;/&gt;\n"
295
+						+ "			&lt;str name=&quot;data&quot; val=&quot;" + String.valueOf(CO2) +"&quot;/&gt;\n"
296
+						+ "        \n"
297
+						+ "      &lt;/obj&gt;\n"
298
+						+ "    </con>\n"
299
+						+ "</m2m:cin>";
300
+				
301
+				HttpEntity <String> entity = new HttpEntity <String> (parameters,headers);
302
+				String url = "http://127.0.0.1:8080/~/in-cse/in-name/Alarm_CO2/DATA/";
303
+				
304
+				restTemplate.exchange(url,HttpMethod.POST,entity,String.class);
305
+				}
306
+		}
307
+		
308
+		
309
+		
310
+		return 0;
311
+		//Communication avec OneM2M
312
+		/*
313
+		RestTemplate restTemplate = new RestTemplate();
314
+		HttpHeaders headers = new HttpHeaders();
315
+		
316
+		headers.set("X-M2M-ORIGIN", "admin:admin");
317
+		headers.set("Content-Type", "application/xml;ty=4");
318
+		//headers.set("Accept", "application/xml");
319
+		String parameters = "	\n"
320
+				+ "<m2m:cin xmlns:m2m=\"http://www.onem2m.org/xml/protocols\">\n"
321
+				+ "    <cnf>message</cnf>\n"
322
+				+ "    <con>\n"
323
+				+ "      &lt;obj&gt;\n"
324
+				+ "        &lt;str name=&quot;presence&quot; val=&quot;1&quot;/&gt;\n"
325
+				+ "        \n"
326
+				+ "      &lt;/obj&gt;\n"
327
+				+ "    </con>\n"
328
+				+ "</m2m:cin>";
329
+		
330
+		HttpEntity <String> entity = new HttpEntity <String> (parameters,headers);
331
+		String url = "http://127.0.0.1:8080/~/in-cse/in-name/Capteur_Mouvement/DATA/";
332
+		
333
+		ResponseEntity respEntity = restTemplate.exchange(url,HttpMethod.POST,entity,String.class);
334
+		String resp = (String) respEntity.getBody();
335
+		return resp;
336
+		*/
337
+		
338
+		
339
+	}
340
+	
341
+	
342
+
343
+	 
344
+     
345
+     
346
+	
347
+	
348
+	
349
+	public static void main(String[] args) {
350
+		SpringApplication.run(ControllerApplication.class, args);
351
+		
352
+	
353
+	}
354
+
355
+}

+ 281
- 0
.metadata/.plugins/org.eclipse.core.resources/.history/52/f0fcc67ba047001b1997ad6a8c66f017 View File

@@ -0,0 +1,281 @@
1
+package Services.Controller;
2
+import java.awt.Color;
3
+import java.io.OutputStream;
4
+import java.net.HttpURLConnection;
5
+import java.net.URL;
6
+
7
+import javax.swing.JButton;
8
+import javax.swing.JFrame;
9
+import javax.swing.JPanel;
10
+
11
+import org.springframework.boot.SpringApplication;
12
+import org.springframework.web.client.*;
13
+
14
+
15
+import org.springframework.boot.autoconfigure.SpringBootApplication;
16
+import org.springframework.http.HttpEntity;
17
+import org.springframework.http.HttpHeaders;
18
+import org.springframework.http.HttpMethod;
19
+import org.springframework.http.ResponseEntity;
20
+import org.springframework.web.bind.annotation.GetMapping;
21
+import org.springframework.web.bind.annotation.RequestMapping;
22
+import org.springframework.web.bind.annotation.RestController;
23
+
24
+@RestController
25
+@SpringBootApplication
26
+@RequestMapping("/controller/")
27
+public class ControllerApplication {
28
+	
29
+	private final String captMouvURI = "http://localhost:8081/CaptMouv/";
30
+	private final String captTempURI = "http://localhost:8082/CaptTemp/";
31
+	private final String captCO2URI = "http://localhost:8083/CaptCO2/";
32
+	private final String captHumURI = "http://localhost:8084/";
33
+	private final String automPorteURI = "http://localhost:8085/AutomPorteApplication/";
34
+	private final String automFenetreURI = "http://localhost:8086/AutomFenetreApplication/";
35
+	private final String automLumiereURI = "http://localhost:8087/AutomLumiereApplication/";
36
+	private final String automChauffageURI = "http://localhost:8088/AutomChauffageApplication/";
37
+	private final String simulationURI = "http://localhost:8089/Simulation/";
38
+	
39
+	
40
+	boolean ControlLumiereAutomatique = false;
41
+	boolean PorteFenetreAutomatique_TemperatureCO2 = false;
42
+	boolean PorteFenetreAutomatique_CO2 = false;
43
+	boolean MouvementAlarmActivated = false;
44
+	boolean TemperatureAlarmActivated = false;
45
+	
46
+	
47
+	//Controle de la lumiere automatique
48
+	//Controle en fonction du mouvement
49
+	@GetMapping("isControlLumiereAutomatiqueActivated/")
50
+	private final boolean isControlLumiereAutomatique() {
51
+		return ControlLumiereAutomatique;
52
+	}
53
+	@GetMapping("setControlLumiereAutomatique/")
54
+	private final void setControlLumiereAutomatique(boolean controlLumiereAutomatique) {
55
+		ControlLumiereAutomatique = controlLumiereAutomatique;
56
+	}
57
+	
58
+	//Control de l'ouverture de la porte et fenetre
59
+	//Control en fonction de la temperature et CO2
60
+	@GetMapping("isPorteFenetreAutomatique_TemperatureCO2Activated/")
61
+	private final boolean isPorteFenetreAutomatique_TemperatureCO2() {
62
+		return PorteFenetreAutomatique_TemperatureCO2;
63
+	}
64
+
65
+
66
+	@GetMapping("setPorteFenetreAutomatique_TemperatureCO2/")
67
+	private final void setPorteFenetreAutomatique_TemperatureCO2(boolean porteFenetreAutomatique_TemperatureCO2) {
68
+		PorteFenetreAutomatique_TemperatureCO2 = porteFenetreAutomatique_TemperatureCO2;
69
+	}
70
+	//Controle en fonction du CO2
71
+	@GetMapping("isPorteFenetreAutomatique_CO2Activated/")
72
+	private final boolean isPorteFenetreAutomatique_CO2() {
73
+		return PorteFenetreAutomatique_CO2;
74
+	}
75
+
76
+
77
+	@GetMapping("setPorteFenetreAutomatique_CO2/")
78
+	private final void setPorteFenetreAutomatique_CO2(boolean porteFenetreAutomatique_CO2) {
79
+		PorteFenetreAutomatique_CO2 = porteFenetreAutomatique_CO2;
80
+	}
81
+
82
+
83
+
84
+
85
+	public void ControlLumiereAutomatique() {
86
+		String url_getDetection = captMouvURI + "getDetection/";
87
+		String url_allumerLumiere = automLumiereURI + "setON/?oN=true";
88
+		String url_eteindreLumiere = automLumiereURI + "setON/?oN=false";
89
+		RestTemplate restTemplate = new RestTemplate();
90
+		
91
+		
92
+		//return restTemplate.getForObject(test, String.class);
93
+		
94
+		
95
+		if (restTemplate.getForObject(url_getDetection,boolean.class)) {
96
+			restTemplate.getForObject(url_allumerLumiere,boolean.class);			
97
+		}
98
+		else {
99
+			restTemplate.getForObject(url_eteindreLumiere,boolean.class);
100
+		}
101
+	}
102
+	
103
+	
104
+	public void PorteFenetreAutomatique_TemperatureCO2() {
105
+		String url_getTemp = captTempURI + "getTemp/";
106
+		String url_getCO2 = captCO2URI + "getCO2/";
107
+		String url_setOuvertureFenetre = automFenetreURI + "setOpen/?open=true";
108
+		String url_setFermetureFenetre = automFenetreURI + "setOpen/?open=false";
109
+		String url_setOuverturePorte = automPorteURI + "setOpen/?open=true";
110
+		String url_setFermeturePorte = automPorteURI + "setOpen/?open=false";
111
+		RestTemplate restTemplate = new RestTemplate();
112
+		
113
+		if (((restTemplate.getForObject(url_getTemp,double.class)) > 30) | ((restTemplate.getForObject(url_getCO2,int.class)) > 500)) {
114
+			restTemplate.getForObject(url_setOuvertureFenetre,double.class);
115
+			restTemplate.getForObject(url_setOuverturePorte,double.class);
116
+		}
117
+		else {
118
+			restTemplate.getForObject(url_setFermetureFenetre,double.class);
119
+			restTemplate.getForObject(url_setFermeturePorte,double.class);
120
+		}
121
+		
122
+	}
123
+	
124
+	
125
+	public void PorteFenetreAutomatique_CO2() {
126
+		
127
+		String url_getCO2 = captCO2URI + "getCO2/";
128
+		String url_setOuvertureFenetre = automFenetreURI + "setOpen/?open=true";
129
+		String url_setFermetureFenetre = automFenetreURI + "setOpen/?open=false";
130
+		String url_setOuverturePorte = automPorteURI + "setOpen/?open=true";
131
+		String url_setFermeturePorte = automPorteURI + "setOpen/?open=false";
132
+		RestTemplate restTemplate = new RestTemplate();
133
+		
134
+		if (((restTemplate.getForObject(url_getCO2,int.class)) > 500)) {
135
+			restTemplate.getForObject(url_setOuvertureFenetre,double.class);
136
+			restTemplate.getForObject(url_setOuverturePorte,double.class);
137
+		}
138
+		else {
139
+			restTemplate.getForObject(url_setFermetureFenetre,double.class);
140
+			restTemplate.getForObject(url_setFermeturePorte,double.class);
141
+		}
142
+		
143
+	}
144
+	@GetMapping("getSalleOccupee/")
145
+	public String SalleOccupe() {
146
+		String url_getDetection = captMouvURI + "getDetection/";
147
+		RestTemplate restTemplate = new RestTemplate();
148
+		boolean salle_occupe = restTemplate.getForObject(url_getDetection,boolean.class);
149
+		
150
+		
151
+		return ("La salle est:" + String.valueOf(salle_occupe)) ;
152
+		
153
+	}
154
+	
155
+	@GetMapping("setTemperatureHeatingSystem/")
156
+	public void setTemperatureHeatingSystem(int temp) {
157
+		String url_setTemp = automChauffageURI + "setTemperatureSet/?temperatureSet=" + String.valueOf(temp);
158
+		
159
+		RestTemplate restTemplate = new RestTemplate();
160
+		restTemplate.getForObject(url_setTemp,void.class);
161
+	}
162
+	
163
+	@GetMapping("getHeatingSystemONOFF/")
164
+	public boolean getHeatingSystemONOFF() {
165
+		String url_getONOFF = automChauffageURI + "isActive/";
166
+		
167
+		RestTemplate restTemplate = new RestTemplate();
168
+		return (restTemplate.getForObject(url_getONOFF,boolean.class));
169
+	}
170
+	
171
+	public boolean getMovementDetection() {
172
+		String url_getDetection = captMouvURI + "getDetection/";
173
+		boolean resultat = false;
174
+		RestTemplate restTemplate = new RestTemplate();
175
+		
176
+		return (restTemplate.getForObject(url_getDetection, boolean.class));
177
+		
178
+	}
179
+	
180
+	@GetMapping("setTemperatureAlarm/")
181
+	public void setTemperatureAlarm(boolean active) {
182
+		TemperatureAlarmActivated = active;
183
+	}
184
+	
185
+	@GetMapping("setMouvementAlarm/")
186
+	public void setMouvementAlarm(boolean active) {
187
+		MouvementAlarmActivated = active;
188
+	}
189
+	
190
+	
191
+	@GetMapping("run")
192
+	public int run() throws Exception {
193
+		
194
+		if (ControlLumiereAutomatique) {
195
+			ControlLumiereAutomatique();
196
+		}
197
+		
198
+		if (PorteFenetreAutomatique_TemperatureCO2) {
199
+			PorteFenetreAutomatique_TemperatureCO2();
200
+		}
201
+		
202
+		if (PorteFenetreAutomatique_CO2) {
203
+			PorteFenetreAutomatique_CO2();
204
+		}
205
+		if (MouvementAlarmActivated & (getMovementDetection())) {
206
+			//Communication avec OneM2M
207
+			
208
+			RestTemplate restTemplate = new RestTemplate();
209
+			HttpHeaders headers = new HttpHeaders();
210
+			
211
+			headers.set("X-M2M-ORIGIN", "admin:admin");
212
+			headers.set("Content-Type", "application/xml;ty=4");
213
+			//headers.set("Accept", "application/xml");
214
+			String parameters = "	\n"
215
+					+ "<m2m:cin xmlns:m2m=\"http://www.onem2m.org/xml/protocols\">\n"
216
+					+ "    <cnf>message</cnf>\n"
217
+					+ "    <con>\n"
218
+					+ "      &lt;obj&gt;\n"
219
+					+ "        &lt;str name=&quot;data&quot; val=&quot;Mouvement_GEI213&quot;/&gt;\n"
220
+					+ "        \n"
221
+					+ "      &lt;/obj&gt;\n"
222
+					+ "    </con>\n"
223
+					+ "</m2m:cin>";
224
+			
225
+			HttpEntity <String> entity = new HttpEntity <String> (parameters,headers);
226
+			String url = "http://127.0.0.1:8080/~/in-cse/in-name/Alarm_Notification/DATA/";
227
+			
228
+			restTemplate.exchange(url,HttpMethod.POST,entity,String.class);
229
+			
230
+			return 3;
231
+			
232
+		}
233
+		
234
+		
235
+		
236
+		return 0;
237
+		//Communication avec OneM2M
238
+		/*
239
+		RestTemplate restTemplate = new RestTemplate();
240
+		HttpHeaders headers = new HttpHeaders();
241
+		
242
+		headers.set("X-M2M-ORIGIN", "admin:admin");
243
+		headers.set("Content-Type", "application/xml;ty=4");
244
+		//headers.set("Accept", "application/xml");
245
+		String parameters = "	\n"
246
+				+ "<m2m:cin xmlns:m2m=\"http://www.onem2m.org/xml/protocols\">\n"
247
+				+ "    <cnf>message</cnf>\n"
248
+				+ "    <con>\n"
249
+				+ "      &lt;obj&gt;\n"
250
+				+ "        &lt;str name=&quot;presence&quot; val=&quot;1&quot;/&gt;\n"
251
+				+ "        \n"
252
+				+ "      &lt;/obj&gt;\n"
253
+				+ "    </con>\n"
254
+				+ "</m2m:cin>";
255
+		
256
+		HttpEntity <String> entity = new HttpEntity <String> (parameters,headers);
257
+		String url = "http://127.0.0.1:8080/~/in-cse/in-name/Capteur_Mouvement/DATA/";
258
+		
259
+		ResponseEntity respEntity = restTemplate.exchange(url,HttpMethod.POST,entity,String.class);
260
+		String resp = (String) respEntity.getBody();
261
+		return resp;
262
+		*/
263
+		
264
+		
265
+	}
266
+	
267
+	
268
+
269
+	 
270
+     
271
+     
272
+	
273
+	
274
+	
275
+	public static void main(String[] args) {
276
+		SpringApplication.run(ControllerApplication.class, args);
277
+		
278
+	
279
+	}
280
+
281
+}

+ 271
- 0
.metadata/.plugins/org.eclipse.core.resources/.history/67/a038f64a9d47001b1997ad6a8c66f017 View File

@@ -0,0 +1,271 @@
1
+package Services.Controller;
2
+import java.awt.Color;
3
+import java.io.OutputStream;
4
+import java.net.HttpURLConnection;
5
+import java.net.URL;
6
+
7
+import javax.swing.JButton;
8
+import javax.swing.JFrame;
9
+import javax.swing.JPanel;
10
+
11
+import org.springframework.boot.SpringApplication;
12
+import org.springframework.web.client.*;
13
+
14
+
15
+import org.springframework.boot.autoconfigure.SpringBootApplication;
16
+import org.springframework.http.HttpEntity;
17
+import org.springframework.http.HttpHeaders;
18
+import org.springframework.http.HttpMethod;
19
+import org.springframework.http.ResponseEntity;
20
+import org.springframework.web.bind.annotation.GetMapping;
21
+import org.springframework.web.bind.annotation.RequestMapping;
22
+import org.springframework.web.bind.annotation.RestController;
23
+
24
+@RestController
25
+@SpringBootApplication
26
+@RequestMapping("/controller/")
27
+public class ControllerApplication {
28
+	
29
+	private final String captMouvURI = "http://localhost:8081/CaptMouv/";
30
+	private final String captTempURI = "http://localhost:8082/CaptTemp/";
31
+	private final String captCO2URI = "http://localhost:8083/CaptCO2/";
32
+	private final String captHumURI = "http://localhost:8084/";
33
+	private final String automPorteURI = "http://localhost:8085/AutomPorteApplication/";
34
+	private final String automFenetreURI = "http://localhost:8086/AutomFenetreApplication/";
35
+	private final String automLumiereURI = "http://localhost:8087/AutomLumiereApplication/";
36
+	private final String automChauffageURI = "http://localhost:8088/AutomChauffageApplication/";
37
+	private final String simulationURI = "http://localhost:8089/Simulation/";
38
+	
39
+	
40
+	boolean ControlLumiereAutomatique = false;
41
+	boolean PorteFenetreAutomatique_TemperatureCO2 = false;
42
+	boolean PorteFenetreAutomatique_CO2 = false;
43
+	boolean AlarmActivated = false;
44
+	
45
+	
46
+	//Controle de la lumiere automatique
47
+	//Controle en fonction du mouvement
48
+	@GetMapping("isControlLumiereAutomatiqueActivated/")
49
+	private final boolean isControlLumiereAutomatique() {
50
+		return ControlLumiereAutomatique;
51
+	}
52
+	@GetMapping("setControlLumiereAutomatique/")
53
+	private final void setControlLumiereAutomatique(boolean controlLumiereAutomatique) {
54
+		ControlLumiereAutomatique = controlLumiereAutomatique;
55
+	}
56
+	
57
+	//Control de l'ouverture de la porte et fenetre
58
+	//Control en fonction de la temperature et CO2
59
+	@GetMapping("isPorteFenetreAutomatique_TemperatureCO2Activated/")
60
+	private final boolean isPorteFenetreAutomatique_TemperatureCO2() {
61
+		return PorteFenetreAutomatique_TemperatureCO2;
62
+	}
63
+
64
+
65
+	@GetMapping("setPorteFenetreAutomatique_TemperatureCO2/")
66
+	private final void setPorteFenetreAutomatique_TemperatureCO2(boolean porteFenetreAutomatique_TemperatureCO2) {
67
+		PorteFenetreAutomatique_TemperatureCO2 = porteFenetreAutomatique_TemperatureCO2;
68
+	}
69
+	//Controle en fonction du CO2
70
+	@GetMapping("isPorteFenetreAutomatique_CO2Activated/")
71
+	private final boolean isPorteFenetreAutomatique_CO2() {
72
+		return PorteFenetreAutomatique_CO2;
73
+	}
74
+
75
+
76
+	@GetMapping("setPorteFenetreAutomatique_CO2/")
77
+	private final void setPorteFenetreAutomatique_CO2(boolean porteFenetreAutomatique_CO2) {
78
+		PorteFenetreAutomatique_CO2 = porteFenetreAutomatique_CO2;
79
+	}
80
+
81
+
82
+
83
+
84
+	public void ControlLumiereAutomatique() {
85
+		String url_getDetection = captMouvURI + "getDetection/";
86
+		String url_allumerLumiere = automLumiereURI + "setON/?oN=true";
87
+		String url_eteindreLumiere = automLumiereURI + "setON/?oN=false";
88
+		RestTemplate restTemplate = new RestTemplate();
89
+		
90
+		
91
+		//return restTemplate.getForObject(test, String.class);
92
+		
93
+		
94
+		if (restTemplate.getForObject(url_getDetection,boolean.class)) {
95
+			restTemplate.getForObject(url_allumerLumiere,boolean.class);			
96
+		}
97
+		else {
98
+			restTemplate.getForObject(url_eteindreLumiere,boolean.class);
99
+		}
100
+	}
101
+	
102
+	
103
+	public void PorteFenetreAutomatique_TemperatureCO2() {
104
+		String url_getTemp = captTempURI + "getTemp/";
105
+		String url_getCO2 = captCO2URI + "getCO2/";
106
+		String url_setOuvertureFenetre = automFenetreURI + "setOpen/?open=true";
107
+		String url_setFermetureFenetre = automFenetreURI + "setOpen/?open=false";
108
+		String url_setOuverturePorte = automPorteURI + "setOpen/?open=true";
109
+		String url_setFermeturePorte = automPorteURI + "setOpen/?open=false";
110
+		RestTemplate restTemplate = new RestTemplate();
111
+		
112
+		if (((restTemplate.getForObject(url_getTemp,double.class)) > 30) | ((restTemplate.getForObject(url_getCO2,int.class)) > 500)) {
113
+			restTemplate.getForObject(url_setOuvertureFenetre,double.class);
114
+			restTemplate.getForObject(url_setOuverturePorte,double.class);
115
+		}
116
+		else {
117
+			restTemplate.getForObject(url_setFermetureFenetre,double.class);
118
+			restTemplate.getForObject(url_setFermeturePorte,double.class);
119
+		}
120
+		
121
+	}
122
+	
123
+	
124
+	public void PorteFenetreAutomatique_CO2() {
125
+		
126
+		String url_getCO2 = captCO2URI + "getCO2/";
127
+		String url_setOuvertureFenetre = automFenetreURI + "setOpen/?open=true";
128
+		String url_setFermetureFenetre = automFenetreURI + "setOpen/?open=false";
129
+		String url_setOuverturePorte = automPorteURI + "setOpen/?open=true";
130
+		String url_setFermeturePorte = automPorteURI + "setOpen/?open=false";
131
+		RestTemplate restTemplate = new RestTemplate();
132
+		
133
+		if (((restTemplate.getForObject(url_getCO2,int.class)) > 500)) {
134
+			restTemplate.getForObject(url_setOuvertureFenetre,double.class);
135
+			restTemplate.getForObject(url_setOuverturePorte,double.class);
136
+		}
137
+		else {
138
+			restTemplate.getForObject(url_setFermetureFenetre,double.class);
139
+			restTemplate.getForObject(url_setFermeturePorte,double.class);
140
+		}
141
+		
142
+	}
143
+	@GetMapping("getSalleOccupee/")
144
+	public String SalleOccupe() {
145
+		String url_getDetection = captMouvURI + "getDetection/";
146
+		RestTemplate restTemplate = new RestTemplate();
147
+		boolean salle_occupe = restTemplate.getForObject(url_getDetection,boolean.class);
148
+		
149
+		
150
+		return ("La salle est:" + String.valueOf(salle_occupe)) ;
151
+		
152
+	}
153
+	
154
+	@GetMapping("setTemperatureHeatingSystem/")
155
+	public void setTemperatureHeatingSystem(int temp) {
156
+		String url_setTemp = automChauffageURI + "setTemperatureSet/?temperatureSet=" + String.valueOf(temp);
157
+		
158
+		RestTemplate restTemplate = new RestTemplate();
159
+		restTemplate.getForObject(url_setTemp,void.class);
160
+	}
161
+	
162
+	@GetMapping("getHeatingSystemONOFF/")
163
+	public boolean getHeatingSystemONOFF() {
164
+		String url_getONOFF = automChauffageURI + "isActive/";
165
+		
166
+		RestTemplate restTemplate = new RestTemplate();
167
+		return (restTemplate.getForObject(url_getONOFF,boolean.class));
168
+	}
169
+	
170
+	public boolean getMovementDetection() {
171
+		String url_getDetection = captMouvURI + "getDetection/";
172
+		boolean resultat = false;
173
+		RestTemplate restTemplate = new RestTemplate();
174
+		
175
+		return (restTemplate.getForObject(url_getDetection, boolean.class));
176
+		
177
+	
178
+	}
179
+	
180
+	
181
+	@GetMapping("run")
182
+	public int run() throws Exception {
183
+		
184
+		if (ControlLumiereAutomatique) {
185
+			ControlLumiereAutomatique();
186
+		}
187
+		
188
+		if (PorteFenetreAutomatique_TemperatureCO2) {
189
+			PorteFenetreAutomatique_TemperatureCO2();
190
+		}
191
+		
192
+		if (PorteFenetreAutomatique_CO2) {
193
+			PorteFenetreAutomatique_CO2();
194
+		}
195
+		if (AlarmActivated & (getMovementDetection())) {
196
+			//Communication avec OneM2M
197
+			
198
+			RestTemplate restTemplate = new RestTemplate();
199
+			HttpHeaders headers = new HttpHeaders();
200
+			
201
+			headers.set("X-M2M-ORIGIN", "admin:admin");
202
+			headers.set("Content-Type", "application/xml;ty=4");
203
+			//headers.set("Accept", "application/xml");
204
+			String parameters = "	\n"
205
+					+ "<m2m:cin xmlns:m2m=\"http://www.onem2m.org/xml/protocols\">\n"
206
+					+ "    <cnf>message</cnf>\n"
207
+					+ "    <con>\n"
208
+					+ "      &lt;obj&gt;\n"
209
+					+ "        &lt;str name=&quot;data&quot; val=&quot;Mouvement_GEI213&quot;/&gt;\n"
210
+					+ "        \n"
211
+					+ "      &lt;/obj&gt;\n"
212
+					+ "    </con>\n"
213
+					+ "</m2m:cin>";
214
+			
215
+			HttpEntity <String> entity = new HttpEntity <String> (parameters,headers);
216
+			String url = "http://127.0.0.1:8080/~/in-cse/in-name/Alarm_Notification/DATA/";
217
+			
218
+			restTemplate.exchange(url,HttpMethod.POST,entity,String.class);
219
+			
220
+			
221
+			
222
+		}
223
+		
224
+		
225
+		
226
+		return 0;
227
+		//Communication avec OneM2M
228
+		/*
229
+		RestTemplate restTemplate = new RestTemplate();
230
+		HttpHeaders headers = new HttpHeaders();
231
+		
232
+		headers.set("X-M2M-ORIGIN", "admin:admin");
233
+		headers.set("Content-Type", "application/xml;ty=4");
234
+		//headers.set("Accept", "application/xml");
235
+		String parameters = "	\n"
236
+				+ "<m2m:cin xmlns:m2m=\"http://www.onem2m.org/xml/protocols\">\n"
237
+				+ "    <cnf>message</cnf>\n"
238
+				+ "    <con>\n"
239
+				+ "      &lt;obj&gt;\n"
240
+				+ "        &lt;str name=&quot;presence&quot; val=&quot;1&quot;/&gt;\n"
241
+				+ "        \n"
242
+				+ "      &lt;/obj&gt;\n"
243
+				+ "    </con>\n"
244
+				+ "</m2m:cin>";
245
+		
246
+		HttpEntity <String> entity = new HttpEntity <String> (parameters,headers);
247
+		String url = "http://127.0.0.1:8080/~/in-cse/in-name/Capteur_Mouvement/DATA/";
248
+		
249
+		ResponseEntity respEntity = restTemplate.exchange(url,HttpMethod.POST,entity,String.class);
250
+		String resp = (String) respEntity.getBody();
251
+		return resp;
252
+		*/
253
+		
254
+		
255
+	}
256
+	
257
+	
258
+
259
+	 
260
+     
261
+     
262
+	
263
+	
264
+	
265
+	public static void main(String[] args) {
266
+		SpringApplication.run(ControllerApplication.class, args);
267
+		
268
+	
269
+	}
270
+
271
+}

+ 334
- 0
.metadata/.plugins/org.eclipse.core.resources/.history/69/7045b2eff448001b145081b6f5274ba2 View File

@@ -0,0 +1,334 @@
1
+package Services.Controller;
2
+import java.awt.Color;
3
+import java.io.OutputStream;
4
+import java.net.HttpURLConnection;
5
+import java.net.URL;
6
+
7
+import javax.swing.JButton;
8
+import javax.swing.JFrame;
9
+import javax.swing.JPanel;
10
+
11
+import org.springframework.boot.SpringApplication;
12
+import org.springframework.web.client.*;
13
+
14
+
15
+import org.springframework.boot.autoconfigure.SpringBootApplication;
16
+import org.springframework.http.HttpEntity;
17
+import org.springframework.http.HttpHeaders;
18
+import org.springframework.http.HttpMethod;
19
+import org.springframework.http.ResponseEntity;
20
+import org.springframework.web.bind.annotation.GetMapping;
21
+import org.springframework.web.bind.annotation.RequestMapping;
22
+import org.springframework.web.bind.annotation.RestController;
23
+
24
+@RestController
25
+@SpringBootApplication
26
+@RequestMapping("/controller/")
27
+public class ControllerApplication {
28
+	
29
+	private final String captMouvURI = "http://localhost:8081/CaptMouv/";
30
+	private final String captTempURI = "http://localhost:8082/CaptTemp/";
31
+	private final String captCO2URI = "http://localhost:8083/CaptCO2/";
32
+	private final String captHumURI = "http://localhost:8084/";
33
+	private final String automPorteURI = "http://localhost:8085/AutomPorteApplication/";
34
+	private final String automFenetreURI = "http://localhost:8086/AutomFenetreApplication/";
35
+	private final String automLumiereURI = "http://localhost:8087/AutomLumiereApplication/";
36
+	private final String automChauffageURI = "http://localhost:8088/AutomChauffageApplication/";
37
+	private final String simulationURI = "http://localhost:8089/Simulation/";
38
+	
39
+	
40
+	boolean ControlLumiereAutomatique = false;
41
+	boolean PorteFenetreAutomatique_TemperatureCO2 = false;
42
+	boolean PorteFenetreAutomatique_CO2 = false;
43
+	boolean MouvementAlarmActivated = false;
44
+	boolean TemperatureAlarmActivated = false;
45
+	boolean CO2AlarmActivated = false;
46
+	
47
+	
48
+	//Controle de la lumiere automatique
49
+	//Controle en fonction du mouvement
50
+	@GetMapping("isControlLumiereAutomatiqueActivated/")
51
+	private final boolean isControlLumiereAutomatique() {
52
+		return ControlLumiereAutomatique;
53
+	}
54
+	@GetMapping("setControlLumiereAutomatique/")
55
+	private final void setControlLumiereAutomatique(boolean controlLumiereAutomatique) {
56
+		ControlLumiereAutomatique = controlLumiereAutomatique;
57
+	}
58
+	
59
+	//Control de l'ouverture de la porte et fenetre
60
+	//Control en fonction de la temperature et CO2
61
+	@GetMapping("isPorteFenetreAutomatique_TemperatureCO2Activated/")
62
+	private final boolean isPorteFenetreAutomatique_TemperatureCO2() {
63
+		return PorteFenetreAutomatique_TemperatureCO2;
64
+	}
65
+
66
+
67
+	@GetMapping("setPorteFenetreAutomatique_TemperatureCO2/")
68
+	private final void setPorteFenetreAutomatique_TemperatureCO2(boolean porteFenetreAutomatique_TemperatureCO2) {
69
+		PorteFenetreAutomatique_TemperatureCO2 = porteFenetreAutomatique_TemperatureCO2;
70
+	}
71
+	//Controle en fonction du CO2
72
+	@GetMapping("isPorteFenetreAutomatique_CO2Activated/")
73
+	private final boolean isPorteFenetreAutomatique_CO2() {
74
+		return PorteFenetreAutomatique_CO2;
75
+	}
76
+
77
+
78
+	@GetMapping("setPorteFenetreAutomatique_CO2/")
79
+	private final void setPorteFenetreAutomatique_CO2(boolean porteFenetreAutomatique_CO2) {
80
+		PorteFenetreAutomatique_CO2 = porteFenetreAutomatique_CO2;
81
+	}
82
+
83
+
84
+
85
+
86
+	public void ControlLumiereAutomatique() {
87
+		String url_getDetection = captMouvURI + "getDetection/";
88
+		String url_allumerLumiere = automLumiereURI + "setON/?oN=true";
89
+		String url_eteindreLumiere = automLumiereURI + "setON/?oN=false";
90
+		RestTemplate restTemplate = new RestTemplate();
91
+		
92
+		
93
+		//return restTemplate.getForObject(test, String.class);
94
+		
95
+		
96
+		if (restTemplate.getForObject(url_getDetection,boolean.class)) {
97
+			restTemplate.getForObject(url_allumerLumiere,boolean.class);			
98
+		}
99
+		else {
100
+			restTemplate.getForObject(url_eteindreLumiere,boolean.class);
101
+		}
102
+	}
103
+	
104
+	
105
+	public void PorteFenetreAutomatique_TemperatureCO2() {
106
+		String url_getTemp = captTempURI + "getTemp/";
107
+		String url_getCO2 = captCO2URI + "getCO2/";
108
+		String url_setOuvertureFenetre = automFenetreURI + "setOpen/?open=true";
109
+		String url_setFermetureFenetre = automFenetreURI + "setOpen/?open=false";
110
+		String url_setOuverturePorte = automPorteURI + "setOpen/?open=true";
111
+		String url_setFermeturePorte = automPorteURI + "setOpen/?open=false";
112
+		RestTemplate restTemplate = new RestTemplate();
113
+		
114
+		if (((restTemplate.getForObject(url_getTemp,double.class)) > 30) | ((restTemplate.getForObject(url_getCO2,int.class)) > 500)) {
115
+			restTemplate.getForObject(url_setOuvertureFenetre,double.class);
116
+			restTemplate.getForObject(url_setOuverturePorte,double.class);
117
+		}
118
+		else {
119
+			restTemplate.getForObject(url_setFermetureFenetre,double.class);
120
+			restTemplate.getForObject(url_setFermeturePorte,double.class);
121
+		}
122
+		
123
+	}
124
+	
125
+	
126
+	public void PorteFenetreAutomatique_CO2() {
127
+		
128
+		String url_getCO2 = captCO2URI + "getCO2/";
129
+		String url_setOuvertureFenetre = automFenetreURI + "setOpen/?open=true";
130
+		String url_setFermetureFenetre = automFenetreURI + "setOpen/?open=false";
131
+		String url_setOuverturePorte = automPorteURI + "setOpen/?open=true";
132
+		String url_setFermeturePorte = automPorteURI + "setOpen/?open=false";
133
+		RestTemplate restTemplate = new RestTemplate();
134
+		
135
+		if (((restTemplate.getForObject(url_getCO2,int.class)) > 500)) {
136
+			restTemplate.getForObject(url_setOuvertureFenetre,double.class);
137
+			restTemplate.getForObject(url_setOuverturePorte,double.class);
138
+		}
139
+		else {
140
+			restTemplate.getForObject(url_setFermetureFenetre,double.class);
141
+			restTemplate.getForObject(url_setFermeturePorte,double.class);
142
+		}
143
+		
144
+	}
145
+	@GetMapping("getSalleOccupee/")
146
+	public String SalleOccupe() {
147
+		String url_getDetection = captMouvURI + "getDetection/";
148
+		RestTemplate restTemplate = new RestTemplate();
149
+		boolean salle_occupe = restTemplate.getForObject(url_getDetection,boolean.class);
150
+		
151
+		
152
+		return ("La salle est:" + String.valueOf(salle_occupe)) ;
153
+		
154
+	}
155
+	
156
+	@GetMapping("setTemperatureHeatingSystem/")
157
+	public void setTemperatureHeatingSystem(int temp) {
158
+		String url_setTemp = automChauffageURI + "setTemperatureSet/?temperatureSet=" + String.valueOf(temp);
159
+		
160
+		RestTemplate restTemplate = new RestTemplate();
161
+		restTemplate.getForObject(url_setTemp,void.class);
162
+	}
163
+	
164
+	@GetMapping("getHeatingSystemONOFF/")
165
+	public boolean getHeatingSystemONOFF() {
166
+		String url_getONOFF = automChauffageURI + "isActive/";
167
+		
168
+		RestTemplate restTemplate = new RestTemplate();
169
+		return (restTemplate.getForObject(url_getONOFF,boolean.class));
170
+	}
171
+	
172
+	public boolean getMovementDetection() {
173
+		String url_getDetection = captMouvURI + "getDetection/";
174
+		boolean resultat = false;
175
+		RestTemplate restTemplate = new RestTemplate();
176
+		
177
+		return (restTemplate.getForObject(url_getDetection, boolean.class));
178
+		
179
+	}
180
+	
181
+	@GetMapping("getTemperatureAlarm/")
182
+	public boolean getTemperatureAlarm() {
183
+		return (TemperatureAlarmActivated);
184
+	}
185
+	@GetMapping("setTemperatureAlarm/")
186
+	public void setTemperatureAlarm(boolean active) {
187
+		TemperatureAlarmActivated = active;
188
+	}
189
+	
190
+	@GetMapping("setMouvementAlarm/")
191
+	public void setMouvementAlarm(boolean active) {
192
+		MouvementAlarmActivated = active;
193
+	}
194
+	
195
+	@GetMapping("setCO2Alarm/")
196
+	public void setCO2Alarm(boolean active) {
197
+		CO2AlarmActivated = active;
198
+	}
199
+	
200
+	
201
+	
202
+	
203
+	@GetMapping("run")
204
+	public int run() throws Exception {
205
+		
206
+		if (ControlLumiereAutomatique) {
207
+			ControlLumiereAutomatique();
208
+		}
209
+		
210
+		if (PorteFenetreAutomatique_TemperatureCO2) {
211
+			PorteFenetreAutomatique_TemperatureCO2();
212
+		}
213
+		
214
+		if (PorteFenetreAutomatique_CO2) {
215
+			PorteFenetreAutomatique_CO2();
216
+		}
217
+		
218
+		//Notification de mouvement Alarm
219
+		if (MouvementAlarmActivated & (getMovementDetection())) {
220
+			//Communication avec OneM2M
221
+			
222
+			RestTemplate restTemplate = new RestTemplate();
223
+			HttpHeaders headers = new HttpHeaders();
224
+			
225
+			headers.set("X-M2M-ORIGIN", "admin:admin");
226
+			headers.set("Content-Type", "application/xml;ty=4");
227
+			//headers.set("Accept", "application/xml");
228
+			String parameters = "	\n"
229
+					+ "<m2m:cin xmlns:m2m=\"http://www.onem2m.org/xml/protocols\">\n"
230
+					+ "    <cnf>message</cnf>\n"
231
+					+ "    <con>\n"
232
+					+ "      &lt;obj&gt;\n"
233
+					+ "        &lt;str name=&quot;data&quot; val=&quot;Mouvement_GEI213&quot;/&gt;\n"
234
+					+ "        \n"
235
+					+ "      &lt;/obj&gt;\n"
236
+					+ "    </con>\n"
237
+					+ "</m2m:cin>";
238
+			
239
+			HttpEntity <String> entity = new HttpEntity <String> (parameters,headers);
240
+			String url = "http://127.0.0.1:8080/~/in-cse/in-name/Alarm_Notification/DATA/";
241
+			
242
+			restTemplate.exchange(url,HttpMethod.POST,entity,String.class);
243
+			
244
+		}
245
+		
246
+		//Notification temperature elevée
247
+		if (TemperatureAlarmActivated) {
248
+			String url_getTemp = captTempURI + "getTemp/";
249
+			int temp;
250
+			//Communication avec OneM2M
251
+			
252
+			RestTemplate restTemplate = new RestTemplate();
253
+			temp = restTemplate.getForObject(url_getTemp,int.class);
254
+			if ((temp > 35) | (temp<15)) {
255
+			HttpHeaders headers = new HttpHeaders();
256
+			
257
+			headers.set("X-M2M-ORIGIN", "admin:admin");
258
+			headers.set("Content-Type", "application/xml;ty=4");
259
+			//headers.set("Accept", "application/xml");
260
+			String parameters = "	\n"
261
+					+ "<m2m:cin xmlns:m2m=\"http://www.onem2m.org/xml/protocols\">\n"
262
+					+ "    <cnf>message</cnf>\n"
263
+					+ "    <con>\n"
264
+					+ "      &lt;obj&gt;\n"
265
+					+ "        &lt;str name=&quot;location&quot; val=&quot;GEI213&quot;/&gt;\n"
266
+					+ "			&lt;str name=&quot;data&quot; val=&quot;" + String.valueOf(temp) +"&quot;/&gt;\n"
267
+					+ "        \n"
268
+					+ "      &lt;/obj&gt;\n"
269
+					+ "    </con>\n"
270
+					+ "</m2m:cin>";
271
+			
272
+			HttpEntity <String> entity = new HttpEntity <String> (parameters,headers);
273
+			String url = "http://127.0.0.1:8080/~/in-cse/in-name/Alarm_Temperature/DATA/";
274
+			
275
+			restTemplate.exchange(url,HttpMethod.POST,entity,String.class);
276
+			}
277
+		}
278
+			
279
+			//Notification CO2 elevée
280
+			if (CO2AlarmActivated) {
281
+				String url_getCO2 = captCO2URI + "getCO2/";
282
+				double CO2;
283
+				//Communication avec OneM2M
284
+				
285
+				RestTemplate restTemplate = new RestTemplate();
286
+				CO2 = restTemplate.getForObject(url_getCO2,double.class);
287
+				if (CO2 > 1000) {
288
+				HttpHeaders headers = new HttpHeaders();
289
+				
290
+				headers.set("X-M2M-ORIGIN", "admin:admin");
291
+				headers.set("Content-Type", "application/xml;ty=4");
292
+				//headers.set("Accept", "application/xml");
293
+				String parameters = "	\n"
294
+						+ "<m2m:cin xmlns:m2m=\"http://www.onem2m.org/xml/protocols\">\n"
295
+						+ "    <cnf>message</cnf>\n"
296
+						+ "    <con>\n"
297
+						+ "      &lt;obj&gt;\n"
298
+						+ "        &lt;str name=&quot;location&quot; val=&quot;GEI213&quot;/&gt;\n"
299
+						+ "			&lt;str name=&quot;data&quot; val=&quot;" + String.valueOf(CO2) +"&quot;/&gt;\n"
300
+						+ "        \n"
301
+						+ "      &lt;/obj&gt;\n"
302
+						+ "    </con>\n"
303
+						+ "</m2m:cin>";
304
+				
305
+				HttpEntity <String> entity = new HttpEntity <String> (parameters,headers);
306
+				String url = "http://127.0.0.1:8080/~/in-cse/in-name/Alarm_CO2/DATA/";
307
+				
308
+				restTemplate.exchange(url,HttpMethod.POST,entity,String.class);
309
+				}
310
+		}
311
+		
312
+		
313
+		
314
+		return 0;
315
+		
316
+		
317
+		
318
+	}
319
+	
320
+	
321
+
322
+	 
323
+     
324
+     
325
+	
326
+	
327
+	
328
+	public static void main(String[] args) {
329
+		SpringApplication.run(ControllerApplication.class, args);
330
+		
331
+	
332
+	}
333
+
334
+}

+ 225
- 0
.metadata/.plugins/org.eclipse.core.resources/.history/8/108d1eef9847001b1997ad6a8c66f017 View File

@@ -0,0 +1,225 @@
1
+package Services.Controller;
2
+import java.awt.Color;
3
+import java.io.OutputStream;
4
+import java.net.HttpURLConnection;
5
+import java.net.URL;
6
+
7
+import javax.swing.JButton;
8
+import javax.swing.JFrame;
9
+import javax.swing.JPanel;
10
+
11
+import org.springframework.boot.SpringApplication;
12
+import org.springframework.web.client.*;
13
+
14
+
15
+import org.springframework.boot.autoconfigure.SpringBootApplication;
16
+import org.springframework.http.HttpEntity;
17
+import org.springframework.http.HttpHeaders;
18
+import org.springframework.http.HttpMethod;
19
+import org.springframework.http.ResponseEntity;
20
+import org.springframework.web.bind.annotation.GetMapping;
21
+import org.springframework.web.bind.annotation.RequestMapping;
22
+import org.springframework.web.bind.annotation.RestController;
23
+
24
+@RestController
25
+@SpringBootApplication
26
+@RequestMapping("/controller/")
27
+public class ControllerApplication {
28
+	
29
+	private final String captMouvURI = "http://localhost:8081/CaptMouv/";
30
+	private final String captTempURI = "http://localhost:8082/CaptTemp/";
31
+	private final String captCO2URI = "http://localhost:8083/CaptCO2/";
32
+	private final String captHumURI = "http://localhost:8084/";
33
+	private final String automPorteURI = "http://localhost:8085/AutomPorteApplication/";
34
+	private final String automFenetreURI = "http://localhost:8086/AutomFenetreApplication/";
35
+	private final String automLumiereURI = "http://localhost:8087/AutomLumiereApplication/";
36
+	private final String automChauffageURI = "http://localhost:8088/AutomChauffageApplication/";
37
+	private final String simulationURI = "http://localhost:8089/Simulation/";
38
+	
39
+	
40
+	boolean ControlLumiereAutomatique = false;
41
+	boolean PorteFenetreAutomatique_TemperatureCO2 = false;
42
+	boolean PorteFenetreAutomatique_CO2 = false;
43
+	
44
+	
45
+	
46
+	//Controle de la lumiere automatique
47
+	//Controle en fonction du mouvement
48
+	@GetMapping("isControlLumiereAutomatiqueActivated/")
49
+	private final boolean isControlLumiereAutomatique() {
50
+		return ControlLumiereAutomatique;
51
+	}
52
+	@GetMapping("setControlLumiereAutomatique/")
53
+	private final void setControlLumiereAutomatique(boolean controlLumiereAutomatique) {
54
+		ControlLumiereAutomatique = controlLumiereAutomatique;
55
+	}
56
+	
57
+	//Control de l'ouverture de la porte et fenetre
58
+	//Control en fonction de la temperature et CO2
59
+	@GetMapping("isPorteFenetreAutomatique_TemperatureCO2Activated/")
60
+	private final boolean isPorteFenetreAutomatique_TemperatureCO2() {
61
+		return PorteFenetreAutomatique_TemperatureCO2;
62
+	}
63
+
64
+
65
+	@GetMapping("setPorteFenetreAutomatique_TemperatureCO2/")
66
+	private final void setPorteFenetreAutomatique_TemperatureCO2(boolean porteFenetreAutomatique_TemperatureCO2) {
67
+		PorteFenetreAutomatique_TemperatureCO2 = porteFenetreAutomatique_TemperatureCO2;
68
+	}
69
+	//Controle en fonction du CO2
70
+	@GetMapping("isPorteFenetreAutomatique_CO2Activated/")
71
+	private final boolean isPorteFenetreAutomatique_CO2() {
72
+		return PorteFenetreAutomatique_CO2;
73
+	}
74
+
75
+
76
+	@GetMapping("setPorteFenetreAutomatique_CO2/")
77
+	private final void setPorteFenetreAutomatique_CO2(boolean porteFenetreAutomatique_CO2) {
78
+		PorteFenetreAutomatique_CO2 = porteFenetreAutomatique_CO2;
79
+	}
80
+
81
+
82
+
83
+
84
+	public void ControlLumiereAutomatique() {
85
+		String url_getDetection = captMouvURI + "getDetection/";
86
+		String url_allumerLumiere = automLumiereURI + "setON/?oN=true";
87
+		String url_eteindreLumiere = automLumiereURI + "setON/?oN=false";
88
+		RestTemplate restTemplate = new RestTemplate();
89
+		
90
+		
91
+		//return restTemplate.getForObject(test, String.class);
92
+		
93
+		
94
+		if (restTemplate.getForObject(url_getDetection,boolean.class)) {
95
+			restTemplate.getForObject(url_allumerLumiere,boolean.class);			
96
+		}
97
+		else {
98
+			restTemplate.getForObject(url_eteindreLumiere,boolean.class);
99
+		}
100
+	}
101
+	
102
+	
103
+	public void PorteFenetreAutomatique_TemperatureCO2() {
104
+		String url_getTemp = captTempURI + "getTemp/";
105
+		String url_getCO2 = captCO2URI + "getCO2/";
106
+		String url_setOuvertureFenetre = automFenetreURI + "setOpen/?open=true";
107
+		String url_setFermetureFenetre = automFenetreURI + "setOpen/?open=false";
108
+		String url_setOuverturePorte = automPorteURI + "setOpen/?open=true";
109
+		String url_setFermeturePorte = automPorteURI + "setOpen/?open=false";
110
+		RestTemplate restTemplate = new RestTemplate();
111
+		
112
+		if (((restTemplate.getForObject(url_getTemp,double.class)) > 30) | ((restTemplate.getForObject(url_getCO2,int.class)) > 500)) {
113
+			restTemplate.getForObject(url_setOuvertureFenetre,double.class);
114
+			restTemplate.getForObject(url_setOuverturePorte,double.class);
115
+		}
116
+		else {
117
+			restTemplate.getForObject(url_setFermetureFenetre,double.class);
118
+			restTemplate.getForObject(url_setFermeturePorte,double.class);
119
+		}
120
+		
121
+	}
122
+	
123
+	
124
+	public void PorteFenetreAutomatique_CO2() {
125
+		
126
+		String url_getCO2 = captCO2URI + "getCO2/";
127
+		String url_setOuvertureFenetre = automFenetreURI + "setOpen/?open=true";
128
+		String url_setFermetureFenetre = automFenetreURI + "setOpen/?open=false";
129
+		String url_setOuverturePorte = automPorteURI + "setOpen/?open=true";
130
+		String url_setFermeturePorte = automPorteURI + "setOpen/?open=false";
131
+		RestTemplate restTemplate = new RestTemplate();
132
+		
133
+		if (((restTemplate.getForObject(url_getCO2,int.class)) > 500)) {
134
+			restTemplate.getForObject(url_setOuvertureFenetre,double.class);
135
+			restTemplate.getForObject(url_setOuverturePorte,double.class);
136
+		}
137
+		else {
138
+			restTemplate.getForObject(url_setFermetureFenetre,double.class);
139
+			restTemplate.getForObject(url_setFermeturePorte,double.class);
140
+		}
141
+		
142
+	}
143
+	@GetMapping("getSalleOccupee/")
144
+	public String SalleOccupe() {
145
+		String url_getDetection = captMouvURI + "getDetection/";
146
+		RestTemplate restTemplate = new RestTemplate();
147
+		boolean salle_occupe = restTemplate.getForObject(url_getDetection,boolean.class);
148
+		
149
+		
150
+		return ("La salle est:" + String.valueOf(salle_occupe)) ;
151
+		
152
+	}
153
+	
154
+	@GetMapping("setTemperatureHeatingSystem/")
155
+	public void setTemperatureHeatingSystem(double temp) {
156
+		String url_setTemp = automChauffageURI + "setTemperatureSet/";
157
+		
158
+		RestTemplate restTemplate = new RestTemplate();
159
+		restTemplate.getForObject(url_setTemp,void.class);
160
+	}
161
+	
162
+	
163
+	@GetMapping("run")
164
+	public int run() throws Exception {
165
+		/*
166
+		if (ControlLumiereAutomatique) {
167
+			ControlLumiereAutomatique();
168
+		}
169
+		
170
+		if (PorteFenetreAutomatique_TemperatureCO2) {
171
+			PorteFenetreAutomatique_TemperatureCO2();
172
+		}
173
+		
174
+		if (PorteFenetreAutomatique_CO2) {
175
+			PorteFenetreAutomatique_CO2();
176
+		}
177
+		*/
178
+		
179
+		
180
+		return 0;
181
+		//Communication avec OneM2M
182
+		/*
183
+		RestTemplate restTemplate = new RestTemplate();
184
+		HttpHeaders headers = new HttpHeaders();
185
+		
186
+		headers.set("X-M2M-ORIGIN", "admin:admin");
187
+		headers.set("Content-Type", "application/xml;ty=4");
188
+		//headers.set("Accept", "application/xml");
189
+		String parameters = "	\n"
190
+				+ "<m2m:cin xmlns:m2m=\"http://www.onem2m.org/xml/protocols\">\n"
191
+				+ "    <cnf>message</cnf>\n"
192
+				+ "    <con>\n"
193
+				+ "      &lt;obj&gt;\n"
194
+				+ "        &lt;str name=&quot;presence&quot; val=&quot;1&quot;/&gt;\n"
195
+				+ "        \n"
196
+				+ "      &lt;/obj&gt;\n"
197
+				+ "    </con>\n"
198
+				+ "</m2m:cin>";
199
+		
200
+		HttpEntity <String> entity = new HttpEntity <String> (parameters,headers);
201
+		String url = "http://127.0.0.1:8080/~/in-cse/in-name/Capteur_Mouvement/DATA/";
202
+		
203
+		ResponseEntity respEntity = restTemplate.exchange(url,HttpMethod.POST,entity,String.class);
204
+		String resp = (String) respEntity.getBody();
205
+		return resp;
206
+		*/
207
+		
208
+		
209
+	}
210
+	
211
+	
212
+
213
+	 
214
+     
215
+     
216
+	
217
+	
218
+	
219
+	public static void main(String[] args) {
220
+		SpringApplication.run(ControllerApplication.class, args);
221
+		
222
+	
223
+	}
224
+
225
+}

+ 314
- 0
.metadata/.plugins/org.eclipse.core.resources/.history/80/e0f2dc6ea247001b1997ad6a8c66f017 View File

@@ -0,0 +1,314 @@
1
+package Services.Controller;
2
+import java.awt.Color;
3
+import java.io.OutputStream;
4
+import java.net.HttpURLConnection;
5
+import java.net.URL;
6
+
7
+import javax.swing.JButton;
8
+import javax.swing.JFrame;
9
+import javax.swing.JPanel;
10
+
11
+import org.springframework.boot.SpringApplication;
12
+import org.springframework.web.client.*;
13
+
14
+
15
+import org.springframework.boot.autoconfigure.SpringBootApplication;
16
+import org.springframework.http.HttpEntity;
17
+import org.springframework.http.HttpHeaders;
18
+import org.springframework.http.HttpMethod;
19
+import org.springframework.http.ResponseEntity;
20
+import org.springframework.web.bind.annotation.GetMapping;
21
+import org.springframework.web.bind.annotation.RequestMapping;
22
+import org.springframework.web.bind.annotation.RestController;
23
+
24
+@RestController
25
+@SpringBootApplication
26
+@RequestMapping("/controller/")
27
+public class ControllerApplication {
28
+	
29
+	private final String captMouvURI = "http://localhost:8081/CaptMouv/";
30
+	private final String captTempURI = "http://localhost:8082/CaptTemp/";
31
+	private final String captCO2URI = "http://localhost:8083/CaptCO2/";
32
+	private final String captHumURI = "http://localhost:8084/";
33
+	private final String automPorteURI = "http://localhost:8085/AutomPorteApplication/";
34
+	private final String automFenetreURI = "http://localhost:8086/AutomFenetreApplication/";
35
+	private final String automLumiereURI = "http://localhost:8087/AutomLumiereApplication/";
36
+	private final String automChauffageURI = "http://localhost:8088/AutomChauffageApplication/";
37
+	private final String simulationURI = "http://localhost:8089/Simulation/";
38
+	
39
+	
40
+	boolean ControlLumiereAutomatique = false;
41
+	boolean PorteFenetreAutomatique_TemperatureCO2 = false;
42
+	boolean PorteFenetreAutomatique_CO2 = false;
43
+	boolean MouvementAlarmActivated = false;
44
+	boolean TemperatureAlarmActivated = false;
45
+	
46
+	
47
+	//Controle de la lumiere automatique
48
+	//Controle en fonction du mouvement
49
+	@GetMapping("isControlLumiereAutomatiqueActivated/")
50
+	private final boolean isControlLumiereAutomatique() {
51
+		return ControlLumiereAutomatique;
52
+	}
53
+	@GetMapping("setControlLumiereAutomatique/")
54
+	private final void setControlLumiereAutomatique(boolean controlLumiereAutomatique) {
55
+		ControlLumiereAutomatique = controlLumiereAutomatique;
56
+	}
57
+	
58
+	//Control de l'ouverture de la porte et fenetre
59
+	//Control en fonction de la temperature et CO2
60
+	@GetMapping("isPorteFenetreAutomatique_TemperatureCO2Activated/")
61
+	private final boolean isPorteFenetreAutomatique_TemperatureCO2() {
62
+		return PorteFenetreAutomatique_TemperatureCO2;
63
+	}
64
+
65
+
66
+	@GetMapping("setPorteFenetreAutomatique_TemperatureCO2/")
67
+	private final void setPorteFenetreAutomatique_TemperatureCO2(boolean porteFenetreAutomatique_TemperatureCO2) {
68
+		PorteFenetreAutomatique_TemperatureCO2 = porteFenetreAutomatique_TemperatureCO2;
69
+	}
70
+	//Controle en fonction du CO2
71
+	@GetMapping("isPorteFenetreAutomatique_CO2Activated/")
72
+	private final boolean isPorteFenetreAutomatique_CO2() {
73
+		return PorteFenetreAutomatique_CO2;
74
+	}
75
+
76
+
77
+	@GetMapping("setPorteFenetreAutomatique_CO2/")
78
+	private final void setPorteFenetreAutomatique_CO2(boolean porteFenetreAutomatique_CO2) {
79
+		PorteFenetreAutomatique_CO2 = porteFenetreAutomatique_CO2;
80
+	}
81
+
82
+
83
+
84
+
85
+	public void ControlLumiereAutomatique() {
86
+		String url_getDetection = captMouvURI + "getDetection/";
87
+		String url_allumerLumiere = automLumiereURI + "setON/?oN=true";
88
+		String url_eteindreLumiere = automLumiereURI + "setON/?oN=false";
89
+		RestTemplate restTemplate = new RestTemplate();
90
+		
91
+		
92
+		//return restTemplate.getForObject(test, String.class);
93
+		
94
+		
95
+		if (restTemplate.getForObject(url_getDetection,boolean.class)) {
96
+			restTemplate.getForObject(url_allumerLumiere,boolean.class);			
97
+		}
98
+		else {
99
+			restTemplate.getForObject(url_eteindreLumiere,boolean.class);
100
+		}
101
+	}
102
+	
103
+	
104
+	public void PorteFenetreAutomatique_TemperatureCO2() {
105
+		String url_getTemp = captTempURI + "getTemp/";
106
+		String url_getCO2 = captCO2URI + "getCO2/";
107
+		String url_setOuvertureFenetre = automFenetreURI + "setOpen/?open=true";
108
+		String url_setFermetureFenetre = automFenetreURI + "setOpen/?open=false";
109
+		String url_setOuverturePorte = automPorteURI + "setOpen/?open=true";
110
+		String url_setFermeturePorte = automPorteURI + "setOpen/?open=false";
111
+		RestTemplate restTemplate = new RestTemplate();
112
+		
113
+		if (((restTemplate.getForObject(url_getTemp,double.class)) > 30) | ((restTemplate.getForObject(url_getCO2,int.class)) > 500)) {
114
+			restTemplate.getForObject(url_setOuvertureFenetre,double.class);
115
+			restTemplate.getForObject(url_setOuverturePorte,double.class);
116
+		}
117
+		else {
118
+			restTemplate.getForObject(url_setFermetureFenetre,double.class);
119
+			restTemplate.getForObject(url_setFermeturePorte,double.class);
120
+		}
121
+		
122
+	}
123
+	
124
+	
125
+	public void PorteFenetreAutomatique_CO2() {
126
+		
127
+		String url_getCO2 = captCO2URI + "getCO2/";
128
+		String url_setOuvertureFenetre = automFenetreURI + "setOpen/?open=true";
129
+		String url_setFermetureFenetre = automFenetreURI + "setOpen/?open=false";
130
+		String url_setOuverturePorte = automPorteURI + "setOpen/?open=true";
131
+		String url_setFermeturePorte = automPorteURI + "setOpen/?open=false";
132
+		RestTemplate restTemplate = new RestTemplate();
133
+		
134
+		if (((restTemplate.getForObject(url_getCO2,int.class)) > 500)) {
135
+			restTemplate.getForObject(url_setOuvertureFenetre,double.class);
136
+			restTemplate.getForObject(url_setOuverturePorte,double.class);
137
+		}
138
+		else {
139
+			restTemplate.getForObject(url_setFermetureFenetre,double.class);
140
+			restTemplate.getForObject(url_setFermeturePorte,double.class);
141
+		}
142
+		
143
+	}
144
+	@GetMapping("getSalleOccupee/")
145
+	public String SalleOccupe() {
146
+		String url_getDetection = captMouvURI + "getDetection/";
147
+		RestTemplate restTemplate = new RestTemplate();
148
+		boolean salle_occupe = restTemplate.getForObject(url_getDetection,boolean.class);
149
+		
150
+		
151
+		return ("La salle est:" + String.valueOf(salle_occupe)) ;
152
+		
153
+	}
154
+	
155
+	@GetMapping("setTemperatureHeatingSystem/")
156
+	public void setTemperatureHeatingSystem(int temp) {
157
+		String url_setTemp = automChauffageURI + "setTemperatureSet/?temperatureSet=" + String.valueOf(temp);
158
+		
159
+		RestTemplate restTemplate = new RestTemplate();
160
+		restTemplate.getForObject(url_setTemp,void.class);
161
+	}
162
+	
163
+	@GetMapping("getHeatingSystemONOFF/")
164
+	public boolean getHeatingSystemONOFF() {
165
+		String url_getONOFF = automChauffageURI + "isActive/";
166
+		
167
+		RestTemplate restTemplate = new RestTemplate();
168
+		return (restTemplate.getForObject(url_getONOFF,boolean.class));
169
+	}
170
+	
171
+	public boolean getMovementDetection() {
172
+		String url_getDetection = captMouvURI + "getDetection/";
173
+		boolean resultat = false;
174
+		RestTemplate restTemplate = new RestTemplate();
175
+		
176
+		return (restTemplate.getForObject(url_getDetection, boolean.class));
177
+		
178
+	}
179
+	
180
+	@GetMapping("setTemperatureAlarm/")
181
+	public void setTemperatureAlarm(boolean active) {
182
+		TemperatureAlarmActivated = active;
183
+	}
184
+	
185
+	@GetMapping("setMouvementAlarm/")
186
+	public void setMouvementAlarm(boolean active) {
187
+		MouvementAlarmActivated = active;
188
+	}
189
+	
190
+	
191
+	@GetMapping("run")
192
+	public int run() throws Exception {
193
+		
194
+		if (ControlLumiereAutomatique) {
195
+			ControlLumiereAutomatique();
196
+		}
197
+		
198
+		if (PorteFenetreAutomatique_TemperatureCO2) {
199
+			PorteFenetreAutomatique_TemperatureCO2();
200
+		}
201
+		
202
+		if (PorteFenetreAutomatique_CO2) {
203
+			PorteFenetreAutomatique_CO2();
204
+		}
205
+		
206
+		//Notification de mouvement Alarm
207
+		if (MouvementAlarmActivated & (getMovementDetection())) {
208
+			//Communication avec OneM2M
209
+			
210
+			RestTemplate restTemplate = new RestTemplate();
211
+			HttpHeaders headers = new HttpHeaders();
212
+			
213
+			headers.set("X-M2M-ORIGIN", "admin:admin");
214
+			headers.set("Content-Type", "application/xml;ty=4");
215
+			//headers.set("Accept", "application/xml");
216
+			String parameters = "	\n"
217
+					+ "<m2m:cin xmlns:m2m=\"http://www.onem2m.org/xml/protocols\">\n"
218
+					+ "    <cnf>message</cnf>\n"
219
+					+ "    <con>\n"
220
+					+ "      &lt;obj&gt;\n"
221
+					+ "        &lt;str name=&quot;data&quot; val=&quot;Mouvement_GEI213&quot;/&gt;\n"
222
+					+ "        \n"
223
+					+ "      &lt;/obj&gt;\n"
224
+					+ "    </con>\n"
225
+					+ "</m2m:cin>";
226
+			
227
+			HttpEntity <String> entity = new HttpEntity <String> (parameters,headers);
228
+			String url = "http://127.0.0.1:8080/~/in-cse/in-name/Alarm_Notification/DATA/";
229
+			
230
+			restTemplate.exchange(url,HttpMethod.POST,entity,String.class);
231
+			
232
+		}
233
+		
234
+		//Notification temperature elevée
235
+		if (TemperatureAlarmActivated) {
236
+			String url_getTemp = captTempURI + "getTemp/";
237
+			int temp;
238
+			//Communication avec OneM2M
239
+			
240
+			RestTemplate restTemplate = new RestTemplate();
241
+			temp = restTemplate.getForObject(url_getTemp,int.class);
242
+			if ((temp > 35) | (temp<15)) {
243
+			HttpHeaders headers = new HttpHeaders();
244
+			
245
+			headers.set("X-M2M-ORIGIN", "admin:admin");
246
+			headers.set("Content-Type", "application/xml;ty=4");
247
+			//headers.set("Accept", "application/xml");
248
+			String parameters = "	\n"
249
+					+ "<m2m:cin xmlns:m2m=\"http://www.onem2m.org/xml/protocols\">\n"
250
+					+ "    <cnf>message</cnf>\n"
251
+					+ "    <con>\n"
252
+					+ "      &lt;obj&gt;\n"
253
+					+ "        &lt;str name=&quot;location&quot; val=&quot;GEI213&quot;/&gt;\n"
254
+					+ "			&lt;str name=&quot;data&quot; val=&quot;" + String.valueOf(temp) +"&quot;/&gt;\n"
255
+					+ "        \n"
256
+					+ "      &lt;/obj&gt;\n"
257
+					+ "    </con>\n"
258
+					+ "</m2m:cin>";
259
+			
260
+			HttpEntity <String> entity = new HttpEntity <String> (parameters,headers);
261
+			String url = "http://127.0.0.1:8080/~/in-cse/in-name/Alarm_Temperature/DATA/";
262
+			
263
+			restTemplate.exchange(url,HttpMethod.POST,entity,String.class);
264
+			}
265
+		}
266
+		
267
+		
268
+		
269
+		return 0;
270
+		//Communication avec OneM2M
271
+		/*
272
+		RestTemplate restTemplate = new RestTemplate();
273
+		HttpHeaders headers = new HttpHeaders();
274
+		
275
+		headers.set("X-M2M-ORIGIN", "admin:admin");
276
+		headers.set("Content-Type", "application/xml;ty=4");
277
+		//headers.set("Accept", "application/xml");
278
+		String parameters = "	\n"
279
+				+ "<m2m:cin xmlns:m2m=\"http://www.onem2m.org/xml/protocols\">\n"
280
+				+ "    <cnf>message</cnf>\n"
281
+				+ "    <con>\n"
282
+				+ "      &lt;obj&gt;\n"
283
+				+ "        &lt;str name=&quot;presence&quot; val=&quot;1&quot;/&gt;\n"
284
+				+ "        \n"
285
+				+ "      &lt;/obj&gt;\n"
286
+				+ "    </con>\n"
287
+				+ "</m2m:cin>";
288
+		
289
+		HttpEntity <String> entity = new HttpEntity <String> (parameters,headers);
290
+		String url = "http://127.0.0.1:8080/~/in-cse/in-name/Capteur_Mouvement/DATA/";
291
+		
292
+		ResponseEntity respEntity = restTemplate.exchange(url,HttpMethod.POST,entity,String.class);
293
+		String resp = (String) respEntity.getBody();
294
+		return resp;
295
+		*/
296
+		
297
+		
298
+	}
299
+	
300
+	
301
+
302
+	 
303
+     
304
+     
305
+	
306
+	
307
+	
308
+	public static void main(String[] args) {
309
+		SpringApplication.run(ControllerApplication.class, args);
310
+		
311
+	
312
+	}
313
+
314
+}

+ 60
- 0
.metadata/.plugins/org.eclipse.core.resources/.history/8b/6035942ffd48001b145081b6f5274ba2 View File

@@ -0,0 +1,60 @@
1
+package Services.CaptMouv;
2
+
3
+import org.springframework.boot.SpringApplication;
4
+import org.springframework.boot.autoconfigure.SpringBootApplication;
5
+import org.springframework.web.bind.annotation.GetMapping;
6
+import org.springframework.web.bind.annotation.RequestMapping;
7
+import org.springframework.web.bind.annotation.RestController;
8
+
9
+
10
+
11
+@RestController
12
+@SpringBootApplication
13
+@RequestMapping("/CaptMouv/")
14
+public class CaptMouvApplication {
15
+
16
+	
17
+	private double range;
18
+	private boolean detection;
19
+	private int nbrDetection;
20
+	
21
+	
22
+	//Constructor
23
+	public CaptMouvApplication() {
24
+		
25
+		this.range = 7;
26
+		this.detection = false;
27
+		this.nbrDetection = 0;
28
+	}
29
+	
30
+	//Methodes
31
+	@GetMapping("getRange/")
32
+	public double getRange() {
33
+		return range;
34
+	}
35
+	@GetMapping("setRange/")
36
+	public void setRange(double range) {
37
+		this.range = range;
38
+	}
39
+	@GetMapping("getDetection/")
40
+	public boolean getDetection() {
41
+		return this.detection;
42
+	}
43
+	@GetMapping("setDetection/")
44
+	public void setDetection(boolean detection) {
45
+		this.detection = detection;
46
+	}
47
+	
48
+	@GetMapping("getNbrDetection/")
49
+	public boolean getnbrDetection() {
50
+		return this.nbrDetection;
51
+	}
52
+	
53
+	
54
+	
55
+	public static void main(String[] args) {
56
+		SpringApplication.run(CaptMouvApplication.class, args);
57
+		
58
+	}
59
+
60
+}

+ 358
- 0
.metadata/.plugins/org.eclipse.core.resources/.history/95/1080a487fe48001b145081b6f5274ba2 View File

@@ -0,0 +1,358 @@
1
+package Services.Controller;
2
+import java.awt.Color;
3
+import java.io.OutputStream;
4
+import java.net.HttpURLConnection;
5
+import java.net.URL;
6
+import java.util.Date;
7
+
8
+import javax.swing.JButton;
9
+import javax.swing.JFrame;
10
+import javax.swing.JPanel;
11
+
12
+import org.springframework.boot.SpringApplication;
13
+import org.springframework.web.client.*;
14
+
15
+
16
+import org.springframework.boot.autoconfigure.SpringBootApplication;
17
+import org.springframework.http.HttpEntity;
18
+import org.springframework.http.HttpHeaders;
19
+import org.springframework.http.HttpMethod;
20
+import org.springframework.http.ResponseEntity;
21
+import org.springframework.web.bind.annotation.GetMapping;
22
+import org.springframework.web.bind.annotation.RequestMapping;
23
+import org.springframework.web.bind.annotation.RestController;
24
+
25
+@RestController
26
+@SpringBootApplication
27
+@RequestMapping("/controller/")
28
+public class ControllerApplication {
29
+	
30
+	private final String captMouvURI = "http://localhost:8081/CaptMouv/";
31
+	private final String captTempURI = "http://localhost:8082/CaptTemp/";
32
+	private final String captCO2URI = "http://localhost:8083/CaptCO2/";
33
+	private final String captHumURI = "http://localhost:8084/CaptHum/";
34
+	private final String automPorteURI = "http://localhost:8085/AutomPorteApplication/";
35
+	private final String automFenetreURI = "http://localhost:8086/AutomFenetreApplication/";
36
+	private final String automLumiereURI = "http://localhost:8087/AutomLumiereApplication/";
37
+	private final String automChauffageURI = "http://localhost:8088/AutomChauffageApplication/";
38
+	private final String simulationURI = "http://localhost:8089/Simulation/";
39
+	
40
+	
41
+	boolean ControlLumiereAutomatique = false;
42
+	boolean PorteFenetreAutomatique_TemperatureCO2 = false;
43
+	boolean PorteFenetreAutomatique_CO2 = false;
44
+	boolean MouvementAlarmActivated = false;
45
+	boolean TemperatureAlarmActivated = false;
46
+	boolean CO2AlarmActivated = false;
47
+	
48
+	
49
+	//Controle de la lumiere automatique
50
+	//Controle en fonction du mouvement
51
+	@GetMapping("isControlLumiereAutomatiqueActivated/")
52
+	private final boolean isControlLumiereAutomatique() {
53
+		return ControlLumiereAutomatique;
54
+	}
55
+	@GetMapping("setControlLumiereAutomatique/")
56
+	private final void setControlLumiereAutomatique(boolean controlLumiereAutomatique) {
57
+		ControlLumiereAutomatique = controlLumiereAutomatique;
58
+	}
59
+	
60
+	//Control de l'ouverture de la porte et fenetre
61
+	//Control en fonction de la temperature et CO2
62
+	@GetMapping("isPorteFenetreAutomatique_TemperatureCO2Activated/")
63
+	private final boolean isPorteFenetreAutomatique_TemperatureCO2() {
64
+		return PorteFenetreAutomatique_TemperatureCO2;
65
+	}
66
+
67
+
68
+	@GetMapping("setPorteFenetreAutomatique_TemperatureCO2/")
69
+	private final void setPorteFenetreAutomatique_TemperatureCO2(boolean porteFenetreAutomatique_TemperatureCO2) {
70
+		PorteFenetreAutomatique_TemperatureCO2 = porteFenetreAutomatique_TemperatureCO2;
71
+	}
72
+	//Controle en fonction du CO2
73
+	@GetMapping("isPorteFenetreAutomatique_CO2Activated/")
74
+	private final boolean isPorteFenetreAutomatique_CO2() {
75
+		return PorteFenetreAutomatique_CO2;
76
+	}
77
+
78
+
79
+	@GetMapping("setPorteFenetreAutomatique_CO2/")
80
+	private final void setPorteFenetreAutomatique_CO2(boolean porteFenetreAutomatique_CO2) {
81
+		PorteFenetreAutomatique_CO2 = porteFenetreAutomatique_CO2;
82
+	}
83
+
84
+
85
+
86
+
87
+	public void ControlLumiereAutomatique() {
88
+		String url_getDetection = captMouvURI + "getDetection/";
89
+		String url_allumerLumiere = automLumiereURI + "setON/?oN=true";
90
+		String url_eteindreLumiere = automLumiereURI + "setON/?oN=false";
91
+		RestTemplate restTemplate = new RestTemplate();
92
+		
93
+		
94
+		//return restTemplate.getForObject(test, String.class);
95
+		
96
+		
97
+		if (restTemplate.getForObject(url_getDetection,boolean.class)) {
98
+			restTemplate.getForObject(url_allumerLumiere,boolean.class);			
99
+		}
100
+		else {
101
+			restTemplate.getForObject(url_eteindreLumiere,boolean.class);
102
+		}
103
+	}
104
+	
105
+	
106
+	public void PorteFenetreAutomatique_TemperatureCO2() {
107
+		String url_getTemp = captTempURI + "getTemp/";
108
+		String url_getCO2 = captCO2URI + "getCO2/";
109
+		String url_setOuvertureFenetre = automFenetreURI + "setOpen/?open=true";
110
+		String url_setFermetureFenetre = automFenetreURI + "setOpen/?open=false";
111
+		String url_setOuverturePorte = automPorteURI + "setOpen/?open=true";
112
+		String url_setFermeturePorte = automPorteURI + "setOpen/?open=false";
113
+		RestTemplate restTemplate = new RestTemplate();
114
+		
115
+		if (((restTemplate.getForObject(url_getTemp,double.class)) > 30) | ((restTemplate.getForObject(url_getCO2,int.class)) > 500)) {
116
+			restTemplate.getForObject(url_setOuvertureFenetre,double.class);
117
+			restTemplate.getForObject(url_setOuverturePorte,double.class);
118
+		}
119
+		else {
120
+			restTemplate.getForObject(url_setFermetureFenetre,double.class);
121
+			restTemplate.getForObject(url_setFermeturePorte,double.class);
122
+		}
123
+		
124
+	}
125
+	
126
+	
127
+	public void PorteFenetreAutomatique_CO2() {
128
+		
129
+		String url_getCO2 = captCO2URI + "getCO2/";
130
+		String url_setOuvertureFenetre = automFenetreURI + "setOpen/?open=true";
131
+		String url_setFermetureFenetre = automFenetreURI + "setOpen/?open=false";
132
+		String url_setOuverturePorte = automPorteURI + "setOpen/?open=true";
133
+		String url_setFermeturePorte = automPorteURI + "setOpen/?open=false";
134
+		RestTemplate restTemplate = new RestTemplate();
135
+		
136
+		if (((restTemplate.getForObject(url_getCO2,int.class)) > 500)) {
137
+			restTemplate.getForObject(url_setOuvertureFenetre,double.class);
138
+			restTemplate.getForObject(url_setOuverturePorte,double.class);
139
+		}
140
+		else {
141
+			restTemplate.getForObject(url_setFermetureFenetre,double.class);
142
+			restTemplate.getForObject(url_setFermeturePorte,double.class);
143
+		}
144
+		
145
+	}
146
+	@GetMapping("getSalleOccupee/")
147
+	public String SalleOccupe() {
148
+		String url_getDetection = captMouvURI + "getDetection/";
149
+		RestTemplate restTemplate = new RestTemplate();
150
+		boolean salle_occupe = restTemplate.getForObject(url_getDetection,boolean.class);
151
+		
152
+		
153
+		return ("La salle est:" + String.valueOf(salle_occupe)) ;
154
+		
155
+	}
156
+	
157
+	@GetMapping("setTemperatureHeatingSystem/")
158
+	public void setTemperatureHeatingSystem(int temp) {
159
+		String url_setTemp = automChauffageURI + "setTemperatureSet/?temperatureSet=" + String.valueOf(temp);
160
+		
161
+		RestTemplate restTemplate = new RestTemplate();
162
+		restTemplate.getForObject(url_setTemp,void.class);
163
+	}
164
+	
165
+	@GetMapping("getHeatingSystemONOFF/")
166
+	public boolean getHeatingSystemONOFF() {
167
+		String url_getONOFF = automChauffageURI + "isActive/";
168
+		
169
+		RestTemplate restTemplate = new RestTemplate();
170
+		return (restTemplate.getForObject(url_getONOFF,boolean.class));
171
+	}
172
+	
173
+	public boolean getMovementDetection() {
174
+		String url_getDetection = captMouvURI + "getDetection/";
175
+		boolean resultat = false;
176
+		RestTemplate restTemplate = new RestTemplate();
177
+		
178
+		return (restTemplate.getForObject(url_getDetection, boolean.class));
179
+		
180
+	}
181
+	
182
+	@GetMapping("getTemperatureAlarm/")
183
+	public boolean getTemperatureAlarm() {
184
+		return (TemperatureAlarmActivated);
185
+	}
186
+	@GetMapping("setTemperatureAlarm/")
187
+	public void setTemperatureAlarm(boolean active) {
188
+		TemperatureAlarmActivated = active;
189
+	}
190
+	
191
+	@GetMapping("setMouvementAlarm/")
192
+	public void setMouvementAlarm(boolean active) {
193
+		MouvementAlarmActivated = active;
194
+	}
195
+	@GetMapping("getMouvementAlarm/")
196
+	public boolean getMouvementAlarm() {
197
+		return (MouvementAlarmActivated);
198
+	}
199
+	
200
+	@GetMapping("setCO2Alarm/")
201
+	public void setCO2Alarm(boolean active) {
202
+		CO2AlarmActivated = active;
203
+	}
204
+	@GetMapping("getCO2Alarm/")
205
+	public boolean getCO2Alarm() {
206
+		return (CO2AlarmActivated);
207
+	}
208
+	
209
+	
210
+	
211
+	
212
+	@SuppressWarnings("deprecation")
213
+	@GetMapping("run")
214
+	public int run() throws Exception {
215
+		
216
+		if (ControlLumiereAutomatique) {
217
+			ControlLumiereAutomatique();
218
+		}
219
+		
220
+		if (PorteFenetreAutomatique_TemperatureCO2) {
221
+			PorteFenetreAutomatique_TemperatureCO2();
222
+		}
223
+		
224
+		if (PorteFenetreAutomatique_CO2) {
225
+			PorteFenetreAutomatique_CO2();
226
+		}
227
+		
228
+		//Notification de mouvement Alarm
229
+		if (MouvementAlarmActivated & (getMovementDetection())) {
230
+			//Communication avec OneM2M
231
+			
232
+			RestTemplate restTemplate = new RestTemplate();
233
+			HttpHeaders headers = new HttpHeaders();
234
+			
235
+			headers.set("X-M2M-ORIGIN", "admin:admin");
236
+			headers.set("Content-Type", "application/xml;ty=4");
237
+			//headers.set("Accept", "application/xml");
238
+			String parameters = "	\n"
239
+					+ "<m2m:cin xmlns:m2m=\"http://www.onem2m.org/xml/protocols\">\n"
240
+					+ "    <cnf>message</cnf>\n"
241
+					+ "    <con>\n"
242
+					+ "      &lt;obj&gt;\n"
243
+					+ "        &lt;str name=&quot;data&quot; val=&quot;Mouvement_GEI213&quot;/&gt;\n"
244
+					+ "        \n"
245
+					+ "      &lt;/obj&gt;\n"
246
+					+ "    </con>\n"
247
+					+ "</m2m:cin>";
248
+			
249
+			HttpEntity <String> entity = new HttpEntity <String> (parameters,headers);
250
+			String url = "http://127.0.0.1:8080/~/in-cse/in-name/Alarm_Notification/DATA/";
251
+			
252
+			restTemplate.exchange(url,HttpMethod.POST,entity,String.class);
253
+			
254
+		}
255
+		
256
+		//Notification temperature elevée
257
+		if (TemperatureAlarmActivated) {
258
+			String url_getTemp = captTempURI + "getTemp/";
259
+			int temp;
260
+			//Communication avec OneM2M
261
+			
262
+			RestTemplate restTemplate = new RestTemplate();
263
+			temp = restTemplate.getForObject(url_getTemp,int.class);
264
+			if ((temp > 35) | (temp<15)) {
265
+			HttpHeaders headers = new HttpHeaders();
266
+			
267
+			headers.set("X-M2M-ORIGIN", "admin:admin");
268
+			headers.set("Content-Type", "application/xml;ty=4");
269
+			//headers.set("Accept", "application/xml");
270
+			String parameters = "	\n"
271
+					+ "<m2m:cin xmlns:m2m=\"http://www.onem2m.org/xml/protocols\">\n"
272
+					+ "    <cnf>message</cnf>\n"
273
+					+ "    <con>\n"
274
+					+ "      &lt;obj&gt;\n"
275
+					+ "        &lt;str name=&quot;location&quot; val=&quot;GEI213&quot;/&gt;\n"
276
+					+ "			&lt;str name=&quot;data&quot; val=&quot;" + String.valueOf(temp) +"&quot;/&gt;\n"
277
+					+ "        \n"
278
+					+ "      &lt;/obj&gt;\n"
279
+					+ "    </con>\n"
280
+					+ "</m2m:cin>";
281
+			
282
+			HttpEntity <String> entity = new HttpEntity <String> (parameters,headers);
283
+			String url = "http://127.0.0.1:8080/~/in-cse/in-name/Alarm_Temperature/DATA/";
284
+			
285
+			restTemplate.exchange(url,HttpMethod.POST,entity,String.class);
286
+			}
287
+		}
288
+			
289
+			//Notification CO2 elevée
290
+			if (CO2AlarmActivated) {
291
+				String url_getCO2 = captCO2URI + "getCO2/";
292
+				double CO2;
293
+				//Communication avec OneM2M
294
+				
295
+				RestTemplate restTemplate = new RestTemplate();
296
+				CO2 = restTemplate.getForObject(url_getCO2,double.class);
297
+				if (CO2 > 1000) {
298
+				HttpHeaders headers = new HttpHeaders();
299
+				
300
+				headers.set("X-M2M-ORIGIN", "admin:admin");
301
+				headers.set("Content-Type", "application/xml;ty=4");
302
+				//headers.set("Accept", "application/xml");
303
+				String parameters = "	\n"
304
+						+ "<m2m:cin xmlns:m2m=\"http://www.onem2m.org/xml/protocols\">\n"
305
+						+ "    <cnf>message</cnf>\n"
306
+						+ "    <con>\n"
307
+						+ "      &lt;obj&gt;\n"
308
+						+ "        &lt;str name=&quot;location&quot; val=&quot;GEI213&quot;/&gt;\n"
309
+						+ "			&lt;str name=&quot;data&quot; val=&quot;" + String.valueOf(CO2) +"&quot;/&gt;\n"
310
+						+ "        \n"
311
+						+ "      &lt;/obj&gt;\n"
312
+						+ "    </con>\n"
313
+						+ "</m2m:cin>";
314
+				
315
+				HttpEntity <String> entity = new HttpEntity <String> (parameters,headers);
316
+				String url = "http://127.0.0.1:8080/~/in-cse/in-name/Alarm_CO2/DATA/";
317
+				
318
+				restTemplate.exchange(url,HttpMethod.POST,entity,String.class);
319
+				}
320
+		}
321
+			
322
+			//Gestion de la date:
323
+			Date date = new Date();
324
+			RestTemplate restTemplate = new RestTemplate();
325
+			int day = date.getDay();
326
+			if ((day==0)|(day==6)) {
327
+				//On eteint le chauffage
328
+				restTemplate.getForObject(automChauffageURI+"setActive/?active=false",double.class);
329
+				//On eteint la lumière
330
+				restTemplate.getForObject(automLumiereURI+"setON/?oN=false",double.class);
331
+				//On ferme les fenetres
332
+				restTemplate.getForObject(automFenetreURI+"setOpen/?open=false",double.class);
333
+			}
334
+			
335
+		
336
+	
337
+		
338
+		return 0;
339
+		
340
+		
341
+		
342
+	}
343
+	
344
+	
345
+
346
+	 
347
+     
348
+     
349
+	
350
+	
351
+	
352
+	public static void main(String[] args) {
353
+		SpringApplication.run(ControllerApplication.class, args);
354
+		
355
+	
356
+	}
357
+
358
+}

+ 225
- 0
.metadata/.plugins/org.eclipse.core.resources/.history/9f/906a0a379947001b1997ad6a8c66f017 View File

@@ -0,0 +1,225 @@
1
+package Services.Controller;
2
+import java.awt.Color;
3
+import java.io.OutputStream;
4
+import java.net.HttpURLConnection;
5
+import java.net.URL;
6
+
7
+import javax.swing.JButton;
8
+import javax.swing.JFrame;
9
+import javax.swing.JPanel;
10
+
11
+import org.springframework.boot.SpringApplication;
12
+import org.springframework.web.client.*;
13
+
14
+
15
+import org.springframework.boot.autoconfigure.SpringBootApplication;
16
+import org.springframework.http.HttpEntity;
17
+import org.springframework.http.HttpHeaders;
18
+import org.springframework.http.HttpMethod;
19
+import org.springframework.http.ResponseEntity;
20
+import org.springframework.web.bind.annotation.GetMapping;
21
+import org.springframework.web.bind.annotation.RequestMapping;
22
+import org.springframework.web.bind.annotation.RestController;
23
+
24
+@RestController
25
+@SpringBootApplication
26
+@RequestMapping("/controller/")
27
+public class ControllerApplication {
28
+	
29
+	private final String captMouvURI = "http://localhost:8081/CaptMouv/";
30
+	private final String captTempURI = "http://localhost:8082/CaptTemp/";
31
+	private final String captCO2URI = "http://localhost:8083/CaptCO2/";
32
+	private final String captHumURI = "http://localhost:8084/";
33
+	private final String automPorteURI = "http://localhost:8085/AutomPorteApplication/";
34
+	private final String automFenetreURI = "http://localhost:8086/AutomFenetreApplication/";
35
+	private final String automLumiereURI = "http://localhost:8087/AutomLumiereApplication/";
36
+	private final String automChauffageURI = "http://localhost:8088/AutomChauffageApplication/";
37
+	private final String simulationURI = "http://localhost:8089/Simulation/";
38
+	
39
+	
40
+	boolean ControlLumiereAutomatique = false;
41
+	boolean PorteFenetreAutomatique_TemperatureCO2 = false;
42
+	boolean PorteFenetreAutomatique_CO2 = false;
43
+	
44
+	
45
+	
46
+	//Controle de la lumiere automatique
47
+	//Controle en fonction du mouvement
48
+	@GetMapping("isControlLumiereAutomatiqueActivated/")
49
+	private final boolean isControlLumiereAutomatique() {
50
+		return ControlLumiereAutomatique;
51
+	}
52
+	@GetMapping("setControlLumiereAutomatique/")
53
+	private final void setControlLumiereAutomatique(boolean controlLumiereAutomatique) {
54
+		ControlLumiereAutomatique = controlLumiereAutomatique;
55
+	}
56
+	
57
+	//Control de l'ouverture de la porte et fenetre
58
+	//Control en fonction de la temperature et CO2
59
+	@GetMapping("isPorteFenetreAutomatique_TemperatureCO2Activated/")
60
+	private final boolean isPorteFenetreAutomatique_TemperatureCO2() {
61
+		return PorteFenetreAutomatique_TemperatureCO2;
62
+	}
63
+
64
+
65
+	@GetMapping("setPorteFenetreAutomatique_TemperatureCO2/")
66
+	private final void setPorteFenetreAutomatique_TemperatureCO2(boolean porteFenetreAutomatique_TemperatureCO2) {
67
+		PorteFenetreAutomatique_TemperatureCO2 = porteFenetreAutomatique_TemperatureCO2;
68
+	}
69
+	//Controle en fonction du CO2
70
+	@GetMapping("isPorteFenetreAutomatique_CO2Activated/")
71
+	private final boolean isPorteFenetreAutomatique_CO2() {
72
+		return PorteFenetreAutomatique_CO2;
73
+	}
74
+
75
+
76
+	@GetMapping("setPorteFenetreAutomatique_CO2/")
77
+	private final void setPorteFenetreAutomatique_CO2(boolean porteFenetreAutomatique_CO2) {
78
+		PorteFenetreAutomatique_CO2 = porteFenetreAutomatique_CO2;
79
+	}
80
+
81
+
82
+
83
+
84
+	public void ControlLumiereAutomatique() {
85
+		String url_getDetection = captMouvURI + "getDetection/";
86
+		String url_allumerLumiere = automLumiereURI + "setON/?oN=true";
87
+		String url_eteindreLumiere = automLumiereURI + "setON/?oN=false";
88
+		RestTemplate restTemplate = new RestTemplate();
89
+		
90
+		
91
+		//return restTemplate.getForObject(test, String.class);
92
+		
93
+		
94
+		if (restTemplate.getForObject(url_getDetection,boolean.class)) {
95
+			restTemplate.getForObject(url_allumerLumiere,boolean.class);			
96
+		}
97
+		else {
98
+			restTemplate.getForObject(url_eteindreLumiere,boolean.class);
99
+		}
100
+	}
101
+	
102
+	
103
+	public void PorteFenetreAutomatique_TemperatureCO2() {
104
+		String url_getTemp = captTempURI + "getTemp/";
105
+		String url_getCO2 = captCO2URI + "getCO2/";
106
+		String url_setOuvertureFenetre = automFenetreURI + "setOpen/?open=true";
107
+		String url_setFermetureFenetre = automFenetreURI + "setOpen/?open=false";
108
+		String url_setOuverturePorte = automPorteURI + "setOpen/?open=true";
109
+		String url_setFermeturePorte = automPorteURI + "setOpen/?open=false";
110
+		RestTemplate restTemplate = new RestTemplate();
111
+		
112
+		if (((restTemplate.getForObject(url_getTemp,double.class)) > 30) | ((restTemplate.getForObject(url_getCO2,int.class)) > 500)) {
113
+			restTemplate.getForObject(url_setOuvertureFenetre,double.class);
114
+			restTemplate.getForObject(url_setOuverturePorte,double.class);
115
+		}
116
+		else {
117
+			restTemplate.getForObject(url_setFermetureFenetre,double.class);
118
+			restTemplate.getForObject(url_setFermeturePorte,double.class);
119
+		}
120
+		
121
+	}
122
+	
123
+	
124
+	public void PorteFenetreAutomatique_CO2() {
125
+		
126
+		String url_getCO2 = captCO2URI + "getCO2/";
127
+		String url_setOuvertureFenetre = automFenetreURI + "setOpen/?open=true";
128
+		String url_setFermetureFenetre = automFenetreURI + "setOpen/?open=false";
129
+		String url_setOuverturePorte = automPorteURI + "setOpen/?open=true";
130
+		String url_setFermeturePorte = automPorteURI + "setOpen/?open=false";
131
+		RestTemplate restTemplate = new RestTemplate();
132
+		
133
+		if (((restTemplate.getForObject(url_getCO2,int.class)) > 500)) {
134
+			restTemplate.getForObject(url_setOuvertureFenetre,double.class);
135
+			restTemplate.getForObject(url_setOuverturePorte,double.class);
136
+		}
137
+		else {
138
+			restTemplate.getForObject(url_setFermetureFenetre,double.class);
139
+			restTemplate.getForObject(url_setFermeturePorte,double.class);
140
+		}
141
+		
142
+	}
143
+	@GetMapping("getSalleOccupee/")
144
+	public String SalleOccupe() {
145
+		String url_getDetection = captMouvURI + "getDetection/";
146
+		RestTemplate restTemplate = new RestTemplate();
147
+		boolean salle_occupe = restTemplate.getForObject(url_getDetection,boolean.class);
148
+		
149
+		
150
+		return ("La salle est:" + String.valueOf(salle_occupe)) ;
151
+		
152
+	}
153
+	
154
+	@GetMapping("setTemperatureHeatingSystem/")
155
+	public void setTemperatureHeatingSystem(int temp) {
156
+		String url_setTemp = automChauffageURI + "setTemperatureSet/";
157
+		
158
+		RestTemplate restTemplate = new RestTemplate();
159
+		restTemplate.getForObject(url_setTemp,void.class);
160
+	}
161
+	
162
+	
163
+	@GetMapping("run")
164
+	public int run() throws Exception {
165
+		/*
166
+		if (ControlLumiereAutomatique) {
167
+			ControlLumiereAutomatique();
168
+		}
169
+		
170
+		if (PorteFenetreAutomatique_TemperatureCO2) {
171
+			PorteFenetreAutomatique_TemperatureCO2();
172
+		}
173
+		
174
+		if (PorteFenetreAutomatique_CO2) {
175
+			PorteFenetreAutomatique_CO2();
176
+		}
177
+		*/
178
+		
179
+		
180
+		return 0;
181
+		//Communication avec OneM2M
182
+		/*
183
+		RestTemplate restTemplate = new RestTemplate();
184
+		HttpHeaders headers = new HttpHeaders();
185
+		
186
+		headers.set("X-M2M-ORIGIN", "admin:admin");
187
+		headers.set("Content-Type", "application/xml;ty=4");
188
+		//headers.set("Accept", "application/xml");
189
+		String parameters = "	\n"
190
+				+ "<m2m:cin xmlns:m2m=\"http://www.onem2m.org/xml/protocols\">\n"
191
+				+ "    <cnf>message</cnf>\n"
192
+				+ "    <con>\n"
193
+				+ "      &lt;obj&gt;\n"
194
+				+ "        &lt;str name=&quot;presence&quot; val=&quot;1&quot;/&gt;\n"
195
+				+ "        \n"
196
+				+ "      &lt;/obj&gt;\n"
197
+				+ "    </con>\n"
198
+				+ "</m2m:cin>";
199
+		
200
+		HttpEntity <String> entity = new HttpEntity <String> (parameters,headers);
201
+		String url = "http://127.0.0.1:8080/~/in-cse/in-name/Capteur_Mouvement/DATA/";
202
+		
203
+		ResponseEntity respEntity = restTemplate.exchange(url,HttpMethod.POST,entity,String.class);
204
+		String resp = (String) respEntity.getBody();
205
+		return resp;
206
+		*/
207
+		
208
+		
209
+	}
210
+	
211
+	
212
+
213
+	 
214
+     
215
+     
216
+	
217
+	
218
+	
219
+	public static void main(String[] args) {
220
+		SpringApplication.run(ControllerApplication.class, args);
221
+		
222
+	
223
+	}
224
+
225
+}

+ 216
- 0
.metadata/.plugins/org.eclipse.core.resources/.history/a9/306e7b699847001b1997ad6a8c66f017 View File

@@ -0,0 +1,216 @@
1
+package Services.Controller;
2
+import java.awt.Color;
3
+import java.io.OutputStream;
4
+import java.net.HttpURLConnection;
5
+import java.net.URL;
6
+
7
+import javax.swing.JButton;
8
+import javax.swing.JFrame;
9
+import javax.swing.JPanel;
10
+
11
+import org.springframework.boot.SpringApplication;
12
+import org.springframework.web.client.*;
13
+
14
+
15
+import org.springframework.boot.autoconfigure.SpringBootApplication;
16
+import org.springframework.http.HttpEntity;
17
+import org.springframework.http.HttpHeaders;
18
+import org.springframework.http.HttpMethod;
19
+import org.springframework.http.ResponseEntity;
20
+import org.springframework.web.bind.annotation.GetMapping;
21
+import org.springframework.web.bind.annotation.RequestMapping;
22
+import org.springframework.web.bind.annotation.RestController;
23
+
24
+@RestController
25
+@SpringBootApplication
26
+@RequestMapping("/controller/")
27
+public class ControllerApplication {
28
+	
29
+	private final String captMouvURI = "http://localhost:8081/CaptMouv/";
30
+	private final String captTempURI = "http://localhost:8082/CaptTemp/";
31
+	private final String captCO2URI = "http://localhost:8083/CaptCO2/";
32
+	private final String captHumURI = "http://localhost:8084/";
33
+	private final String automPorteURI = "http://localhost:8085/AutomPorteApplication/";
34
+	private final String automFenetreURI = "http://localhost:8086/AutomFenetreApplication/";
35
+	private final String automLumiereURI = "http://localhost:8087/AutomLumiereApplication/";
36
+	private final String automChauffageURI = "http://localhost:8088/AutomChauffageApplication/";
37
+	private final String simulationURI = "http://localhost:8089/Simulation/";
38
+	
39
+	
40
+	boolean ControlLumiereAutomatique = false;
41
+	boolean PorteFenetreAutomatique_TemperatureCO2 = false;
42
+	boolean PorteFenetreAutomatique_CO2 = false;
43
+	
44
+	
45
+	
46
+	//Controle de la lumiere automatique
47
+	//Controle en fonction du mouvement
48
+	@GetMapping("isControlLumiereAutomatiqueActivated/")
49
+	private final boolean isControlLumiereAutomatique() {
50
+		return ControlLumiereAutomatique;
51
+	}
52
+	@GetMapping("setControlLumiereAutomatique/")
53
+	private final void setControlLumiereAutomatique(boolean controlLumiereAutomatique) {
54
+		ControlLumiereAutomatique = controlLumiereAutomatique;
55
+	}
56
+	
57
+	//Control de l'ouverture de la porte et fenetre
58
+	//Control en fonction de la temperature et CO2
59
+	@GetMapping("isPorteFenetreAutomatique_TemperatureCO2Activated/")
60
+	private final boolean isPorteFenetreAutomatique_TemperatureCO2() {
61
+		return PorteFenetreAutomatique_TemperatureCO2;
62
+	}
63
+
64
+
65
+	@GetMapping("setPorteFenetreAutomatique_TemperatureCO2/")
66
+	private final void setPorteFenetreAutomatique_TemperatureCO2(boolean porteFenetreAutomatique_TemperatureCO2) {
67
+		PorteFenetreAutomatique_TemperatureCO2 = porteFenetreAutomatique_TemperatureCO2;
68
+	}
69
+	//Controle en fonction du CO2
70
+	@GetMapping("isPorteFenetreAutomatique_CO2Activated/")
71
+	private final boolean isPorteFenetreAutomatique_CO2() {
72
+		return PorteFenetreAutomatique_CO2;
73
+	}
74
+
75
+
76
+	@GetMapping("setPorteFenetreAutomatique_CO2/")
77
+	private final void setPorteFenetreAutomatique_CO2(boolean porteFenetreAutomatique_CO2) {
78
+		PorteFenetreAutomatique_CO2 = porteFenetreAutomatique_CO2;
79
+	}
80
+
81
+
82
+
83
+
84
+	public void ControlLumiereAutomatique() {
85
+		String url_getDetection = captMouvURI + "getDetection/";
86
+		String url_allumerLumiere = automLumiereURI + "setON/?oN=true";
87
+		String url_eteindreLumiere = automLumiereURI + "setON/?oN=false";
88
+		RestTemplate restTemplate = new RestTemplate();
89
+		
90
+		
91
+		//return restTemplate.getForObject(test, String.class);
92
+		
93
+		
94
+		if (restTemplate.getForObject(url_getDetection,boolean.class)) {
95
+			restTemplate.getForObject(url_allumerLumiere,boolean.class);			
96
+		}
97
+		else {
98
+			restTemplate.getForObject(url_eteindreLumiere,boolean.class);
99
+		}
100
+	}
101
+	
102
+	
103
+	public void PorteFenetreAutomatique_TemperatureCO2() {
104
+		String url_getTemp = captTempURI + "getTemp/";
105
+		String url_getCO2 = captCO2URI + "getCO2/";
106
+		String url_setOuvertureFenetre = automFenetreURI + "setOpen/?open=true";
107
+		String url_setFermetureFenetre = automFenetreURI + "setOpen/?open=false";
108
+		String url_setOuverturePorte = automPorteURI + "setOpen/?open=true";
109
+		String url_setFermeturePorte = automPorteURI + "setOpen/?open=false";
110
+		RestTemplate restTemplate = new RestTemplate();
111
+		
112
+		if (((restTemplate.getForObject(url_getTemp,double.class)) > 30) | ((restTemplate.getForObject(url_getCO2,int.class)) > 500)) {
113
+			restTemplate.getForObject(url_setOuvertureFenetre,double.class);
114
+			restTemplate.getForObject(url_setOuverturePorte,double.class);
115
+		}
116
+		else {
117
+			restTemplate.getForObject(url_setFermetureFenetre,double.class);
118
+			restTemplate.getForObject(url_setFermeturePorte,double.class);
119
+		}
120
+		
121
+	}
122
+	
123
+	
124
+	public void PorteFenetreAutomatique_CO2() {
125
+		
126
+		String url_getCO2 = captCO2URI + "getCO2/";
127
+		String url_setOuvertureFenetre = automFenetreURI + "setOpen/?open=true";
128
+		String url_setFermetureFenetre = automFenetreURI + "setOpen/?open=false";
129
+		String url_setOuverturePorte = automPorteURI + "setOpen/?open=true";
130
+		String url_setFermeturePorte = automPorteURI + "setOpen/?open=false";
131
+		RestTemplate restTemplate = new RestTemplate();
132
+		
133
+		if (((restTemplate.getForObject(url_getCO2,int.class)) > 500)) {
134
+			restTemplate.getForObject(url_setOuvertureFenetre,double.class);
135
+			restTemplate.getForObject(url_setOuverturePorte,double.class);
136
+		}
137
+		else {
138
+			restTemplate.getForObject(url_setFermetureFenetre,double.class);
139
+			restTemplate.getForObject(url_setFermeturePorte,double.class);
140
+		}
141
+		
142
+	}
143
+	
144
+	
145
+	@GetMapping("run")
146
+	public String run() throws Exception {
147
+		/*
148
+		if (ControlLumiereAutomatique) {
149
+			ControlLumiereAutomatique();
150
+		}
151
+		
152
+		if (PorteFenetreAutomatique_TemperatureCO2) {
153
+			PorteFenetreAutomatique_TemperatureCO2();
154
+		}
155
+		
156
+		if (PorteFenetreAutomatique_CO2) {
157
+			PorteFenetreAutomatique_CO2();
158
+		}
159
+		*/
160
+		RestTemplate restTemplate = new RestTemplate();
161
+		HttpHeaders headers = new HttpHeaders();
162
+		
163
+		headers.set("X-M2M-ORIGIN", "admin:admin");
164
+		headers.set("Content-Type", "application/xml;ty=4");
165
+		//headers.set("Accept", "application/xml");
166
+		String parameters = "	\n"
167
+				+ "<m2m:cin xmlns:m2m=\"http://www.onem2m.org/xml/protocols\">\n"
168
+				+ "    <cnf>message</cnf>\n"
169
+				+ "    <con>\n"
170
+				+ "      &lt;obj&gt;\n"
171
+				+ "        &lt;str name=&quot;presence&quot; val=&quot;1&quot;/&gt;\n"
172
+				+ "        \n"
173
+				+ "      &lt;/obj&gt;\n"
174
+				+ "    </con>\n"
175
+				+ "</m2m:cin>";
176
+		
177
+		HttpEntity <String> entity = new HttpEntity <String> (parameters,headers);
178
+		String url = "http://127.0.0.1:8080/~/in-cse/in-name/Capteur_Mouvement/DATA/";
179
+		
180
+		ResponseEntity respEntity = restTemplate.exchange(url,HttpMethod.POST,entity,String.class);
181
+		String resp = (String) respEntity.getBody();
182
+		return resp;
183
+		
184
+		
185
+	}
186
+	
187
+	
188
+
189
+	 
190
+     
191
+     
192
+	
193
+	
194
+	
195
+	public static void main(String[] args) {
196
+		SpringApplication.run(ControllerApplication.class, args);
197
+		
198
+		JFrame f= new JFrame("Panel Example");    
199
+	    JPanel panel=new JPanel();  
200
+	    panel.setBounds(40,80,200,200);    
201
+	    panel.setBackground(Color.gray);  
202
+	    JButton b1=new JButton("Button 1");     
203
+	    b1.setBounds(50,100,80,30);    
204
+	    b1.setBackground(Color.yellow);   
205
+	    JButton b2=new JButton("Button 2");   
206
+	    b2.setBounds(100,100,80,30);    
207
+	    b2.setBackground(Color.green);   
208
+	    panel.add(b1); panel.add(b2);  
209
+	    f.add(panel);  
210
+	            f.setSize(400,400);    
211
+	            f.setLayout(null);    
212
+	            f.setVisible(true);   
213
+		
214
+	}
215
+
216
+}

+ 225
- 0
.metadata/.plugins/org.eclipse.core.resources/.history/b3/d003a4a59947001b1997ad6a8c66f017 View File

@@ -0,0 +1,225 @@
1
+package Services.Controller;
2
+import java.awt.Color;
3
+import java.io.OutputStream;
4
+import java.net.HttpURLConnection;
5
+import java.net.URL;
6
+
7
+import javax.swing.JButton;
8
+import javax.swing.JFrame;
9
+import javax.swing.JPanel;
10
+
11
+import org.springframework.boot.SpringApplication;
12
+import org.springframework.web.client.*;
13
+
14
+
15
+import org.springframework.boot.autoconfigure.SpringBootApplication;
16
+import org.springframework.http.HttpEntity;
17
+import org.springframework.http.HttpHeaders;
18
+import org.springframework.http.HttpMethod;
19
+import org.springframework.http.ResponseEntity;
20
+import org.springframework.web.bind.annotation.GetMapping;
21
+import org.springframework.web.bind.annotation.RequestMapping;
22
+import org.springframework.web.bind.annotation.RestController;
23
+
24
+@RestController
25
+@SpringBootApplication
26
+@RequestMapping("/controller/")
27
+public class ControllerApplication {
28
+	
29
+	private final String captMouvURI = "http://localhost:8081/CaptMouv/";
30
+	private final String captTempURI = "http://localhost:8082/CaptTemp/";
31
+	private final String captCO2URI = "http://localhost:8083/CaptCO2/";
32
+	private final String captHumURI = "http://localhost:8084/";
33
+	private final String automPorteURI = "http://localhost:8085/AutomPorteApplication/";
34
+	private final String automFenetreURI = "http://localhost:8086/AutomFenetreApplication/";
35
+	private final String automLumiereURI = "http://localhost:8087/AutomLumiereApplication/";
36
+	private final String automChauffageURI = "http://localhost:8088/AutomChauffageApplication/";
37
+	private final String simulationURI = "http://localhost:8089/Simulation/";
38
+	
39
+	
40
+	boolean ControlLumiereAutomatique = false;
41
+	boolean PorteFenetreAutomatique_TemperatureCO2 = false;
42
+	boolean PorteFenetreAutomatique_CO2 = false;
43
+	
44
+	
45
+	
46
+	//Controle de la lumiere automatique
47
+	//Controle en fonction du mouvement
48
+	@GetMapping("isControlLumiereAutomatiqueActivated/")
49
+	private final boolean isControlLumiereAutomatique() {
50
+		return ControlLumiereAutomatique;
51
+	}
52
+	@GetMapping("setControlLumiereAutomatique/")
53
+	private final void setControlLumiereAutomatique(boolean controlLumiereAutomatique) {
54
+		ControlLumiereAutomatique = controlLumiereAutomatique;
55
+	}
56
+	
57
+	//Control de l'ouverture de la porte et fenetre
58
+	//Control en fonction de la temperature et CO2
59
+	@GetMapping("isPorteFenetreAutomatique_TemperatureCO2Activated/")
60
+	private final boolean isPorteFenetreAutomatique_TemperatureCO2() {
61
+		return PorteFenetreAutomatique_TemperatureCO2;
62
+	}
63
+
64
+
65
+	@GetMapping("setPorteFenetreAutomatique_TemperatureCO2/")
66
+	private final void setPorteFenetreAutomatique_TemperatureCO2(boolean porteFenetreAutomatique_TemperatureCO2) {
67
+		PorteFenetreAutomatique_TemperatureCO2 = porteFenetreAutomatique_TemperatureCO2;
68
+	}
69
+	//Controle en fonction du CO2
70
+	@GetMapping("isPorteFenetreAutomatique_CO2Activated/")
71
+	private final boolean isPorteFenetreAutomatique_CO2() {
72
+		return PorteFenetreAutomatique_CO2;
73
+	}
74
+
75
+
76
+	@GetMapping("setPorteFenetreAutomatique_CO2/")
77
+	private final void setPorteFenetreAutomatique_CO2(boolean porteFenetreAutomatique_CO2) {
78
+		PorteFenetreAutomatique_CO2 = porteFenetreAutomatique_CO2;
79
+	}
80
+
81
+
82
+
83
+
84
+	public void ControlLumiereAutomatique() {
85
+		String url_getDetection = captMouvURI + "getDetection/";
86
+		String url_allumerLumiere = automLumiereURI + "setON/?oN=true";
87
+		String url_eteindreLumiere = automLumiereURI + "setON/?oN=false";
88
+		RestTemplate restTemplate = new RestTemplate();
89
+		
90
+		
91
+		//return restTemplate.getForObject(test, String.class);
92
+		
93
+		
94
+		if (restTemplate.getForObject(url_getDetection,boolean.class)) {
95
+			restTemplate.getForObject(url_allumerLumiere,boolean.class);			
96
+		}
97
+		else {
98
+			restTemplate.getForObject(url_eteindreLumiere,boolean.class);
99
+		}
100
+	}
101
+	
102
+	
103
+	public void PorteFenetreAutomatique_TemperatureCO2() {
104
+		String url_getTemp = captTempURI + "getTemp/";
105
+		String url_getCO2 = captCO2URI + "getCO2/";
106
+		String url_setOuvertureFenetre = automFenetreURI + "setOpen/?open=true";
107
+		String url_setFermetureFenetre = automFenetreURI + "setOpen/?open=false";
108
+		String url_setOuverturePorte = automPorteURI + "setOpen/?open=true";
109
+		String url_setFermeturePorte = automPorteURI + "setOpen/?open=false";
110
+		RestTemplate restTemplate = new RestTemplate();
111
+		
112
+		if (((restTemplate.getForObject(url_getTemp,double.class)) > 30) | ((restTemplate.getForObject(url_getCO2,int.class)) > 500)) {
113
+			restTemplate.getForObject(url_setOuvertureFenetre,double.class);
114
+			restTemplate.getForObject(url_setOuverturePorte,double.class);
115
+		}
116
+		else {
117
+			restTemplate.getForObject(url_setFermetureFenetre,double.class);
118
+			restTemplate.getForObject(url_setFermeturePorte,double.class);
119
+		}
120
+		
121
+	}
122
+	
123
+	
124
+	public void PorteFenetreAutomatique_CO2() {
125
+		
126
+		String url_getCO2 = captCO2URI + "getCO2/";
127
+		String url_setOuvertureFenetre = automFenetreURI + "setOpen/?open=true";
128
+		String url_setFermetureFenetre = automFenetreURI + "setOpen/?open=false";
129
+		String url_setOuverturePorte = automPorteURI + "setOpen/?open=true";
130
+		String url_setFermeturePorte = automPorteURI + "setOpen/?open=false";
131
+		RestTemplate restTemplate = new RestTemplate();
132
+		
133
+		if (((restTemplate.getForObject(url_getCO2,int.class)) > 500)) {
134
+			restTemplate.getForObject(url_setOuvertureFenetre,double.class);
135
+			restTemplate.getForObject(url_setOuverturePorte,double.class);
136
+		}
137
+		else {
138
+			restTemplate.getForObject(url_setFermetureFenetre,double.class);
139
+			restTemplate.getForObject(url_setFermeturePorte,double.class);
140
+		}
141
+		
142
+	}
143
+	@GetMapping("getSalleOccupee/")
144
+	public String SalleOccupe() {
145
+		String url_getDetection = captMouvURI + "getDetection/";
146
+		RestTemplate restTemplate = new RestTemplate();
147
+		boolean salle_occupe = restTemplate.getForObject(url_getDetection,boolean.class);
148
+		
149
+		
150
+		return ("La salle est:" + String.valueOf(salle_occupe)) ;
151
+		
152
+	}
153
+	
154
+	@GetMapping("setTemperatureHeatingSystem/")
155
+	public void setTemperatureHeatingSystem(int temp) {
156
+		String url_setTemp = automChauffageURI + "setTemperatureSet/?temperatureSet=" + String.valueOf(temp);
157
+		
158
+		RestTemplate restTemplate = new RestTemplate();
159
+		restTemplate.getForObject(url_setTemp,void.class);
160
+	}
161
+	
162
+	
163
+	@GetMapping("run")
164
+	public int run() throws Exception {
165
+		/*
166
+		if (ControlLumiereAutomatique) {
167
+			ControlLumiereAutomatique();
168
+		}
169
+		
170
+		if (PorteFenetreAutomatique_TemperatureCO2) {
171
+			PorteFenetreAutomatique_TemperatureCO2();
172
+		}
173
+		
174
+		if (PorteFenetreAutomatique_CO2) {
175
+			PorteFenetreAutomatique_CO2();
176
+		}
177
+		*/
178
+		
179
+		
180
+		return 0;
181
+		//Communication avec OneM2M
182
+		/*
183
+		RestTemplate restTemplate = new RestTemplate();
184
+		HttpHeaders headers = new HttpHeaders();
185
+		
186
+		headers.set("X-M2M-ORIGIN", "admin:admin");
187
+		headers.set("Content-Type", "application/xml;ty=4");
188
+		//headers.set("Accept", "application/xml");
189
+		String parameters = "	\n"
190
+				+ "<m2m:cin xmlns:m2m=\"http://www.onem2m.org/xml/protocols\">\n"
191
+				+ "    <cnf>message</cnf>\n"
192
+				+ "    <con>\n"
193
+				+ "      &lt;obj&gt;\n"
194
+				+ "        &lt;str name=&quot;presence&quot; val=&quot;1&quot;/&gt;\n"
195
+				+ "        \n"
196
+				+ "      &lt;/obj&gt;\n"
197
+				+ "    </con>\n"
198
+				+ "</m2m:cin>";
199
+		
200
+		HttpEntity <String> entity = new HttpEntity <String> (parameters,headers);
201
+		String url = "http://127.0.0.1:8080/~/in-cse/in-name/Capteur_Mouvement/DATA/";
202
+		
203
+		ResponseEntity respEntity = restTemplate.exchange(url,HttpMethod.POST,entity,String.class);
204
+		String resp = (String) respEntity.getBody();
205
+		return resp;
206
+		*/
207
+		
208
+		
209
+	}
210
+	
211
+	
212
+
213
+	 
214
+     
215
+     
216
+	
217
+	
218
+	
219
+	public static void main(String[] args) {
220
+		SpringApplication.run(ControllerApplication.class, args);
221
+		
222
+	
223
+	}
224
+
225
+}

+ 330
- 0
.metadata/.plugins/org.eclipse.core.resources/.history/f/5052879af148001b145081b6f5274ba2 View File

@@ -0,0 +1,330 @@
1
+package Services.Controller;
2
+import java.awt.Color;
3
+import java.io.OutputStream;
4
+import java.net.HttpURLConnection;
5
+import java.net.URL;
6
+
7
+import javax.swing.JButton;
8
+import javax.swing.JFrame;
9
+import javax.swing.JPanel;
10
+
11
+import org.springframework.boot.SpringApplication;
12
+import org.springframework.web.client.*;
13
+
14
+
15
+import org.springframework.boot.autoconfigure.SpringBootApplication;
16
+import org.springframework.http.HttpEntity;
17
+import org.springframework.http.HttpHeaders;
18
+import org.springframework.http.HttpMethod;
19
+import org.springframework.http.ResponseEntity;
20
+import org.springframework.web.bind.annotation.GetMapping;
21
+import org.springframework.web.bind.annotation.RequestMapping;
22
+import org.springframework.web.bind.annotation.RestController;
23
+
24
+@RestController
25
+@SpringBootApplication
26
+@RequestMapping("/controller/")
27
+public class ControllerApplication {
28
+	
29
+	private final String captMouvURI = "http://localhost:8081/CaptMouv/";
30
+	private final String captTempURI = "http://localhost:8082/CaptTemp/";
31
+	private final String captCO2URI = "http://localhost:8083/CaptCO2/";
32
+	private final String captHumURI = "http://localhost:8084/";
33
+	private final String automPorteURI = "http://localhost:8085/AutomPorteApplication/";
34
+	private final String automFenetreURI = "http://localhost:8086/AutomFenetreApplication/";
35
+	private final String automLumiereURI = "http://localhost:8087/AutomLumiereApplication/";
36
+	private final String automChauffageURI = "http://localhost:8088/AutomChauffageApplication/";
37
+	private final String simulationURI = "http://localhost:8089/Simulation/";
38
+	
39
+	
40
+	boolean ControlLumiereAutomatique = false;
41
+	boolean PorteFenetreAutomatique_TemperatureCO2 = false;
42
+	boolean PorteFenetreAutomatique_CO2 = false;
43
+	boolean MouvementAlarmActivated = false;
44
+	boolean TemperatureAlarmActivated = false;
45
+	boolean CO2AlarmActivated = false;
46
+	
47
+	
48
+	//Controle de la lumiere automatique
49
+	//Controle en fonction du mouvement
50
+	@GetMapping("isControlLumiereAutomatiqueActivated/")
51
+	private final boolean isControlLumiereAutomatique() {
52
+		return ControlLumiereAutomatique;
53
+	}
54
+	@GetMapping("setControlLumiereAutomatique/")
55
+	private final void setControlLumiereAutomatique(boolean controlLumiereAutomatique) {
56
+		ControlLumiereAutomatique = controlLumiereAutomatique;
57
+	}
58
+	
59
+	//Control de l'ouverture de la porte et fenetre
60
+	//Control en fonction de la temperature et CO2
61
+	@GetMapping("isPorteFenetreAutomatique_TemperatureCO2Activated/")
62
+	private final boolean isPorteFenetreAutomatique_TemperatureCO2() {
63
+		return PorteFenetreAutomatique_TemperatureCO2;
64
+	}
65
+
66
+
67
+	@GetMapping("setPorteFenetreAutomatique_TemperatureCO2/")
68
+	private final void setPorteFenetreAutomatique_TemperatureCO2(boolean porteFenetreAutomatique_TemperatureCO2) {
69
+		PorteFenetreAutomatique_TemperatureCO2 = porteFenetreAutomatique_TemperatureCO2;
70
+	}
71
+	//Controle en fonction du CO2
72
+	@GetMapping("isPorteFenetreAutomatique_CO2Activated/")
73
+	private final boolean isPorteFenetreAutomatique_CO2() {
74
+		return PorteFenetreAutomatique_CO2;
75
+	}
76
+
77
+
78
+	@GetMapping("setPorteFenetreAutomatique_CO2/")
79
+	private final void setPorteFenetreAutomatique_CO2(boolean porteFenetreAutomatique_CO2) {
80
+		PorteFenetreAutomatique_CO2 = porteFenetreAutomatique_CO2;
81
+	}
82
+
83
+
84
+
85
+
86
+	public void ControlLumiereAutomatique() {
87
+		String url_getDetection = captMouvURI + "getDetection/";
88
+		String url_allumerLumiere = automLumiereURI + "setON/?oN=true";
89
+		String url_eteindreLumiere = automLumiereURI + "setON/?oN=false";
90
+		RestTemplate restTemplate = new RestTemplate();
91
+		
92
+		
93
+		//return restTemplate.getForObject(test, String.class);
94
+		
95
+		
96
+		if (restTemplate.getForObject(url_getDetection,boolean.class)) {
97
+			restTemplate.getForObject(url_allumerLumiere,boolean.class);			
98
+		}
99
+		else {
100
+			restTemplate.getForObject(url_eteindreLumiere,boolean.class);
101
+		}
102
+	}
103
+	
104
+	
105
+	public void PorteFenetreAutomatique_TemperatureCO2() {
106
+		String url_getTemp = captTempURI + "getTemp/";
107
+		String url_getCO2 = captCO2URI + "getCO2/";
108
+		String url_setOuvertureFenetre = automFenetreURI + "setOpen/?open=true";
109
+		String url_setFermetureFenetre = automFenetreURI + "setOpen/?open=false";
110
+		String url_setOuverturePorte = automPorteURI + "setOpen/?open=true";
111
+		String url_setFermeturePorte = automPorteURI + "setOpen/?open=false";
112
+		RestTemplate restTemplate = new RestTemplate();
113
+		
114
+		if (((restTemplate.getForObject(url_getTemp,double.class)) > 30) | ((restTemplate.getForObject(url_getCO2,int.class)) > 500)) {
115
+			restTemplate.getForObject(url_setOuvertureFenetre,double.class);
116
+			restTemplate.getForObject(url_setOuverturePorte,double.class);
117
+		}
118
+		else {
119
+			restTemplate.getForObject(url_setFermetureFenetre,double.class);
120
+			restTemplate.getForObject(url_setFermeturePorte,double.class);
121
+		}
122
+		
123
+	}
124
+	
125
+	
126
+	public void PorteFenetreAutomatique_CO2() {
127
+		
128
+		String url_getCO2 = captCO2URI + "getCO2/";
129
+		String url_setOuvertureFenetre = automFenetreURI + "setOpen/?open=true";
130
+		String url_setFermetureFenetre = automFenetreURI + "setOpen/?open=false";
131
+		String url_setOuverturePorte = automPorteURI + "setOpen/?open=true";
132
+		String url_setFermeturePorte = automPorteURI + "setOpen/?open=false";
133
+		RestTemplate restTemplate = new RestTemplate();
134
+		
135
+		if (((restTemplate.getForObject(url_getCO2,int.class)) > 500)) {
136
+			restTemplate.getForObject(url_setOuvertureFenetre,double.class);
137
+			restTemplate.getForObject(url_setOuverturePorte,double.class);
138
+		}
139
+		else {
140
+			restTemplate.getForObject(url_setFermetureFenetre,double.class);
141
+			restTemplate.getForObject(url_setFermeturePorte,double.class);
142
+		}
143
+		
144
+	}
145
+	@GetMapping("getSalleOccupee/")
146
+	public String SalleOccupe() {
147
+		String url_getDetection = captMouvURI + "getDetection/";
148
+		RestTemplate restTemplate = new RestTemplate();
149
+		boolean salle_occupe = restTemplate.getForObject(url_getDetection,boolean.class);
150
+		
151
+		
152
+		return ("La salle est:" + String.valueOf(salle_occupe)) ;
153
+		
154
+	}
155
+	
156
+	@GetMapping("setTemperatureHeatingSystem/")
157
+	public void setTemperatureHeatingSystem(int temp) {
158
+		String url_setTemp = automChauffageURI + "setTemperatureSet/?temperatureSet=" + String.valueOf(temp);
159
+		
160
+		RestTemplate restTemplate = new RestTemplate();
161
+		restTemplate.getForObject(url_setTemp,void.class);
162
+	}
163
+	
164
+	@GetMapping("getHeatingSystemONOFF/")
165
+	public boolean getHeatingSystemONOFF() {
166
+		String url_getONOFF = automChauffageURI + "isActive/";
167
+		
168
+		RestTemplate restTemplate = new RestTemplate();
169
+		return (restTemplate.getForObject(url_getONOFF,boolean.class));
170
+	}
171
+	
172
+	public boolean getMovementDetection() {
173
+		String url_getDetection = captMouvURI + "getDetection/";
174
+		boolean resultat = false;
175
+		RestTemplate restTemplate = new RestTemplate();
176
+		
177
+		return (restTemplate.getForObject(url_getDetection, boolean.class));
178
+		
179
+	}
180
+	
181
+	@GetMapping("setTemperatureAlarm/")
182
+	public void setTemperatureAlarm(boolean active) {
183
+		TemperatureAlarmActivated = active;
184
+	}
185
+	
186
+	@GetMapping("setMouvementAlarm/")
187
+	public void setMouvementAlarm(boolean active) {
188
+		MouvementAlarmActivated = active;
189
+	}
190
+	
191
+	@GetMapping("setCO2Alarm/")
192
+	public void setCO2Alarm(boolean active) {
193
+		CO2AlarmActivated = active;
194
+	}
195
+	
196
+	
197
+	
198
+	
199
+	@GetMapping("run")
200
+	public int run() throws Exception {
201
+		
202
+		if (ControlLumiereAutomatique) {
203
+			ControlLumiereAutomatique();
204
+		}
205
+		
206
+		if (PorteFenetreAutomatique_TemperatureCO2) {
207
+			PorteFenetreAutomatique_TemperatureCO2();
208
+		}
209
+		
210
+		if (PorteFenetreAutomatique_CO2) {
211
+			PorteFenetreAutomatique_CO2();
212
+		}
213
+		
214
+		//Notification de mouvement Alarm
215
+		if (MouvementAlarmActivated & (getMovementDetection())) {
216
+			//Communication avec OneM2M
217
+			
218
+			RestTemplate restTemplate = new RestTemplate();
219
+			HttpHeaders headers = new HttpHeaders();
220
+			
221
+			headers.set("X-M2M-ORIGIN", "admin:admin");
222
+			headers.set("Content-Type", "application/xml;ty=4");
223
+			//headers.set("Accept", "application/xml");
224
+			String parameters = "	\n"
225
+					+ "<m2m:cin xmlns:m2m=\"http://www.onem2m.org/xml/protocols\">\n"
226
+					+ "    <cnf>message</cnf>\n"
227
+					+ "    <con>\n"
228
+					+ "      &lt;obj&gt;\n"
229
+					+ "        &lt;str name=&quot;data&quot; val=&quot;Mouvement_GEI213&quot;/&gt;\n"
230
+					+ "        \n"
231
+					+ "      &lt;/obj&gt;\n"
232
+					+ "    </con>\n"
233
+					+ "</m2m:cin>";
234
+			
235
+			HttpEntity <String> entity = new HttpEntity <String> (parameters,headers);
236
+			String url = "http://127.0.0.1:8080/~/in-cse/in-name/Alarm_Notification/DATA/";
237
+			
238
+			restTemplate.exchange(url,HttpMethod.POST,entity,String.class);
239
+			
240
+		}
241
+		
242
+		//Notification temperature elevée
243
+		if (TemperatureAlarmActivated) {
244
+			String url_getTemp = captTempURI + "getTemp/";
245
+			int temp;
246
+			//Communication avec OneM2M
247
+			
248
+			RestTemplate restTemplate = new RestTemplate();
249
+			temp = restTemplate.getForObject(url_getTemp,int.class);
250
+			if ((temp > 35) | (temp<15)) {
251
+			HttpHeaders headers = new HttpHeaders();
252
+			
253
+			headers.set("X-M2M-ORIGIN", "admin:admin");
254
+			headers.set("Content-Type", "application/xml;ty=4");
255
+			//headers.set("Accept", "application/xml");
256
+			String parameters = "	\n"
257
+					+ "<m2m:cin xmlns:m2m=\"http://www.onem2m.org/xml/protocols\">\n"
258
+					+ "    <cnf>message</cnf>\n"
259
+					+ "    <con>\n"
260
+					+ "      &lt;obj&gt;\n"
261
+					+ "        &lt;str name=&quot;location&quot; val=&quot;GEI213&quot;/&gt;\n"
262
+					+ "			&lt;str name=&quot;data&quot; val=&quot;" + String.valueOf(temp) +"&quot;/&gt;\n"
263
+					+ "        \n"
264
+					+ "      &lt;/obj&gt;\n"
265
+					+ "    </con>\n"
266
+					+ "</m2m:cin>";
267
+			
268
+			HttpEntity <String> entity = new HttpEntity <String> (parameters,headers);
269
+			String url = "http://127.0.0.1:8080/~/in-cse/in-name/Alarm_Temperature/DATA/";
270
+			
271
+			restTemplate.exchange(url,HttpMethod.POST,entity,String.class);
272
+			}
273
+		}
274
+			
275
+			//Notification CO2 elevée
276
+			if (CO2AlarmActivated) {
277
+				String url_getCO2 = captCO2URI + "getCO2/";
278
+				double CO2;
279
+				//Communication avec OneM2M
280
+				
281
+				RestTemplate restTemplate = new RestTemplate();
282
+				CO2 = restTemplate.getForObject(url_getCO2,double.class);
283
+				if (CO2 > 1000) {
284
+				HttpHeaders headers = new HttpHeaders();
285
+				
286
+				headers.set("X-M2M-ORIGIN", "admin:admin");
287
+				headers.set("Content-Type", "application/xml;ty=4");
288
+				//headers.set("Accept", "application/xml");
289
+				String parameters = "	\n"
290
+						+ "<m2m:cin xmlns:m2m=\"http://www.onem2m.org/xml/protocols\">\n"
291
+						+ "    <cnf>message</cnf>\n"
292
+						+ "    <con>\n"
293
+						+ "      &lt;obj&gt;\n"
294
+						+ "        &lt;str name=&quot;location&quot; val=&quot;GEI213&quot;/&gt;\n"
295
+						+ "			&lt;str name=&quot;data&quot; val=&quot;" + String.valueOf(CO2) +"&quot;/&gt;\n"
296
+						+ "        \n"
297
+						+ "      &lt;/obj&gt;\n"
298
+						+ "    </con>\n"
299
+						+ "</m2m:cin>";
300
+				
301
+				HttpEntity <String> entity = new HttpEntity <String> (parameters,headers);
302
+				String url = "http://127.0.0.1:8080/~/in-cse/in-name/Alarm_CO2/DATA/";
303
+				
304
+				restTemplate.exchange(url,HttpMethod.POST,entity,String.class);
305
+				}
306
+		}
307
+		
308
+		
309
+		
310
+		return 0;
311
+		
312
+		
313
+		
314
+	}
315
+	
316
+	
317
+
318
+	 
319
+     
320
+     
321
+	
322
+	
323
+	
324
+	public static void main(String[] args) {
325
+		SpringApplication.run(ControllerApplication.class, args);
326
+		
327
+	
328
+	}
329
+
330
+}

+ 353
- 0
.metadata/.plugins/org.eclipse.core.resources/.history/f4/c04bf41dfc48001b145081b6f5274ba2 View File

@@ -0,0 +1,353 @@
1
+package Services.Controller;
2
+import java.awt.Color;
3
+import java.io.OutputStream;
4
+import java.net.HttpURLConnection;
5
+import java.net.URL;
6
+import java.util.Date;
7
+
8
+import javax.swing.JButton;
9
+import javax.swing.JFrame;
10
+import javax.swing.JPanel;
11
+
12
+import org.springframework.boot.SpringApplication;
13
+import org.springframework.web.client.*;
14
+
15
+
16
+import org.springframework.boot.autoconfigure.SpringBootApplication;
17
+import org.springframework.http.HttpEntity;
18
+import org.springframework.http.HttpHeaders;
19
+import org.springframework.http.HttpMethod;
20
+import org.springframework.http.ResponseEntity;
21
+import org.springframework.web.bind.annotation.GetMapping;
22
+import org.springframework.web.bind.annotation.RequestMapping;
23
+import org.springframework.web.bind.annotation.RestController;
24
+
25
+@RestController
26
+@SpringBootApplication
27
+@RequestMapping("/controller/")
28
+public class ControllerApplication {
29
+	
30
+	private final String captMouvURI = "http://localhost:8081/CaptMouv/";
31
+	private final String captTempURI = "http://localhost:8082/CaptTemp/";
32
+	private final String captCO2URI = "http://localhost:8083/CaptCO2/";
33
+	private final String captHumURI = "http://localhost:8084/CaptHum/";
34
+	private final String automPorteURI = "http://localhost:8085/AutomPorteApplication/";
35
+	private final String automFenetreURI = "http://localhost:8086/AutomFenetreApplication/";
36
+	private final String automLumiereURI = "http://localhost:8087/AutomLumiereApplication/";
37
+	private final String automChauffageURI = "http://localhost:8088/AutomChauffageApplication/";
38
+	private final String simulationURI = "http://localhost:8089/Simulation/";
39
+	
40
+	
41
+	boolean ControlLumiereAutomatique = false;
42
+	boolean PorteFenetreAutomatique_TemperatureCO2 = false;
43
+	boolean PorteFenetreAutomatique_CO2 = false;
44
+	boolean MouvementAlarmActivated = false;
45
+	boolean TemperatureAlarmActivated = false;
46
+	boolean CO2AlarmActivated = false;
47
+	
48
+	
49
+	//Controle de la lumiere automatique
50
+	//Controle en fonction du mouvement
51
+	@GetMapping("isControlLumiereAutomatiqueActivated/")
52
+	private final boolean isControlLumiereAutomatique() {
53
+		return ControlLumiereAutomatique;
54
+	}
55
+	@GetMapping("setControlLumiereAutomatique/")
56
+	private final void setControlLumiereAutomatique(boolean controlLumiereAutomatique) {
57
+		ControlLumiereAutomatique = controlLumiereAutomatique;
58
+	}
59
+	
60
+	//Control de l'ouverture de la porte et fenetre
61
+	//Control en fonction de la temperature et CO2
62
+	@GetMapping("isPorteFenetreAutomatique_TemperatureCO2Activated/")
63
+	private final boolean isPorteFenetreAutomatique_TemperatureCO2() {
64
+		return PorteFenetreAutomatique_TemperatureCO2;
65
+	}
66
+
67
+
68
+	@GetMapping("setPorteFenetreAutomatique_TemperatureCO2/")
69
+	private final void setPorteFenetreAutomatique_TemperatureCO2(boolean porteFenetreAutomatique_TemperatureCO2) {
70
+		PorteFenetreAutomatique_TemperatureCO2 = porteFenetreAutomatique_TemperatureCO2;
71
+	}
72
+	//Controle en fonction du CO2
73
+	@GetMapping("isPorteFenetreAutomatique_CO2Activated/")
74
+	private final boolean isPorteFenetreAutomatique_CO2() {
75
+		return PorteFenetreAutomatique_CO2;
76
+	}
77
+
78
+
79
+	@GetMapping("setPorteFenetreAutomatique_CO2/")
80
+	private final void setPorteFenetreAutomatique_CO2(boolean porteFenetreAutomatique_CO2) {
81
+		PorteFenetreAutomatique_CO2 = porteFenetreAutomatique_CO2;
82
+	}
83
+
84
+
85
+
86
+
87
+	public void ControlLumiereAutomatique() {
88
+		String url_getDetection = captMouvURI + "getDetection/";
89
+		String url_allumerLumiere = automLumiereURI + "setON/?oN=true";
90
+		String url_eteindreLumiere = automLumiereURI + "setON/?oN=false";
91
+		RestTemplate restTemplate = new RestTemplate();
92
+		
93
+		
94
+		//return restTemplate.getForObject(test, String.class);
95
+		
96
+		
97
+		if (restTemplate.getForObject(url_getDetection,boolean.class)) {
98
+			restTemplate.getForObject(url_allumerLumiere,boolean.class);			
99
+		}
100
+		else {
101
+			restTemplate.getForObject(url_eteindreLumiere,boolean.class);
102
+		}
103
+	}
104
+	
105
+	
106
+	public void PorteFenetreAutomatique_TemperatureCO2() {
107
+		String url_getTemp = captTempURI + "getTemp/";
108
+		String url_getCO2 = captCO2URI + "getCO2/";
109
+		String url_setOuvertureFenetre = automFenetreURI + "setOpen/?open=true";
110
+		String url_setFermetureFenetre = automFenetreURI + "setOpen/?open=false";
111
+		String url_setOuverturePorte = automPorteURI + "setOpen/?open=true";
112
+		String url_setFermeturePorte = automPorteURI + "setOpen/?open=false";
113
+		RestTemplate restTemplate = new RestTemplate();
114
+		
115
+		if (((restTemplate.getForObject(url_getTemp,double.class)) > 30) | ((restTemplate.getForObject(url_getCO2,int.class)) > 500)) {
116
+			restTemplate.getForObject(url_setOuvertureFenetre,double.class);
117
+			restTemplate.getForObject(url_setOuverturePorte,double.class);
118
+		}
119
+		else {
120
+			restTemplate.getForObject(url_setFermetureFenetre,double.class);
121
+			restTemplate.getForObject(url_setFermeturePorte,double.class);
122
+		}
123
+		
124
+	}
125
+	
126
+	
127
+	public void PorteFenetreAutomatique_CO2() {
128
+		
129
+		String url_getCO2 = captCO2URI + "getCO2/";
130
+		String url_setOuvertureFenetre = automFenetreURI + "setOpen/?open=true";
131
+		String url_setFermetureFenetre = automFenetreURI + "setOpen/?open=false";
132
+		String url_setOuverturePorte = automPorteURI + "setOpen/?open=true";
133
+		String url_setFermeturePorte = automPorteURI + "setOpen/?open=false";
134
+		RestTemplate restTemplate = new RestTemplate();
135
+		
136
+		if (((restTemplate.getForObject(url_getCO2,int.class)) > 500)) {
137
+			restTemplate.getForObject(url_setOuvertureFenetre,double.class);
138
+			restTemplate.getForObject(url_setOuverturePorte,double.class);
139
+		}
140
+		else {
141
+			restTemplate.getForObject(url_setFermetureFenetre,double.class);
142
+			restTemplate.getForObject(url_setFermeturePorte,double.class);
143
+		}
144
+		
145
+	}
146
+	@GetMapping("getSalleOccupee/")
147
+	public String SalleOccupe() {
148
+		String url_getDetection = captMouvURI + "getDetection/";
149
+		RestTemplate restTemplate = new RestTemplate();
150
+		boolean salle_occupe = restTemplate.getForObject(url_getDetection,boolean.class);
151
+		
152
+		
153
+		return ("La salle est:" + String.valueOf(salle_occupe)) ;
154
+		
155
+	}
156
+	
157
+	@GetMapping("setTemperatureHeatingSystem/")
158
+	public void setTemperatureHeatingSystem(int temp) {
159
+		String url_setTemp = automChauffageURI + "setTemperatureSet/?temperatureSet=" + String.valueOf(temp);
160
+		
161
+		RestTemplate restTemplate = new RestTemplate();
162
+		restTemplate.getForObject(url_setTemp,void.class);
163
+	}
164
+	
165
+	@GetMapping("getHeatingSystemONOFF/")
166
+	public boolean getHeatingSystemONOFF() {
167
+		String url_getONOFF = automChauffageURI + "isActive/";
168
+		
169
+		RestTemplate restTemplate = new RestTemplate();
170
+		return (restTemplate.getForObject(url_getONOFF,boolean.class));
171
+	}
172
+	
173
+	public boolean getMovementDetection() {
174
+		String url_getDetection = captMouvURI + "getDetection/";
175
+		boolean resultat = false;
176
+		RestTemplate restTemplate = new RestTemplate();
177
+		
178
+		return (restTemplate.getForObject(url_getDetection, boolean.class));
179
+		
180
+	}
181
+	
182
+	@GetMapping("getTemperatureAlarm/")
183
+	public boolean getTemperatureAlarm() {
184
+		return (TemperatureAlarmActivated);
185
+	}
186
+	@GetMapping("setTemperatureAlarm/")
187
+	public void setTemperatureAlarm(boolean active) {
188
+		TemperatureAlarmActivated = active;
189
+	}
190
+	
191
+	@GetMapping("setMouvementAlarm/")
192
+	public void setMouvementAlarm(boolean active) {
193
+		MouvementAlarmActivated = active;
194
+	}
195
+	@GetMapping("getMouvementAlarm/")
196
+	public boolean getMouvementAlarm() {
197
+		return (MouvementAlarmActivated);
198
+	}
199
+	
200
+	@GetMapping("setCO2Alarm/")
201
+	public void setCO2Alarm(boolean active) {
202
+		CO2AlarmActivated = active;
203
+	}
204
+	@GetMapping("getCO2Alarm/")
205
+	public boolean getCO2Alarm() {
206
+		return (CO2AlarmActivated);
207
+	}
208
+	
209
+	
210
+	
211
+	
212
+	@SuppressWarnings("deprecation")
213
+	@GetMapping("run")
214
+	public int run() throws Exception {
215
+		
216
+		if (ControlLumiereAutomatique) {
217
+			ControlLumiereAutomatique();
218
+		}
219
+		
220
+		if (PorteFenetreAutomatique_TemperatureCO2) {
221
+			PorteFenetreAutomatique_TemperatureCO2();
222
+		}
223
+		
224
+		if (PorteFenetreAutomatique_CO2) {
225
+			PorteFenetreAutomatique_CO2();
226
+		}
227
+		
228
+		//Notification de mouvement Alarm
229
+		if (MouvementAlarmActivated & (getMovementDetection())) {
230
+			//Communication avec OneM2M
231
+			
232
+			RestTemplate restTemplate = new RestTemplate();
233
+			HttpHeaders headers = new HttpHeaders();
234
+			
235
+			headers.set("X-M2M-ORIGIN", "admin:admin");
236
+			headers.set("Content-Type", "application/xml;ty=4");
237
+			//headers.set("Accept", "application/xml");
238
+			String parameters = "	\n"
239
+					+ "<m2m:cin xmlns:m2m=\"http://www.onem2m.org/xml/protocols\">\n"
240
+					+ "    <cnf>message</cnf>\n"
241
+					+ "    <con>\n"
242
+					+ "      &lt;obj&gt;\n"
243
+					+ "        &lt;str name=&quot;data&quot; val=&quot;Mouvement_GEI213&quot;/&gt;\n"
244
+					+ "        \n"
245
+					+ "      &lt;/obj&gt;\n"
246
+					+ "    </con>\n"
247
+					+ "</m2m:cin>";
248
+			
249
+			HttpEntity <String> entity = new HttpEntity <String> (parameters,headers);
250
+			String url = "http://127.0.0.1:8080/~/in-cse/in-name/Alarm_Notification/DATA/";
251
+			
252
+			restTemplate.exchange(url,HttpMethod.POST,entity,String.class);
253
+			
254
+		}
255
+		
256
+		//Notification temperature elevée
257
+		if (TemperatureAlarmActivated) {
258
+			String url_getTemp = captTempURI + "getTemp/";
259
+			int temp;
260
+			//Communication avec OneM2M
261
+			
262
+			RestTemplate restTemplate = new RestTemplate();
263
+			temp = restTemplate.getForObject(url_getTemp,int.class);
264
+			if ((temp > 35) | (temp<15)) {
265
+			HttpHeaders headers = new HttpHeaders();
266
+			
267
+			headers.set("X-M2M-ORIGIN", "admin:admin");
268
+			headers.set("Content-Type", "application/xml;ty=4");
269
+			//headers.set("Accept", "application/xml");
270
+			String parameters = "	\n"
271
+					+ "<m2m:cin xmlns:m2m=\"http://www.onem2m.org/xml/protocols\">\n"
272
+					+ "    <cnf>message</cnf>\n"
273
+					+ "    <con>\n"
274
+					+ "      &lt;obj&gt;\n"
275
+					+ "        &lt;str name=&quot;location&quot; val=&quot;GEI213&quot;/&gt;\n"
276
+					+ "			&lt;str name=&quot;data&quot; val=&quot;" + String.valueOf(temp) +"&quot;/&gt;\n"
277
+					+ "        \n"
278
+					+ "      &lt;/obj&gt;\n"
279
+					+ "    </con>\n"
280
+					+ "</m2m:cin>";
281
+			
282
+			HttpEntity <String> entity = new HttpEntity <String> (parameters,headers);
283
+			String url = "http://127.0.0.1:8080/~/in-cse/in-name/Alarm_Temperature/DATA/";
284
+			
285
+			restTemplate.exchange(url,HttpMethod.POST,entity,String.class);
286
+			}
287
+		}
288
+			
289
+			//Notification CO2 elevée
290
+			if (CO2AlarmActivated) {
291
+				String url_getCO2 = captCO2URI + "getCO2/";
292
+				double CO2;
293
+				//Communication avec OneM2M
294
+				
295
+				RestTemplate restTemplate = new RestTemplate();
296
+				CO2 = restTemplate.getForObject(url_getCO2,double.class);
297
+				if (CO2 > 1000) {
298
+				HttpHeaders headers = new HttpHeaders();
299
+				
300
+				headers.set("X-M2M-ORIGIN", "admin:admin");
301
+				headers.set("Content-Type", "application/xml;ty=4");
302
+				//headers.set("Accept", "application/xml");
303
+				String parameters = "	\n"
304
+						+ "<m2m:cin xmlns:m2m=\"http://www.onem2m.org/xml/protocols\">\n"
305
+						+ "    <cnf>message</cnf>\n"
306
+						+ "    <con>\n"
307
+						+ "      &lt;obj&gt;\n"
308
+						+ "        &lt;str name=&quot;location&quot; val=&quot;GEI213&quot;/&gt;\n"
309
+						+ "			&lt;str name=&quot;data&quot; val=&quot;" + String.valueOf(CO2) +"&quot;/&gt;\n"
310
+						+ "        \n"
311
+						+ "      &lt;/obj&gt;\n"
312
+						+ "    </con>\n"
313
+						+ "</m2m:cin>";
314
+				
315
+				HttpEntity <String> entity = new HttpEntity <String> (parameters,headers);
316
+				String url = "http://127.0.0.1:8080/~/in-cse/in-name/Alarm_CO2/DATA/";
317
+				
318
+				restTemplate.exchange(url,HttpMethod.POST,entity,String.class);
319
+				}
320
+		}
321
+			
322
+			//Gestion de la date:
323
+			
324
+			Date date = new Date();
325
+			RestTemplate restTemplate = new RestTemplate();
326
+			int day = date.getDay();
327
+			if ((day==0)|(day==6)) {
328
+				restTemplate.getForObject(automChauffageURI+"setActive/?active=false",double.class);
329
+			}
330
+		
331
+	
332
+		
333
+		return 0;
334
+		
335
+		
336
+		
337
+	}
338
+	
339
+	
340
+
341
+	 
342
+     
343
+     
344
+	
345
+	
346
+	
347
+	public static void main(String[] args) {
348
+		SpringApplication.run(ControllerApplication.class, args);
349
+		
350
+	
351
+	}
352
+
353
+}

+ 345
- 0
.metadata/.plugins/org.eclipse.core.resources/.history/fa/f06335b8fb48001b145081b6f5274ba2 View File

@@ -0,0 +1,345 @@
1
+package Services.Controller;
2
+import java.awt.Color;
3
+import java.io.OutputStream;
4
+import java.net.HttpURLConnection;
5
+import java.net.URL;
6
+import java.util.Date;
7
+
8
+import javax.swing.JButton;
9
+import javax.swing.JFrame;
10
+import javax.swing.JPanel;
11
+
12
+import org.springframework.boot.SpringApplication;
13
+import org.springframework.web.client.*;
14
+
15
+
16
+import org.springframework.boot.autoconfigure.SpringBootApplication;
17
+import org.springframework.http.HttpEntity;
18
+import org.springframework.http.HttpHeaders;
19
+import org.springframework.http.HttpMethod;
20
+import org.springframework.http.ResponseEntity;
21
+import org.springframework.web.bind.annotation.GetMapping;
22
+import org.springframework.web.bind.annotation.RequestMapping;
23
+import org.springframework.web.bind.annotation.RestController;
24
+
25
+@RestController
26
+@SpringBootApplication
27
+@RequestMapping("/controller/")
28
+public class ControllerApplication {
29
+	
30
+	private final String captMouvURI = "http://localhost:8081/CaptMouv/";
31
+	private final String captTempURI = "http://localhost:8082/CaptTemp/";
32
+	private final String captCO2URI = "http://localhost:8083/CaptCO2/";
33
+	private final String captHumURI = "http://localhost:8084/CaptHum/";
34
+	private final String automPorteURI = "http://localhost:8085/AutomPorteApplication/";
35
+	private final String automFenetreURI = "http://localhost:8086/AutomFenetreApplication/";
36
+	private final String automLumiereURI = "http://localhost:8087/AutomLumiereApplication/";
37
+	private final String automChauffageURI = "http://localhost:8088/AutomChauffageApplication/";
38
+	private final String simulationURI = "http://localhost:8089/Simulation/";
39
+	
40
+	
41
+	boolean ControlLumiereAutomatique = false;
42
+	boolean PorteFenetreAutomatique_TemperatureCO2 = false;
43
+	boolean PorteFenetreAutomatique_CO2 = false;
44
+	boolean MouvementAlarmActivated = false;
45
+	boolean TemperatureAlarmActivated = false;
46
+	boolean CO2AlarmActivated = false;
47
+	
48
+	
49
+	//Controle de la lumiere automatique
50
+	//Controle en fonction du mouvement
51
+	@GetMapping("isControlLumiereAutomatiqueActivated/")
52
+	private final boolean isControlLumiereAutomatique() {
53
+		return ControlLumiereAutomatique;
54
+	}
55
+	@GetMapping("setControlLumiereAutomatique/")
56
+	private final void setControlLumiereAutomatique(boolean controlLumiereAutomatique) {
57
+		ControlLumiereAutomatique = controlLumiereAutomatique;
58
+	}
59
+	
60
+	//Control de l'ouverture de la porte et fenetre
61
+	//Control en fonction de la temperature et CO2
62
+	@GetMapping("isPorteFenetreAutomatique_TemperatureCO2Activated/")
63
+	private final boolean isPorteFenetreAutomatique_TemperatureCO2() {
64
+		return PorteFenetreAutomatique_TemperatureCO2;
65
+	}
66
+
67
+
68
+	@GetMapping("setPorteFenetreAutomatique_TemperatureCO2/")
69
+	private final void setPorteFenetreAutomatique_TemperatureCO2(boolean porteFenetreAutomatique_TemperatureCO2) {
70
+		PorteFenetreAutomatique_TemperatureCO2 = porteFenetreAutomatique_TemperatureCO2;
71
+	}
72
+	//Controle en fonction du CO2
73
+	@GetMapping("isPorteFenetreAutomatique_CO2Activated/")
74
+	private final boolean isPorteFenetreAutomatique_CO2() {
75
+		return PorteFenetreAutomatique_CO2;
76
+	}
77
+
78
+
79
+	@GetMapping("setPorteFenetreAutomatique_CO2/")
80
+	private final void setPorteFenetreAutomatique_CO2(boolean porteFenetreAutomatique_CO2) {
81
+		PorteFenetreAutomatique_CO2 = porteFenetreAutomatique_CO2;
82
+	}
83
+
84
+
85
+
86
+
87
+	public void ControlLumiereAutomatique() {
88
+		String url_getDetection = captMouvURI + "getDetection/";
89
+		String url_allumerLumiere = automLumiereURI + "setON/?oN=true";
90
+		String url_eteindreLumiere = automLumiereURI + "setON/?oN=false";
91
+		RestTemplate restTemplate = new RestTemplate();
92
+		
93
+		
94
+		//return restTemplate.getForObject(test, String.class);
95
+		
96
+		
97
+		if (restTemplate.getForObject(url_getDetection,boolean.class)) {
98
+			restTemplate.getForObject(url_allumerLumiere,boolean.class);			
99
+		}
100
+		else {
101
+			restTemplate.getForObject(url_eteindreLumiere,boolean.class);
102
+		}
103
+	}
104
+	
105
+	
106
+	public void PorteFenetreAutomatique_TemperatureCO2() {
107
+		String url_getTemp = captTempURI + "getTemp/";
108
+		String url_getCO2 = captCO2URI + "getCO2/";
109
+		String url_setOuvertureFenetre = automFenetreURI + "setOpen/?open=true";
110
+		String url_setFermetureFenetre = automFenetreURI + "setOpen/?open=false";
111
+		String url_setOuverturePorte = automPorteURI + "setOpen/?open=true";
112
+		String url_setFermeturePorte = automPorteURI + "setOpen/?open=false";
113
+		RestTemplate restTemplate = new RestTemplate();
114
+		
115
+		if (((restTemplate.getForObject(url_getTemp,double.class)) > 30) | ((restTemplate.getForObject(url_getCO2,int.class)) > 500)) {
116
+			restTemplate.getForObject(url_setOuvertureFenetre,double.class);
117
+			restTemplate.getForObject(url_setOuverturePorte,double.class);
118
+		}
119
+		else {
120
+			restTemplate.getForObject(url_setFermetureFenetre,double.class);
121
+			restTemplate.getForObject(url_setFermeturePorte,double.class);
122
+		}
123
+		
124
+	}
125
+	
126
+	
127
+	public void PorteFenetreAutomatique_CO2() {
128
+		
129
+		String url_getCO2 = captCO2URI + "getCO2/";
130
+		String url_setOuvertureFenetre = automFenetreURI + "setOpen/?open=true";
131
+		String url_setFermetureFenetre = automFenetreURI + "setOpen/?open=false";
132
+		String url_setOuverturePorte = automPorteURI + "setOpen/?open=true";
133
+		String url_setFermeturePorte = automPorteURI + "setOpen/?open=false";
134
+		RestTemplate restTemplate = new RestTemplate();
135
+		
136
+		if (((restTemplate.getForObject(url_getCO2,int.class)) > 500)) {
137
+			restTemplate.getForObject(url_setOuvertureFenetre,double.class);
138
+			restTemplate.getForObject(url_setOuverturePorte,double.class);
139
+		}
140
+		else {
141
+			restTemplate.getForObject(url_setFermetureFenetre,double.class);
142
+			restTemplate.getForObject(url_setFermeturePorte,double.class);
143
+		}
144
+		
145
+	}
146
+	@GetMapping("getSalleOccupee/")
147
+	public String SalleOccupe() {
148
+		String url_getDetection = captMouvURI + "getDetection/";
149
+		RestTemplate restTemplate = new RestTemplate();
150
+		boolean salle_occupe = restTemplate.getForObject(url_getDetection,boolean.class);
151
+		
152
+		
153
+		return ("La salle est:" + String.valueOf(salle_occupe)) ;
154
+		
155
+	}
156
+	
157
+	@GetMapping("setTemperatureHeatingSystem/")
158
+	public void setTemperatureHeatingSystem(int temp) {
159
+		String url_setTemp = automChauffageURI + "setTemperatureSet/?temperatureSet=" + String.valueOf(temp);
160
+		
161
+		RestTemplate restTemplate = new RestTemplate();
162
+		restTemplate.getForObject(url_setTemp,void.class);
163
+	}
164
+	
165
+	@GetMapping("getHeatingSystemONOFF/")
166
+	public boolean getHeatingSystemONOFF() {
167
+		String url_getONOFF = automChauffageURI + "isActive/";
168
+		
169
+		RestTemplate restTemplate = new RestTemplate();
170
+		return (restTemplate.getForObject(url_getONOFF,boolean.class));
171
+	}
172
+	
173
+	public boolean getMovementDetection() {
174
+		String url_getDetection = captMouvURI + "getDetection/";
175
+		boolean resultat = false;
176
+		RestTemplate restTemplate = new RestTemplate();
177
+		
178
+		return (restTemplate.getForObject(url_getDetection, boolean.class));
179
+		
180
+	}
181
+	
182
+	@GetMapping("getTemperatureAlarm/")
183
+	public boolean getTemperatureAlarm() {
184
+		return (TemperatureAlarmActivated);
185
+	}
186
+	@GetMapping("setTemperatureAlarm/")
187
+	public void setTemperatureAlarm(boolean active) {
188
+		TemperatureAlarmActivated = active;
189
+	}
190
+	
191
+	@GetMapping("setMouvementAlarm/")
192
+	public void setMouvementAlarm(boolean active) {
193
+		MouvementAlarmActivated = active;
194
+	}
195
+	@GetMapping("getMouvementAlarm/")
196
+	public boolean getMouvementAlarm() {
197
+		return (MouvementAlarmActivated);
198
+	}
199
+	
200
+	@GetMapping("setCO2Alarm/")
201
+	public void setCO2Alarm(boolean active) {
202
+		CO2AlarmActivated = active;
203
+	}
204
+	@GetMapping("getCO2Alarm/")
205
+	public boolean getCO2Alarm() {
206
+		return (CO2AlarmActivated);
207
+	}
208
+	
209
+	
210
+	
211
+	
212
+	@SuppressWarnings("deprecation")
213
+	@GetMapping("run")
214
+	public int run() throws Exception {
215
+		
216
+		if (ControlLumiereAutomatique) {
217
+			ControlLumiereAutomatique();
218
+		}
219
+		
220
+		if (PorteFenetreAutomatique_TemperatureCO2) {
221
+			PorteFenetreAutomatique_TemperatureCO2();
222
+		}
223
+		
224
+		if (PorteFenetreAutomatique_CO2) {
225
+			PorteFenetreAutomatique_CO2();
226
+		}
227
+		
228
+		//Notification de mouvement Alarm
229
+		if (MouvementAlarmActivated & (getMovementDetection())) {
230
+			//Communication avec OneM2M
231
+			
232
+			RestTemplate restTemplate = new RestTemplate();
233
+			HttpHeaders headers = new HttpHeaders();
234
+			
235
+			headers.set("X-M2M-ORIGIN", "admin:admin");
236
+			headers.set("Content-Type", "application/xml;ty=4");
237
+			//headers.set("Accept", "application/xml");
238
+			String parameters = "	\n"
239
+					+ "<m2m:cin xmlns:m2m=\"http://www.onem2m.org/xml/protocols\">\n"
240
+					+ "    <cnf>message</cnf>\n"
241
+					+ "    <con>\n"
242
+					+ "      &lt;obj&gt;\n"
243
+					+ "        &lt;str name=&quot;data&quot; val=&quot;Mouvement_GEI213&quot;/&gt;\n"
244
+					+ "        \n"
245
+					+ "      &lt;/obj&gt;\n"
246
+					+ "    </con>\n"
247
+					+ "</m2m:cin>";
248
+			
249
+			HttpEntity <String> entity = new HttpEntity <String> (parameters,headers);
250
+			String url = "http://127.0.0.1:8080/~/in-cse/in-name/Alarm_Notification/DATA/";
251
+			
252
+			restTemplate.exchange(url,HttpMethod.POST,entity,String.class);
253
+			
254
+		}
255
+		
256
+		//Notification temperature elevée
257
+		if (TemperatureAlarmActivated) {
258
+			String url_getTemp = captTempURI + "getTemp/";
259
+			int temp;
260
+			//Communication avec OneM2M
261
+			
262
+			RestTemplate restTemplate = new RestTemplate();
263
+			temp = restTemplate.getForObject(url_getTemp,int.class);
264
+			if ((temp > 35) | (temp<15)) {
265
+			HttpHeaders headers = new HttpHeaders();
266
+			
267
+			headers.set("X-M2M-ORIGIN", "admin:admin");
268
+			headers.set("Content-Type", "application/xml;ty=4");
269
+			//headers.set("Accept", "application/xml");
270
+			String parameters = "	\n"
271
+					+ "<m2m:cin xmlns:m2m=\"http://www.onem2m.org/xml/protocols\">\n"
272
+					+ "    <cnf>message</cnf>\n"
273
+					+ "    <con>\n"
274
+					+ "      &lt;obj&gt;\n"
275
+					+ "        &lt;str name=&quot;location&quot; val=&quot;GEI213&quot;/&gt;\n"
276
+					+ "			&lt;str name=&quot;data&quot; val=&quot;" + String.valueOf(temp) +"&quot;/&gt;\n"
277
+					+ "        \n"
278
+					+ "      &lt;/obj&gt;\n"
279
+					+ "    </con>\n"
280
+					+ "</m2m:cin>";
281
+			
282
+			HttpEntity <String> entity = new HttpEntity <String> (parameters,headers);
283
+			String url = "http://127.0.0.1:8080/~/in-cse/in-name/Alarm_Temperature/DATA/";
284
+			
285
+			restTemplate.exchange(url,HttpMethod.POST,entity,String.class);
286
+			}
287
+		}
288
+			
289
+			//Notification CO2 elevée
290
+			if (CO2AlarmActivated) {
291
+				String url_getCO2 = captCO2URI + "getCO2/";
292
+				double CO2;
293
+				//Communication avec OneM2M
294
+				
295
+				RestTemplate restTemplate = new RestTemplate();
296
+				CO2 = restTemplate.getForObject(url_getCO2,double.class);
297
+				if (CO2 > 1000) {
298
+				HttpHeaders headers = new HttpHeaders();
299
+				
300
+				headers.set("X-M2M-ORIGIN", "admin:admin");
301
+				headers.set("Content-Type", "application/xml;ty=4");
302
+				//headers.set("Accept", "application/xml");
303
+				String parameters = "	\n"
304
+						+ "<m2m:cin xmlns:m2m=\"http://www.onem2m.org/xml/protocols\">\n"
305
+						+ "    <cnf>message</cnf>\n"
306
+						+ "    <con>\n"
307
+						+ "      &lt;obj&gt;\n"
308
+						+ "        &lt;str name=&quot;location&quot; val=&quot;GEI213&quot;/&gt;\n"
309
+						+ "			&lt;str name=&quot;data&quot; val=&quot;" + String.valueOf(CO2) +"&quot;/&gt;\n"
310
+						+ "        \n"
311
+						+ "      &lt;/obj&gt;\n"
312
+						+ "    </con>\n"
313
+						+ "</m2m:cin>";
314
+				
315
+				HttpEntity <String> entity = new HttpEntity <String> (parameters,headers);
316
+				String url = "http://127.0.0.1:8080/~/in-cse/in-name/Alarm_CO2/DATA/";
317
+				
318
+				restTemplate.exchange(url,HttpMethod.POST,entity,String.class);
319
+				}
320
+		}
321
+		
322
+		
323
+		Date date = new Date();
324
+		
325
+		return date.getDay();
326
+		
327
+		
328
+		
329
+	}
330
+	
331
+	
332
+
333
+	 
334
+     
335
+     
336
+	
337
+	
338
+	
339
+	public static void main(String[] args) {
340
+		SpringApplication.run(ControllerApplication.class, args);
341
+		
342
+	
343
+	}
344
+
345
+}

BIN
.metadata/.plugins/org.eclipse.core.resources/.projects/AutomChauffage/.indexes/properties.index View File


BIN
.metadata/.plugins/org.eclipse.core.resources/.projects/AutomChauffage/.location View File


BIN
.metadata/.plugins/org.eclipse.core.resources/.projects/AutomChauffage/.markers View File


BIN
.metadata/.plugins/org.eclipse.core.resources/.projects/AutomChauffage/org.eclipse.jdt.core/state.dat View File


BIN
.metadata/.plugins/org.eclipse.core.resources/.projects/AutomFenetre/.indexes/properties.index View File


BIN
.metadata/.plugins/org.eclipse.core.resources/.projects/AutomFenetre/.location View File


BIN
.metadata/.plugins/org.eclipse.core.resources/.projects/AutomFenetre/.markers View File


BIN
.metadata/.plugins/org.eclipse.core.resources/.projects/AutomFenetre/org.eclipse.jdt.core/state.dat View File


BIN
.metadata/.plugins/org.eclipse.core.resources/.projects/AutomLumiere/.indexes/properties.index View File


BIN
.metadata/.plugins/org.eclipse.core.resources/.projects/AutomLumiere/.location View File


BIN
.metadata/.plugins/org.eclipse.core.resources/.projects/AutomLumiere/.markers View File


BIN
.metadata/.plugins/org.eclipse.core.resources/.projects/AutomLumiere/org.eclipse.jdt.core/state.dat View File


BIN
.metadata/.plugins/org.eclipse.core.resources/.projects/AutomPorte/.indexes/properties.index View File


BIN
.metadata/.plugins/org.eclipse.core.resources/.projects/AutomPorte/.location View File


BIN
.metadata/.plugins/org.eclipse.core.resources/.projects/AutomPorte/.markers View File


BIN
.metadata/.plugins/org.eclipse.core.resources/.projects/AutomPorte/org.eclipse.jdt.core/state.dat View File


BIN
.metadata/.plugins/org.eclipse.core.resources/.projects/CaptCO2/.indexes/properties.index View File


BIN
.metadata/.plugins/org.eclipse.core.resources/.projects/CaptCO2/.location View File


BIN
.metadata/.plugins/org.eclipse.core.resources/.projects/CaptCO2/.markers View File


BIN
.metadata/.plugins/org.eclipse.core.resources/.projects/CaptCO2/org.eclipse.jdt.core/state.dat View File


BIN
.metadata/.plugins/org.eclipse.core.resources/.projects/CaptHum/.indexes/properties.index View File


BIN
.metadata/.plugins/org.eclipse.core.resources/.projects/CaptHum/.location View File


BIN
.metadata/.plugins/org.eclipse.core.resources/.projects/CaptHum/.markers View File


BIN
.metadata/.plugins/org.eclipse.core.resources/.projects/CaptHum/org.eclipse.jdt.core/state.dat View File


BIN
.metadata/.plugins/org.eclipse.core.resources/.projects/CaptMouv/.indexes/e4/b9/22/7e/e5/history.index View File


BIN
.metadata/.plugins/org.eclipse.core.resources/.projects/CaptMouv/.indexes/properties.index View File


BIN
.metadata/.plugins/org.eclipse.core.resources/.projects/CaptMouv/.location View File


BIN
.metadata/.plugins/org.eclipse.core.resources/.projects/CaptMouv/.markers View File


BIN
.metadata/.plugins/org.eclipse.core.resources/.projects/CaptMouv/org.eclipse.jdt.core/state.dat View File


BIN
.metadata/.plugins/org.eclipse.core.resources/.projects/CaptTemp/.indexes/properties.index View File


BIN
.metadata/.plugins/org.eclipse.core.resources/.projects/CaptTemp/.location View File


BIN
.metadata/.plugins/org.eclipse.core.resources/.projects/CaptTemp/.markers View File


BIN
.metadata/.plugins/org.eclipse.core.resources/.projects/CaptTemp/org.eclipse.jdt.core/state.dat View File


BIN
.metadata/.plugins/org.eclipse.core.resources/.projects/Controller/.indexes/e4/b9/22/7e/44/history.index View File


BIN
.metadata/.plugins/org.eclipse.core.resources/.projects/Controller/.indexes/properties.index View File


BIN
.metadata/.plugins/org.eclipse.core.resources/.projects/Controller/.location View File


BIN
.metadata/.plugins/org.eclipse.core.resources/.projects/Controller/.markers View File


BIN
.metadata/.plugins/org.eclipse.core.resources/.projects/Controller/org.eclipse.jdt.core/state.dat View File


BIN
.metadata/.plugins/org.eclipse.core.resources/.projects/Simulation/.indexes/properties.index View File


BIN
.metadata/.plugins/org.eclipse.core.resources/.projects/Simulation/.location View File


BIN
.metadata/.plugins/org.eclipse.core.resources/.projects/Simulation/.markers View File


BIN
.metadata/.plugins/org.eclipse.core.resources/.projects/Simulation/org.eclipse.jdt.core/state.dat View File


BIN
.metadata/.plugins/org.eclipse.core.resources/.projects/semantic/.indexes/properties.index View File


BIN
.metadata/.plugins/org.eclipse.core.resources/.projects/semantic/.location View File


BIN
.metadata/.plugins/org.eclipse.core.resources/.projects/semantic/.markers View File


BIN
.metadata/.plugins/org.eclipse.core.resources/.projects/semantic/1.tree View File


+ 3
- 0
.metadata/.plugins/org.eclipse.core.resources/.projects/semantic/org.eclipse.egit.core/GitProjectData.properties View File

@@ -0,0 +1,3 @@
1
+#GitProjectData
2
+#Mon Nov 30 08:54:08 CET 2020
3
+.gitdir=.git

BIN
.metadata/.plugins/org.eclipse.core.resources/.projects/semantic/org.eclipse.jdt.core/state.dat View File


+ 1
- 0
.metadata/.plugins/org.eclipse.core.resources/.root/.indexes/history.version View File

@@ -0,0 +1 @@
1
+

BIN
.metadata/.plugins/org.eclipse.core.resources/.root/.indexes/properties.index View File


+ 1
- 0
.metadata/.plugins/org.eclipse.core.resources/.root/.indexes/properties.version View File

@@ -0,0 +1 @@
1
+

BIN
.metadata/.plugins/org.eclipse.core.resources/.root/10.tree View File


BIN
.metadata/.plugins/org.eclipse.core.resources/.safetable/org.eclipse.core.resources View File


+ 2
- 0
.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.core.resources.prefs View File

@@ -0,0 +1,2 @@
1
+eclipse.preferences.version=1
2
+version=1

+ 3
- 0
.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.debug.ui.prefs View File

@@ -0,0 +1,3 @@
1
+eclipse.preferences.version=1
2
+org.eclipse.debug.ui.PREF_LAUNCH_PERSPECTIVES=<?xml version\="1.0" encoding\="UTF-8" standalone\="no"?>\r\n<launchPerspectives/>\r\n
3
+preferredTargets=default\:default|

+ 3
- 0
.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.egit.core.prefs View File

@@ -0,0 +1,3 @@
1
+GitRepositoriesView.GitDirectories=C\:\\Users\\nunes\\OneDrive\\Bureau\\WorkDay\\INSA\\Semantique\\iss-semantics-lab\\.git;
2
+GitRepositoriesView.GitDirectories.relative=C\:\\Users\\nunes\\OneDrive\\Bureau\\WorkDay\\INSA\\Semantique\\iss-semantics-lab\\.git;
3
+eclipse.preferences.version=1

+ 9
- 0
.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jdt.core.prefs View File

@@ -0,0 +1,9 @@
1
+eclipse.preferences.version=1
2
+org.eclipse.jdt.core.codeComplete.visibilityCheck=enabled
3
+org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
4
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=13
5
+org.eclipse.jdt.core.compiler.compliance=13
6
+org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
7
+org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
8
+org.eclipse.jdt.core.compiler.release=enabled
9
+org.eclipse.jdt.core.compiler.source=13

+ 2
- 0
.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jdt.junit.prefs View File

@@ -0,0 +1,2 @@
1
+eclipse.preferences.version=1
2
+org.eclipse.jdt.junit.content_assist_favorite_static_members_migrated=true

+ 2
- 0
.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jdt.launching.prefs View File

@@ -0,0 +1,2 @@
1
+eclipse.preferences.version=1
2
+org.eclipse.jdt.launching.PREF_VM_XML=<?xml version\="1.0" encoding\="UTF-8" standalone\="no"?>\r\n<vmSettings defaultVM\="57,org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType13,1606492818227" defaultVMConnector\="">\r\n    <vmType id\="org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType">\r\n        <vm id\="1606492818227" name\="jdk-13.0.2" path\="C\:\\Program Files\\Java\\jdk-13.0.2"/>\r\n    </vmType>\r\n</vmSettings>\r\n

+ 12
- 0
.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jdt.ui.prefs View File

@@ -0,0 +1,12 @@
1
+content_assist_favorite_static_members=org.eclipse.swtbot.swt.finder.matchers.WidgetMatcherFactory.*;org.hamcrest.Matchers.*;org.hamcrest.MatcherAssert.*;org.junit.Assert.*;org.eclipse.swtbot.eclipse.finder.matchers.WidgetMatcherFactory.*;org.eclipse.swtbot.swt.finder.finders.UIThreadRunnable.*;org.eclipse.swtbot.swt.finder.SWTBotAssert.*;org.eclipse.swtbot.eclipse.finder.waits.Conditions.*;org.eclipse.swtbot.swt.finder.waits.Conditions.*;org.junit.Assume.*;org.junit.jupiter.api.Assertions.*;org.junit.jupiter.api.Assumptions.*;org.junit.jupiter.api.DynamicContainer.*;org.junit.jupiter.api.DynamicTest.*
2
+content_assist_lru_history=<?xml version\="1.0" encoding\="UTF-8" standalone\="no"?><history maxLHS\="100" maxRHS\="10"/>
3
+content_assist_number_of_computers=14
4
+content_assist_proposals_background=255,255,255
5
+content_assist_proposals_foreground=0,0,0
6
+eclipse.preferences.version=1
7
+org.eclipse.jdt.internal.ui.navigator.layout=2
8
+org.eclipse.jdt.internal.ui.navigator.librariesnode=true
9
+org.eclipse.jdt.ui.formatterprofiles.version=20
10
+spelling_locale_initialized=true
11
+useAnnotationsPrefPage=true
12
+useQuickDiffPrefPage=true

+ 2
- 0
.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jsch.core.prefs View File

@@ -0,0 +1,2 @@
1
+eclipse.preferences.version=1
2
+org.eclipse.jsch.core.hasChangedDefaultWin32SshHome=true

+ 2
- 0
.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.m2e.discovery.prefs View File

@@ -0,0 +1,2 @@
1
+eclipse.preferences.version=1
2
+org.eclipse.m2e.discovery.pref.projects=

+ 2
- 0
.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.pde.api.tools.prefs View File

@@ -0,0 +1,2 @@
1
+eclipse.preferences.version=1
2
+knownEEFragments=

+ 2
- 0
.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.pde.core.prefs View File

@@ -0,0 +1,2 @@
1
+eclipse.preferences.version=1
2
+workspace_target_handle=local\:1606492799495.target

+ 2
- 0
.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.editors.prefs View File

@@ -0,0 +1,2 @@
1
+eclipse.preferences.version=1
2
+overviewRuler_migration=migrated_3.1

+ 5
- 0
.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.ide.prefs View File

@@ -0,0 +1,5 @@
1
+PROBLEMS_FILTERS_MIGRATE=true
2
+eclipse.preferences.version=1
3
+platformState=1604479820083
4
+quickStart=false
5
+tipsAndTricks=true

+ 2
- 0
.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.navigator.prefs View File

@@ -0,0 +1,2 @@
1
+eclipse.preferences.version=1
2
+org.eclipse.ui.navigator.ProjectExplorer.filterActivation=\:org.eclipse.jdt.java.ui.filters.HidePackageDeclaration\:org.eclipse.jdt.java.ui.filters.HideOutputFolder\:org.eclipse.buildship.ui.navigator.filter.gradle.subProject\:org.eclipse.ui.navigator.resources.nested.HideTopLevelProjectIfNested\:org.eclipse.buildship.ui.navigator.filter.gradle.buildfolder\:org.eclipse.jdt.java.ui.filters.HideEmptyInnerPackages\:org.eclipse.jdt.java.ui.filters.HideInnerClassFiles\:org.eclipse.ui.navigator.resources.filters.startsWithDot\:org.eclipse.jdt.java.ui.filters.HideEmptyLibraryContainers\:org.eclipse.jdt.java.ui.filters.HideImportDeclaration\:org.eclipse.jdt.java.ui.filters.HideSyntheticMembers\:org.eclipse.ui.navigator.resources.nested.HideFolderWhenProjectIsShownAsNested\:

+ 2
- 0
.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.prefs View File

@@ -0,0 +1,2 @@
1
+eclipse.preferences.version=1
2
+showIntro=false

+ 9
- 0
.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.workbench.prefs View File

@@ -0,0 +1,9 @@
1
+//org.eclipse.ui.commands/state/org.eclipse.ui.navigator.resources.nested.changeProjectPresentation/org.eclipse.ui.commands.radioState=false
2
+PLUGINS_NOT_ACTIVATED_ON_STARTUP=;org.eclipse.m2e.discovery;
3
+eclipse.preferences.version=1
4
+org.eclipse.ui.workbench.ACTIVE_NOFOCUS_TAB_BG_END=255,255,255
5
+org.eclipse.ui.workbench.ACTIVE_NOFOCUS_TAB_BG_START=255,255,255
6
+org.eclipse.ui.workbench.ACTIVE_NOFOCUS_TAB_TEXT_COLOR=16,16,16
7
+org.eclipse.ui.workbench.ACTIVE_TAB_BG_END=255,255,255
8
+org.eclipse.ui.workbench.ACTIVE_TAB_BG_START=255,255,255
9
+org.eclipse.ui.workbench.INACTIVE_TAB_BG_START=242,242,242

+ 2
- 0
.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.urischeme.prefs View File

@@ -0,0 +1,2 @@
1
+eclipse.preferences.version=1
2
+processedSchemes=,eclipse+command,eclipse+mpc

+ 15
- 0
.metadata/.plugins/org.eclipse.debug.core/.launches/AutomChauffageApplication.launch View File

@@ -0,0 +1,15 @@
1
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
2
+<launchConfiguration type="org.eclipse.jdt.launching.localJavaApplication">
3
+    <listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_PATHS">
4
+        <listEntry value="/AutomChauffage/src/main/java/Services/AutomChauffage/AutomChauffageApplication.java"/>
5
+    </listAttribute>
6
+    <listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_TYPES">
7
+        <listEntry value="1"/>
8
+    </listAttribute>
9
+    <booleanAttribute key="org.eclipse.jdt.launching.ATTR_EXCLUDE_TEST_CODE" value="true"/>
10
+    <stringAttribute key="org.eclipse.jdt.launching.CLASSPATH_PROVIDER" value="org.eclipse.m2e.launchconfig.classpathProvider"/>
11
+    <stringAttribute key="org.eclipse.jdt.launching.MAIN_TYPE" value="Services.AutomChauffage.AutomChauffageApplication"/>
12
+    <stringAttribute key="org.eclipse.jdt.launching.MODULE_NAME" value=""/>
13
+    <stringAttribute key="org.eclipse.jdt.launching.PROJECT_ATTR" value="AutomChauffage"/>
14
+    <stringAttribute key="org.eclipse.jdt.launching.SOURCE_PATH_PROVIDER" value="org.eclipse.m2e.launchconfig.sourcepathProvider"/>
15
+</launchConfiguration>

+ 15
- 0
.metadata/.plugins/org.eclipse.debug.core/.launches/AutomFenetreApplication.launch View File

@@ -0,0 +1,15 @@
1
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
2
+<launchConfiguration type="org.eclipse.jdt.launching.localJavaApplication">
3
+    <listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_PATHS">
4
+        <listEntry value="/AutomFenetre/src/main/java/Services/AutomFenetre/AutomFenetreApplication.java"/>
5
+    </listAttribute>
6
+    <listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_TYPES">
7
+        <listEntry value="1"/>
8
+    </listAttribute>
9
+    <booleanAttribute key="org.eclipse.jdt.launching.ATTR_EXCLUDE_TEST_CODE" value="true"/>
10
+    <stringAttribute key="org.eclipse.jdt.launching.CLASSPATH_PROVIDER" value="org.eclipse.m2e.launchconfig.classpathProvider"/>
11
+    <stringAttribute key="org.eclipse.jdt.launching.MAIN_TYPE" value="Services.AutomFenetre.AutomFenetreApplication"/>
12
+    <stringAttribute key="org.eclipse.jdt.launching.MODULE_NAME" value=""/>
13
+    <stringAttribute key="org.eclipse.jdt.launching.PROJECT_ATTR" value="AutomFenetre"/>
14
+    <stringAttribute key="org.eclipse.jdt.launching.SOURCE_PATH_PROVIDER" value="org.eclipse.m2e.launchconfig.sourcepathProvider"/>
15
+</launchConfiguration>

+ 15
- 0
.metadata/.plugins/org.eclipse.debug.core/.launches/AutomLumiereApplication.launch View File

@@ -0,0 +1,15 @@
1
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
2
+<launchConfiguration type="org.eclipse.jdt.launching.localJavaApplication">
3
+    <listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_PATHS">
4
+        <listEntry value="/AutomLumiere/src/main/java/Services/AutomLumiere/AutomLumiereApplication.java"/>
5
+    </listAttribute>
6
+    <listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_TYPES">
7
+        <listEntry value="1"/>
8
+    </listAttribute>
9
+    <booleanAttribute key="org.eclipse.jdt.launching.ATTR_EXCLUDE_TEST_CODE" value="true"/>
10
+    <stringAttribute key="org.eclipse.jdt.launching.CLASSPATH_PROVIDER" value="org.eclipse.m2e.launchconfig.classpathProvider"/>
11
+    <stringAttribute key="org.eclipse.jdt.launching.MAIN_TYPE" value="Services.AutomLumiere.AutomLumiereApplication"/>
12
+    <stringAttribute key="org.eclipse.jdt.launching.MODULE_NAME" value=""/>
13
+    <stringAttribute key="org.eclipse.jdt.launching.PROJECT_ATTR" value="AutomLumiere"/>
14
+    <stringAttribute key="org.eclipse.jdt.launching.SOURCE_PATH_PROVIDER" value="org.eclipse.m2e.launchconfig.sourcepathProvider"/>
15
+</launchConfiguration>

+ 15
- 0
.metadata/.plugins/org.eclipse.debug.core/.launches/AutomPorteApplication.launch View File

@@ -0,0 +1,15 @@
1
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
2
+<launchConfiguration type="org.eclipse.jdt.launching.localJavaApplication">
3
+    <listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_PATHS">
4
+        <listEntry value="/AutomPorte/src/main/java/Services/AutomPorte/AutomPorteApplication.java"/>
5
+    </listAttribute>
6
+    <listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_TYPES">
7
+        <listEntry value="1"/>
8
+    </listAttribute>
9
+    <booleanAttribute key="org.eclipse.jdt.launching.ATTR_EXCLUDE_TEST_CODE" value="true"/>
10
+    <stringAttribute key="org.eclipse.jdt.launching.CLASSPATH_PROVIDER" value="org.eclipse.m2e.launchconfig.classpathProvider"/>
11
+    <stringAttribute key="org.eclipse.jdt.launching.MAIN_TYPE" value="Services.AutomPorte.AutomPorteApplication"/>
12
+    <stringAttribute key="org.eclipse.jdt.launching.MODULE_NAME" value=""/>
13
+    <stringAttribute key="org.eclipse.jdt.launching.PROJECT_ATTR" value="AutomPorte"/>
14
+    <stringAttribute key="org.eclipse.jdt.launching.SOURCE_PATH_PROVIDER" value="org.eclipse.m2e.launchconfig.sourcepathProvider"/>
15
+</launchConfiguration>

+ 15
- 0
.metadata/.plugins/org.eclipse.debug.core/.launches/CaptCo2Application.launch View File

@@ -0,0 +1,15 @@
1
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
2
+<launchConfiguration type="org.eclipse.jdt.launching.localJavaApplication">
3
+    <listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_PATHS">
4
+        <listEntry value="/CaptCO2/src/main/java/Services/CaptCO2/CaptCo2Application.java"/>
5
+    </listAttribute>
6
+    <listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_TYPES">
7
+        <listEntry value="1"/>
8
+    </listAttribute>
9
+    <booleanAttribute key="org.eclipse.jdt.launching.ATTR_EXCLUDE_TEST_CODE" value="true"/>
10
+    <stringAttribute key="org.eclipse.jdt.launching.CLASSPATH_PROVIDER" value="org.eclipse.m2e.launchconfig.classpathProvider"/>
11
+    <stringAttribute key="org.eclipse.jdt.launching.MAIN_TYPE" value="Services.CaptCO2.CaptCo2Application"/>
12
+    <stringAttribute key="org.eclipse.jdt.launching.MODULE_NAME" value=""/>
13
+    <stringAttribute key="org.eclipse.jdt.launching.PROJECT_ATTR" value="CaptCO2"/>
14
+    <stringAttribute key="org.eclipse.jdt.launching.SOURCE_PATH_PROVIDER" value="org.eclipse.m2e.launchconfig.sourcepathProvider"/>
15
+</launchConfiguration>

+ 15
- 0
.metadata/.plugins/org.eclipse.debug.core/.launches/CaptMouvApplication.launch View File

@@ -0,0 +1,15 @@
1
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
2
+<launchConfiguration type="org.eclipse.jdt.launching.localJavaApplication">
3
+    <listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_PATHS">
4
+        <listEntry value="/CaptMouv/src/main/java/Services/CaptMouv/CaptMouvApplication.java"/>
5
+    </listAttribute>
6
+    <listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_TYPES">
7
+        <listEntry value="1"/>
8
+    </listAttribute>
9
+    <booleanAttribute key="org.eclipse.jdt.launching.ATTR_EXCLUDE_TEST_CODE" value="true"/>
10
+    <stringAttribute key="org.eclipse.jdt.launching.CLASSPATH_PROVIDER" value="org.eclipse.m2e.launchconfig.classpathProvider"/>
11
+    <stringAttribute key="org.eclipse.jdt.launching.MAIN_TYPE" value="Services.CaptMouv.CaptMouvApplication"/>
12
+    <stringAttribute key="org.eclipse.jdt.launching.MODULE_NAME" value=""/>
13
+    <stringAttribute key="org.eclipse.jdt.launching.PROJECT_ATTR" value="CaptMouv"/>
14
+    <stringAttribute key="org.eclipse.jdt.launching.SOURCE_PATH_PROVIDER" value="org.eclipse.m2e.launchconfig.sourcepathProvider"/>
15
+</launchConfiguration>

+ 0
- 0
.metadata/.plugins/org.eclipse.debug.core/.launches/CaptTempApplication.launch View File


Some files were not shown because too many files changed in this diff

Loading…
Cancel
Save