Commit 39dc692a authored by 0Tyler's avatar 0Tyler

gateway api

parent 7d0a9238
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ChangeListManager">
<list default="true" id="d3a5f2c9-d22f-4974-88fb-d506b4e5feaf" name="Default Changelist" comment="">
<change beforePath="$PROJECT_DIR$/.gradle/4.10.3/fileHashes/fileHashes.bin" beforeDir="false" afterPath="$PROJECT_DIR$/.gradle/4.10.3/fileHashes/fileHashes.bin" afterDir="false" />
<change beforePath="$PROJECT_DIR$/.gradle/4.10.3/fileHashes/fileHashes.lock" beforeDir="false" afterPath="$PROJECT_DIR$/.gradle/4.10.3/fileHashes/fileHashes.lock" afterDir="false" />
<list default="true" id="d3a5f2c9-d22f-4974-88fb-d506b4e5feaf" name="Default Changelist" comment="cloud test">
<change afterPath="$PROJECT_DIR$/gateway/src/main/java/edu/prlab/tyler/iotgateway/gateway/config/RemoteConfig.java" afterDir="false" />
<change afterPath="$PROJECT_DIR$/gateway/src/main/java/edu/prlab/tyler/iotgateway/gateway/pojo/DeviceIndex.java" afterDir="false" />
<change afterPath="$PROJECT_DIR$/gateway/src/main/java/edu/prlab/tyler/iotgateway/gateway/pojo/PrivacyChoiceIndex.java" afterDir="false" />
<change afterPath="$PROJECT_DIR$/gateway/src/main/java/edu/prlab/tyler/iotgateway/gateway/pojo/auth/User.java" afterDir="false" />
<change afterPath="$PROJECT_DIR$/gateway/src/main/java/edu/prlab/tyler/iotgateway/gateway/repositories/DeviceIndexRepository.java" afterDir="false" />
<change afterPath="$PROJECT_DIR$/gateway/src/main/java/edu/prlab/tyler/iotgateway/gateway/repositories/PrivacyChoiceIndexRepository.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" />
<change beforePath="$PROJECT_DIR$/cloud/build.gradle" beforeDir="false" afterPath="$PROJECT_DIR$/cloud/build.gradle" afterDir="false" />
<change beforePath="$PROJECT_DIR$/cloud/src/main/java/edu/prlab/tyler/iotgateway/cloud/controllers/DeviceController.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud/src/main/java/edu/prlab/tyler/iotgateway/cloud/controllers/DeviceController.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/cloud/src/main/java/edu/prlab/tyler/iotgateway/cloud/controllers/GatewayController.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud/src/main/java/edu/prlab/tyler/iotgateway/cloud/controllers/GatewayController.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/cloud/src/main/java/edu/prlab/tyler/iotgateway/cloud/pojo/device/Device.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud/src/main/java/edu/prlab/tyler/iotgateway/cloud/pojo/device/Device.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/cloud/src/main/java/edu/prlab/tyler/iotgateway/cloud/pojo/privacy/PrivacyPolicyReport.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud/src/main/java/edu/prlab/tyler/iotgateway/cloud/pojo/privacy/PrivacyPolicyReport.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/cloud/src/main/java/edu/prlab/tyler/iotgateway/cloud/services/CrudService.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud/src/main/java/edu/prlab/tyler/iotgateway/cloud/services/CrudService.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/cloud/src/main/java/edu/prlab/tyler/iotgateway/cloud/services/SensitiveUserService.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud/src/main/java/edu/prlab/tyler/iotgateway/cloud/services/SensitiveUserService.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/cloud/src/test/java/edu/prlab/tyler/iotgateway/cloud/CloudHttpApiTest.java" beforeDir="false" afterPath="$PROJECT_DIR$/cloud/src/test/java/edu/prlab/tyler/iotgateway/cloud/CloudHttpApiTest.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/contract/build.gradle" beforeDir="false" afterPath="$PROJECT_DIR$/contract/build.gradle" afterDir="false" />
<change beforePath="$PROJECT_DIR$/contract/src/test/java/edu/prlab/tyler/iotgateway/contract/ContractTester.java" beforeDir="false" afterPath="$PROJECT_DIR$/contract/src/test/java/edu/prlab/tyler/iotgateway/contract/ContractTester.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/gateway/out/production/classes/edu/prlab/tyler/iotgateway/gateway/controllers/GatewayController.class" beforeDir="false" afterPath="$PROJECT_DIR$/gateway/out/production/classes/edu/prlab/tyler/iotgateway/gateway/controllers/GatewayController.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/gateway/out/production/classes/edu/prlab/tyler/iotgateway/gateway/services/DeviceService.class" beforeDir="false" afterPath="$PROJECT_DIR$/gateway/out/production/classes/edu/prlab/tyler/iotgateway/gateway/services/DeviceService.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/gateway/out/production/classes/edu/prlab/tyler/iotgateway/gateway/services/PrivacyService.class" beforeDir="false" afterPath="$PROJECT_DIR$/gateway/out/production/classes/edu/prlab/tyler/iotgateway/gateway/services/PrivacyService.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/gateway/out/test/classes/edu/prlab/tyler/iotgateway/gateway/GatewayHttpApiTest.class" beforeDir="false" afterPath="$PROJECT_DIR$/gateway/out/test/classes/edu/prlab/tyler/iotgateway/gateway/GatewayHttpApiTest.class" afterDir="false" />
<change beforePath="$PROJECT_DIR$/gateway/src/main/java/edu/prlab/tyler/iotgateway/gateway/controllers/GatewayController.java" beforeDir="false" afterPath="$PROJECT_DIR$/gateway/src/main/java/edu/prlab/tyler/iotgateway/gateway/controllers/GatewayController.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/gateway/src/main/java/edu/prlab/tyler/iotgateway/gateway/services/DeviceService.java" beforeDir="false" afterPath="$PROJECT_DIR$/gateway/src/main/java/edu/prlab/tyler/iotgateway/gateway/services/DeviceService.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/gateway/src/main/java/edu/prlab/tyler/iotgateway/gateway/services/PrivacyService.java" beforeDir="false" afterPath="$PROJECT_DIR$/gateway/src/main/java/edu/prlab/tyler/iotgateway/gateway/services/PrivacyService.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/settings.gradle" beforeDir="false" afterPath="$PROJECT_DIR$/settings.gradle" afterDir="false" />
<change beforePath="$PROJECT_DIR$/gateway/src/test/java/edu/prlab/tyler/iotgateway/gateway/GatewayHttpApiTest.java" beforeDir="false" afterPath="$PROJECT_DIR$/gateway/src/test/java/edu/prlab/tyler/iotgateway/gateway/GatewayHttpApiTest.java" afterDir="false" />
</list>
<ignored path="$PROJECT_DIR$/out/" />
<ignored path="$PROJECT_DIR$/build/" />
......@@ -73,10 +78,10 @@
<component name="FileEditorManager">
<leaf SIDE_TABS_SIZE_LIMIT_KEY="300">
<file pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/cloud/src/main/java/edu/prlab/tyler/iotgateway/cloud/controllers/DeviceController.java">
<entry file="file://$PROJECT_DIR$/gateway/src/main/java/edu/prlab/tyler/iotgateway/gateway/controllers/GatewayController.java">
<provider selected="true" editor-type-id="text-editor">
<state>
<caret line="61" column="5" lean-forward="true" selection-start-line="61" selection-start-column="5" selection-end-line="61" selection-end-column="5" />
<state relative-caret-position="679">
<caret line="38" column="5" selection-start-line="38" selection-start-column="5" selection-end-line="38" selection-end-column="5" />
<folding>
<element signature="imports" expanded="true" />
</folding>
......@@ -85,73 +90,74 @@
</entry>
</file>
<file pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/cloud/src/main/java/edu/prlab/tyler/iotgateway/cloud/services/CrudService.java">
<entry file="file://$PROJECT_DIR$/gateway/src/test/java/edu/prlab/tyler/iotgateway/gateway/GatewayHttpApiTest.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="23">
<caret line="15" column="41" selection-start-line="15" selection-start-column="41" selection-end-line="26" />
<folding>
<element signature="e#518#519#0" expanded="true" />
<element signature="e#568#569#0" expanded="true" />
<element signature="e#599#600#0" expanded="true" />
<element signature="e#646#647#0" expanded="true" />
</folding>
<state relative-caret-position="792">
<caret line="83" lean-forward="true" selection-start-line="83" selection-end-line="83" />
</state>
</provider>
</entry>
</file>
<file pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/cloud/src/main/java/edu/prlab/tyler/iotgateway/cloud/services/SensitiveUserService.java">
<entry file="file://$PROJECT_DIR$/cloud/src/main/java/edu/prlab/tyler/iotgateway/cloud/pojo/auth/SensitiveUser.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="90">
<caret line="10" column="13" selection-start-line="10" selection-start-column="13" selection-end-line="10" selection-end-column="13" />
<state relative-caret-position="396">
<caret line="27" column="29" lean-forward="true" selection-start-line="18" selection-start-column="4" selection-end-line="27" selection-end-column="29" />
</state>
</provider>
</entry>
</file>
<file pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/cloud/src/main/java/edu/prlab/tyler/iotgateway/cloud/services/PrivacyPolicyReportService.java">
<entry file="file://$PROJECT_DIR$/gateway/src/main/java/edu/prlab/tyler/iotgateway/gateway/services/DeviceService.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="-68">
<caret line="11" column="13" selection-start-line="11" selection-start-column="13" selection-end-line="11" selection-end-column="13" />
<state relative-caret-position="596">
<caret line="36" column="40" lean-forward="true" selection-start-line="36" selection-start-column="40" selection-end-line="36" selection-end-column="40" />
<folding>
<element signature="imports" expanded="true" />
</folding>
</state>
</provider>
</entry>
</file>
<file pinned="false" current-in-tab="true">
<entry file="file://$PROJECT_DIR$/cloud/src/test/java/edu/prlab/tyler/iotgateway/cloud/CloudHttpApiTest.java">
<file pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/gateway/src/main/java/edu/prlab/tyler/iotgateway/gateway/services/PrivacyService.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="717">
<caret line="50" column="5" lean-forward="true" selection-start-line="50" selection-start-column="5" selection-end-line="50" selection-end-column="5" />
<state relative-caret-position="686">
<caret line="54" column="43" selection-start-line="54" selection-start-column="15" selection-end-line="54" selection-end-column="43" />
<folding>
<element signature="imports" expanded="true" />
<element signature="e#2400#2401#0" expanded="true" />
<element signature="e#2450#2451#0" expanded="true" />
</folding>
</state>
</provider>
</entry>
</file>
<file pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/cloud/src/main/java/edu/prlab/tyler/iotgateway/cloud/pojo/privacy/PrivacyPolicyReport.java">
<entry file="file://$PROJECT_DIR$/gateway/src/main/java/edu/prlab/tyler/iotgateway/gateway/pojo/PrivacyChoiceIndex.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="183">
<caret line="28" lean-forward="true" selection-start-line="28" selection-end-line="28" />
<state relative-caret-position="378">
<caret line="21" column="1" lean-forward="true" selection-start-line="21" selection-start-column="1" selection-end-line="21" selection-end-column="1" />
<folding>
<element signature="imports" expanded="true" />
</folding>
</state>
</provider>
</entry>
</file>
<file pinned="false" current-in-tab="false">
<entry file="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.hibernate/hibernate-core/5.3.9.Final/e0922b9cc0621641bdec33b4e2869d033f918a4c/hibernate-core-5.3.9.Final-sources.jar!/org/hibernate/annotations/Cascade.java">
<entry file="file://$PROJECT_DIR$/cloud/src/main/java/edu/prlab/tyler/iotgateway/cloud/pojo/privacy/PrivacyContent.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="188">
<caret line="24" column="18" selection-start-line="24" selection-start-column="18" selection-end-line="24" selection-end-column="18" />
<state relative-caret-position="342">
<caret line="27" column="30" selection-start-line="27" selection-start-column="26" selection-end-line="27" selection-end-column="30" />
</state>
</provider>
</entry>
</file>
<file pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/cloud/src/main/java/edu/prlab/tyler/iotgateway/cloud/config/DefaultData.java">
<file pinned="false" current-in-tab="true">
<entry file="file://$PROJECT_DIR$/gateway/src/main/java/edu/prlab/tyler/iotgateway/gateway/pojo/auth/User.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="70">
<caret line="117" column="25" lean-forward="true" selection-start-line="66" selection-start-column="8" selection-end-line="117" selection-end-column="25" />
<state relative-caret-position="144">
<caret line="8" column="29" lean-forward="true" selection-start-line="8" selection-start-column="29" selection-end-line="8" selection-end-column="29" />
</state>
</provider>
</entry>
......@@ -159,17 +165,17 @@
<file pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/cloud/src/main/java/edu/prlab/tyler/iotgateway/cloud/controllers/GatewayController.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="392">
<caret line="39" selection-start-line="39" selection-end-line="39" />
<state relative-caret-position="522">
<caret line="40" lean-forward="true" selection-start-line="40" selection-end-line="40" />
</state>
</provider>
</entry>
</file>
<file pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/cloud/src/main/java/edu/prlab/tyler/iotgateway/cloud/services/PrivacyChoiceService.java">
<entry file="file://$PROJECT_DIR$/cloud/src/main/java/edu/prlab/tyler/iotgateway/cloud/pojo/privacy/PrivacyChoice.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="90">
<caret line="8" column="13" selection-start-line="8" selection-start-column="13" selection-end-line="8" selection-end-column="13" />
<state relative-caret-position="306">
<caret line="22" column="31" lean-forward="true" selection-start-line="22" selection-start-column="31" selection-end-line="22" selection-end-column="31" />
</state>
</provider>
</entry>
......@@ -193,13 +199,11 @@
<find>account</find>
<find>url</find>
<find>SIGN_UP_URL</find>
<find>user</find>
<find>Account</find>
<find>UserDetailsServiceImpl</find>
<find>matches</find>
<find>BCryptPasswordEncoder</find>
<find>User</find>
<find>SensitiveUser</find>
<find>ContractGasProvider</find>
<find>TransactionReceiptProcessor</find>
<find>Manager</find>
......@@ -213,6 +217,11 @@
<find>personalunlock</find>
<find>the</find>
<find>PrivacyPolicyReport</find>
<find>exchange</find>
<find>readByUDN</find>
<find>user</find>
<find>SensitiveUser</find>
<find>getPrivacyPolicyChoices</find>
</findStrings>
<replaceStrings>
<replace>cloud</replace>
......@@ -229,14 +238,6 @@
<component name="IdeDocumentHistory">
<option name="CHANGED_PATHS">
<list>
<option value="$PROJECT_DIR$/cloud/src/main/java/edu/prlab/tyler/iotgateway/cloud/CloudApplication.java" />
<option value="$PROJECT_DIR$/cloud/src/main/java/edu/prlab/tyler/iotgateway/cloud/pojo/auth/User.java" />
<option value="$PROJECT_DIR$/cloud/src/main/java/edu/prlab/tyler/iotgateway/cloud/pojo/privacy/p3p/Access.java" />
<option value="$PROJECT_DIR$/cloud/src/main/java/edu/prlab/tyler/iotgateway/cloud/pojo/privacy/p3p/Retention.java" />
<option value="$PROJECT_DIR$/cloud/src/main/java/edu/prlab/tyler/iotgateway/cloud/services/DeviceService.java" />
<option value="$PROJECT_DIR$/gateway/src/main/java/edu/prlab/tyler/iotgateway/gateway/services/DeviceService.java" />
<option value="$PROJECT_DIR$/cloud/src/main/java/edu/prlab/tyler/iotgateway/cloud/repositories/UserRepository.java" />
<option value="$PROJECT_DIR$/cloud/src/main/java/edu/prlab/tyler/iotgateway/cloud/repositories/DeviceRepository.java" />
<option value="$PROJECT_DIR$/cloud/src/main/java/edu/prlab/tyler/iotgateway/cloud/pojo/auth/Account.java" />
<option value="$PROJECT_DIR$/cloud/src/main/java/edu/prlab/tyler/iotgateway/cloud/repositories/AccountRepository.java" />
<option value="$PROJECT_DIR$/cloud/src/main/java/edu/prlab/tyler/iotgateway/cloud/services/AccountService.java" />
......@@ -256,11 +257,8 @@
<option value="$PROJECT_DIR$/cloud/src/main/resources/application.properties" />
<option value="$PROJECT_DIR$/cloud/src/main/java/edu/prlab/tyler/iotgateway/cloud/pojo/auth/SensitiveUser.java" />
<option value="$PROJECT_DIR$/cloud/src/main/java/edu/prlab/tyler/iotgateway/cloud/repositories/SensitiveUserRepository.java" />
<option value="$PROJECT_DIR$/cloud/src/main/java/edu/prlab/tyler/iotgateway/cloud/services/SensitiveUserService.java" />
<option value="$PROJECT_DIR$/cloud/src/main/java/edu/prlab/tyler/iotgateway/cloud/pojo/privacy/PrivacyContent.java" />
<option value="$PROJECT_DIR$/gateway/src/main/java/edu/prlab/tyler/iotgateway/gateway/controllers/GatewayController.java" />
<option value="$PROJECT_DIR$/cloud/src/main/java/edu/prlab/tyler/iotgateway/cloud/config/DefaultData.java" />
<option value="$PROJECT_DIR$/gateway/src/test/java/edu/prlab/tyler/iotgateway/gateway/GatewayHttpApiTest.java" />
<option value="$PROJECT_DIR$/contract/src/main/java/edu/prlab/tyler/iotgateway/contract/GatewayManager.java" />
<option value="$PROJECT_DIR$/contract/src/main/java/edu/prlab/tyler/iotgateway/contract/DeviceContract.java" />
<option value="$PROJECT_DIR$/contract/src/main/resources/application.properties" />
......@@ -273,13 +271,24 @@
<option value="$PROJECT_DIR$/settings.gradle" />
<option value="$PROJECT_DIR$/cloud/build.gradle" />
<option value="$PROJECT_DIR$/contract/build.gradle" />
<option value="$PROJECT_DIR$/gateway/src/main/java/edu/prlab/tyler/iotgateway/gateway/services/PrivacyService.java" />
<option value="$PROJECT_DIR$/cloud/src/main/java/edu/prlab/tyler/iotgateway/cloud/pojo/device/Device.java" />
<option value="$PROJECT_DIR$/cloud/src/main/java/edu/prlab/tyler/iotgateway/cloud/controllers/DeviceController.java" />
<option value="$PROJECT_DIR$/cloud/src/main/java/edu/prlab/tyler/iotgateway/cloud/controllers/GatewayController.java" />
<option value="$PROJECT_DIR$/cloud/src/main/java/edu/prlab/tyler/iotgateway/cloud/pojo/privacy/PrivacyPolicyReport.java" />
<option value="$PROJECT_DIR$/cloud/src/main/java/edu/prlab/tyler/iotgateway/cloud/services/CrudService.java" />
<option value="$PROJECT_DIR$/cloud/src/main/java/edu/prlab/tyler/iotgateway/cloud/services/SensitiveUserService.java" />
<option value="$PROJECT_DIR$/gateway/src/main/java/edu/prlab/tyler/iotgateway/gateway/repositories/PrivacyChoiseRecordRepository.java" />
<option value="$PROJECT_DIR$/cloud/src/main/java/edu/prlab/tyler/iotgateway/cloud/controllers/DeviceController.java" />
<option value="$PROJECT_DIR$/cloud/src/test/java/edu/prlab/tyler/iotgateway/cloud/CloudHttpApiTest.java" />
<option value="$PROJECT_DIR$/gateway/src/main/java/edu/prlab/tyler/iotgateway/gateway/repositories/DeviceRepository.java" />
<option value="$PROJECT_DIR$/gateway/src/main/java/edu/prlab/tyler/iotgateway/gateway/pojo/DeviceIndex.java" />
<option value="$PROJECT_DIR$/gateway/src/main/java/edu/prlab/tyler/iotgateway/gateway/pojo/PrivacyChoicesIndex.java" />
<option value="$PROJECT_DIR$/gateway/src/main/java/edu/prlab/tyler/iotgateway/gateway/repositories/PrivacyChoiceIndexRepository.java" />
<option value="$PROJECT_DIR$/gateway/src/test/java/edu/prlab/tyler/iotgateway/gateway/GatewayHttpApiTest.java" />
<option value="$PROJECT_DIR$/gateway/src/main/java/edu/prlab/tyler/iotgateway/gateway/config/RemoteConfig.java" />
<option value="$PROJECT_DIR$/cloud/src/main/java/edu/prlab/tyler/iotgateway/cloud/controllers/GatewayController.java" />
<option value="$PROJECT_DIR$/gateway/src/main/java/edu/prlab/tyler/iotgateway/gateway/services/DeviceService.java" />
<option value="$PROJECT_DIR$/gateway/src/main/java/edu/prlab/tyler/iotgateway/gateway/services/PrivacyService.java" />
<option value="$PROJECT_DIR$/gateway/src/main/java/edu/prlab/tyler/iotgateway/gateway/controllers/GatewayController.java" />
<option value="$PROJECT_DIR$/gateway/src/main/java/edu/prlab/tyler/iotgateway/gateway/pojo/auth/User.java" />
</list>
</option>
</component>
......@@ -361,6 +370,16 @@
<item name="cloud" type="462c0819:PsiDirectoryNode" />
<item name="controllers" type="462c0819:PsiDirectoryNode" />
</path>
<path>
<item name="iotgateway" type="b2602c69:ProjectViewProjectNode" />
<item name="iotgateway" type="8a07ba80:GradleTreeStructureProvider$GradleModuleDirectoryNode" />
<item name="cloud" type="8a07ba80:GradleTreeStructureProvider$GradleModuleDirectoryNode" />
<item name="src" type="462c0819:PsiDirectoryNode" />
<item name="main" type="8a07ba80:GradleTreeStructureProvider$GradleModuleDirectoryNode" />
<item name="java" type="462c0819:PsiDirectoryNode" />
<item name="cloud" type="462c0819:PsiDirectoryNode" />
<item name="model" type="462c0819:PsiDirectoryNode" />
</path>
<path>
<item name="iotgateway" type="b2602c69:ProjectViewProjectNode" />
<item name="iotgateway" type="8a07ba80:GradleTreeStructureProvider$GradleModuleDirectoryNode" />
......@@ -371,6 +390,17 @@
<item name="cloud" type="462c0819:PsiDirectoryNode" />
<item name="pojo" type="462c0819:PsiDirectoryNode" />
</path>
<path>
<item name="iotgateway" type="b2602c69:ProjectViewProjectNode" />
<item name="iotgateway" type="8a07ba80:GradleTreeStructureProvider$GradleModuleDirectoryNode" />
<item name="cloud" type="8a07ba80:GradleTreeStructureProvider$GradleModuleDirectoryNode" />
<item name="src" type="462c0819:PsiDirectoryNode" />
<item name="main" type="8a07ba80:GradleTreeStructureProvider$GradleModuleDirectoryNode" />
<item name="java" type="462c0819:PsiDirectoryNode" />
<item name="cloud" type="462c0819:PsiDirectoryNode" />
<item name="pojo" type="462c0819:PsiDirectoryNode" />
<item name="auth" type="462c0819:PsiDirectoryNode" />
</path>
<path>
<item name="iotgateway" type="b2602c69:ProjectViewProjectNode" />
<item name="iotgateway" type="8a07ba80:GradleTreeStructureProvider$GradleModuleDirectoryNode" />
......@@ -393,6 +423,16 @@
<item name="pojo" type="462c0819:PsiDirectoryNode" />
<item name="privacy" type="462c0819:PsiDirectoryNode" />
</path>
<path>
<item name="iotgateway" type="b2602c69:ProjectViewProjectNode" />
<item name="iotgateway" type="8a07ba80:GradleTreeStructureProvider$GradleModuleDirectoryNode" />
<item name="cloud" type="8a07ba80:GradleTreeStructureProvider$GradleModuleDirectoryNode" />
<item name="src" type="462c0819:PsiDirectoryNode" />
<item name="main" type="8a07ba80:GradleTreeStructureProvider$GradleModuleDirectoryNode" />
<item name="java" type="462c0819:PsiDirectoryNode" />
<item name="cloud" type="462c0819:PsiDirectoryNode" />
<item name="repositories" type="462c0819:PsiDirectoryNode" />
</path>
<path>
<item name="iotgateway" type="b2602c69:ProjectViewProjectNode" />
<item name="iotgateway" type="8a07ba80:GradleTreeStructureProvider$GradleModuleDirectoryNode" />
......@@ -467,6 +507,16 @@
<item name="java" type="462c0819:PsiDirectoryNode" />
<item name="gateway" type="462c0819:PsiDirectoryNode" />
</path>
<path>
<item name="iotgateway" type="b2602c69:ProjectViewProjectNode" />
<item name="iotgateway" type="8a07ba80:GradleTreeStructureProvider$GradleModuleDirectoryNode" />
<item name="gateway" type="8a07ba80:GradleTreeStructureProvider$GradleModuleDirectoryNode" />
<item name="src" type="462c0819:PsiDirectoryNode" />
<item name="main" type="8a07ba80:GradleTreeStructureProvider$GradleModuleDirectoryNode" />
<item name="java" type="462c0819:PsiDirectoryNode" />
<item name="gateway" type="462c0819:PsiDirectoryNode" />
<item name="config" type="462c0819:PsiDirectoryNode" />
</path>
<path>
<item name="iotgateway" type="b2602c69:ProjectViewProjectNode" />
<item name="iotgateway" type="8a07ba80:GradleTreeStructureProvider$GradleModuleDirectoryNode" />
......@@ -477,6 +527,37 @@
<item name="gateway" type="462c0819:PsiDirectoryNode" />
<item name="controllers" type="462c0819:PsiDirectoryNode" />
</path>
<path>
<item name="iotgateway" type="b2602c69:ProjectViewProjectNode" />
<item name="iotgateway" type="8a07ba80:GradleTreeStructureProvider$GradleModuleDirectoryNode" />
<item name="gateway" type="8a07ba80:GradleTreeStructureProvider$GradleModuleDirectoryNode" />
<item name="src" type="462c0819:PsiDirectoryNode" />
<item name="main" type="8a07ba80:GradleTreeStructureProvider$GradleModuleDirectoryNode" />
<item name="java" type="462c0819:PsiDirectoryNode" />
<item name="gateway" type="462c0819:PsiDirectoryNode" />
<item name="pojo" type="462c0819:PsiDirectoryNode" />
</path>
<path>
<item name="iotgateway" type="b2602c69:ProjectViewProjectNode" />
<item name="iotgateway" type="8a07ba80:GradleTreeStructureProvider$GradleModuleDirectoryNode" />
<item name="gateway" type="8a07ba80:GradleTreeStructureProvider$GradleModuleDirectoryNode" />
<item name="src" type="462c0819:PsiDirectoryNode" />
<item name="main" type="8a07ba80:GradleTreeStructureProvider$GradleModuleDirectoryNode" />
<item name="java" type="462c0819:PsiDirectoryNode" />
<item name="gateway" type="462c0819:PsiDirectoryNode" />
<item name="pojo" type="462c0819:PsiDirectoryNode" />
<item name="auth" type="462c0819:PsiDirectoryNode" />
</path>
<path>
<item name="iotgateway" type="b2602c69:ProjectViewProjectNode" />
<item name="iotgateway" type="8a07ba80:GradleTreeStructureProvider$GradleModuleDirectoryNode" />
<item name="gateway" type="8a07ba80:GradleTreeStructureProvider$GradleModuleDirectoryNode" />
<item name="src" type="462c0819:PsiDirectoryNode" />
<item name="main" type="8a07ba80:GradleTreeStructureProvider$GradleModuleDirectoryNode" />
<item name="java" type="462c0819:PsiDirectoryNode" />
<item name="gateway" type="462c0819:PsiDirectoryNode" />
<item name="repositories" type="462c0819:PsiDirectoryNode" />
</path>
<path>
<item name="iotgateway" type="b2602c69:ProjectViewProjectNode" />
<item name="iotgateway" type="8a07ba80:GradleTreeStructureProvider$GradleModuleDirectoryNode" />
......@@ -570,8 +651,9 @@
</RuleState>
</list>
</option>
<option name="contentProportion" value="0.15800866" />
</component>
<component name="RunManager" selected="JUnit.CloudHttpApiTest">
<component name="RunManager" selected="Spring Boot.GatewayApplication">
<configuration name="GatewayHttpApiTest" type="GradleRunConfiguration" factoryName="Gradle" temporary="true">
<ExternalSystemSettings>
<option name="executionName" />
......@@ -697,7 +779,7 @@
<workItem from="1556190478077" duration="66951000" />
<workItem from="1556716964298" duration="27672000" />
<workItem from="1557364868133" duration="620000" />
<workItem from="1557365602468" duration="9519000" />
<workItem from="1557365602468" duration="32208000" />
</task>
<task id="LOCAL-00001" summary="git init">
<created>1556204675975</created>
......@@ -727,43 +809,57 @@
<option name="project" value="LOCAL" />
<updated>1556797798683</updated>
</task>
<option name="localTasksCounter" value="5" />
<task id="LOCAL-00005" summary="cloud test">
<created>1557384379037</created>
<option name="number" value="00005" />
<option name="presentableId" value="LOCAL-00005" />
<option name="project" value="LOCAL" />
<updated>1557384379037</updated>
</task>
<task id="LOCAL-00006" summary="gateway api update">
<created>1557722261206</created>
<option name="number" value="00006" />
<option name="presentableId" value="LOCAL-00006" />
<option name="project" value="LOCAL" />
<updated>1557722261206</updated>
</task>
<option name="localTasksCounter" value="7" />
<servers />
</component>
<component name="TestHistory">
<history-entry file="CloudHttpApiTest - 2019.05.09 at 11h 09m 26s.xml">
<history-entry file="CloudHttpApiTest - 2019.05.09 at 15h 04m 00s.xml">
<configuration name="CloudHttpApiTest" configurationId="JUnit" />
</history-entry>
<history-entry file="CloudHttpApiTest - 2019.05.09 at 11h 12m 17s.xml">
<history-entry file="CloudHttpApiTest - 2019.05.09 at 15h 06m 36s.xml">
<configuration name="CloudHttpApiTest" configurationId="JUnit" />
</history-entry>
<history-entry file="CloudHttpApiTest - 2019.05.09 at 11h 15m 44s.xml">
<configuration name="CloudHttpApiTest" configurationId="JUnit" />
<history-entry file="GatewayHttpApiTest - 2019.05.09 at 15h 06m 42s.xml">
<configuration name="GatewayHttpApiTest" configurationId="JUnit" />
</history-entry>
<history-entry file="CloudHttpApiTest - 2019.05.09 at 11h 17m 45s.xml">
<history-entry file="CloudHttpApiTest - 2019.05.09 at 17h 47m 24s.xml">
<configuration name="CloudHttpApiTest" configurationId="JUnit" />
</history-entry>
<history-entry file="CloudHttpApiTest - 2019.05.09 at 11h 18m 34s.xml">
<history-entry file="CloudHttpApiTest - 2019.05.09 at 17h 48m 50s.xml">
<configuration name="CloudHttpApiTest" configurationId="JUnit" />
</history-entry>
<history-entry file="CloudHttpApiTest - 2019.05.09 at 11h 20m 43s.xml">
<history-entry file="CloudHttpApiTest - 2019.05.09 at 17h 49m 24s.xml">
<configuration name="CloudHttpApiTest" configurationId="JUnit" />
</history-entry>
<history-entry file="CloudHttpApiTest - 2019.05.09 at 11h 42m 55s.xml">
<configuration name="CloudHttpApiTest" configurationId="JUnit" />
<history-entry file="GatewayHttpApiTest - 2019.05.09 at 20h 20m 02s.xml">
<configuration name="GatewayHttpApiTest" configurationId="JUnit" />
</history-entry>
<history-entry file="CloudHttpApiTest - 2019.05.09 at 11h 44m 27s.xml">
<configuration name="CloudHttpApiTest" configurationId="JUnit" />
<history-entry file="GatewayHttpApiTest - 2019.05.09 at 20h 21m 01s.xml">
<configuration name="GatewayHttpApiTest" configurationId="JUnit" />
</history-entry>
<history-entry file="CloudHttpApiTest - 2019.05.09 at 11h 48m 00s.xml">
<configuration name="CloudHttpApiTest" configurationId="JUnit" />
<history-entry file="GatewayHttpApiTest - 2019.05.09 at 20h 21m 18s.xml">
<configuration name="GatewayHttpApiTest" configurationId="JUnit" />
</history-entry>
<history-entry file="CloudHttpApiTest - 2019.05.09 at 11h 58m 47s.xml">
<history-entry file="CloudHttpApiTest - 2019.05.10 at 12h 38m 46s.xml">
<configuration name="CloudHttpApiTest" configurationId="JUnit" />
</history-entry>
</component>
<component name="TimeTrackingManager">
<option name="totallyTimeSpent" value="107434000" />
<option name="totallyTimeSpent" value="130123000" />
</component>
<component name="TodoView">
<todo-panel id="selected-file">
......@@ -775,20 +871,19 @@
</todo-panel>
</component>
<component name="ToolWindowManager">
<frame x="-5" y="-5" width="1936" height="1056" extended-state="6" />
<editor active="true" />
<frame x="-8" y="-8" width="1936" height="1056" extended-state="6" />
<layout>
<window_info content_ui="combo" id="Project" order="0" visible="true" weight="0.18390192" />
<window_info active="true" content_ui="combo" id="Project" order="0" visible="true" weight="0.18070363" />
<window_info id="Structure" order="1" side_tool="true" weight="0.25" />
<window_info id="Designer" order="2" />
<window_info id="UI Designer" order="3" />
<window_info id="Favorites" order="4" side_tool="true" />
<window_info id="Web" order="5" side_tool="true" />
<window_info anchor="bottom" id="Run Dashboard" weight="0.48794064" />
<window_info anchor="bottom" id="Messages" order="0" sideWeight="0.49733475" weight="0.4916512" />
<window_info anchor="bottom" id="Run Dashboard" sideWeight="0.49946696" weight="0.19042316" />
<window_info anchor="bottom" id="Messages" order="0" sideWeight="0.49733475" weight="0.20824054" />
<window_info anchor="bottom" id="Message" order="1" />
<window_info anchor="bottom" id="Find" order="2" sideWeight="0.4989339" weight="0.4532294" />
<window_info active="true" anchor="bottom" id="Run" order="3" sideWeight="0.49840087" visible="true" weight="0.116926506" />
<window_info anchor="bottom" id="Run" order="3" sideWeight="0.49840087" weight="0.34632516" />
<window_info anchor="bottom" id="Debug" order="4" weight="0.40269965" />
<window_info anchor="bottom" id="Cvs" order="5" weight="0.25" />
<window_info anchor="bottom" id="Inspection" order="6" weight="0.4" />
......@@ -797,10 +892,10 @@
<window_info anchor="bottom" id="Spring" order="9" weight="0.3295838" />
<window_info anchor="bottom" id="Terminal" order="10" weight="0.32739422" />
<window_info anchor="bottom" id="Docker" order="11" show_stripe_button="false" />
<window_info anchor="bottom" id="Event Log" order="12" sideWeight="0.50159913" side_tool="true" weight="0.2224694" />
<window_info anchor="bottom" id="Event Log" order="12" sideWeight="0.50053304" side_tool="true" weight="0.48775056" />
<window_info anchor="bottom" id="Java Enterprise" order="13" weight="0.32925472" />
<window_info anchor="bottom" id="Database Changes" order="14" />
<window_info anchor="bottom" id="Version Control" order="15" />
<window_info anchor="bottom" id="Version Control" order="15" visible="true" weight="0.18819599" />
<window_info anchor="right" id="Commander" internal_type="SLIDING" order="0" type="SLIDING" weight="0.4" />
<window_info anchor="right" id="Ant Build" order="1" weight="0.25" />
<window_info anchor="right" content_ui="combo" id="Hierarchy" order="2" weight="0.25" />
......@@ -819,7 +914,9 @@
<MESSAGE value="git init" />
<MESSAGE value="contract Tester" />
<MESSAGE value="deviceContractTest" />
<option name="LAST_COMMIT_MESSAGE" value="deviceContractTest" />
<MESSAGE value="cloud test" />
<MESSAGE value="gateway api update" />
<option name="LAST_COMMIT_MESSAGE" value="gateway api update" />
</component>
<component name="XDebuggerManager">
<breakpoint-manager>
......@@ -852,370 +949,404 @@
</breakpoint-manager>
</component>
<component name="editorHistoryManager">
<entry file="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.web3j/core/4.0.4/f5bd332fb36b9e947967c930de1177a404ca1b2d/core-4.0.4-sources.jar!/org/web3j/protocol/core/Request.java">
<entry file="file://$PROJECT_DIR$/cloud/src/main/java/edu/prlab/tyler/iotgateway/cloud/CloudApplication.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="846">
<caret line="70" column="13" selection-start-line="70" selection-start-column="13" selection-end-line="70" selection-end-column="13" />
<state relative-caret-position="90">
<caret line="6" column="13" selection-start-line="6" selection-start-column="13" selection-end-line="6" selection-end-column="13" />
</state>
</provider>
</entry>
<entry file="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.web3j/core/4.0.4/f5bd332fb36b9e947967c930de1177a404ca1b2d/core-4.0.4-sources.jar!/org/web3j/protocol/admin/methods/response/NewAccountIdentifier.java">
<entry file="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.fasterxml.jackson.core/jackson-annotations/2.9.0/a0ad4e203304ccab7e01266fa814115850edb8a9/jackson-annotations-2.9.0-sources.jar!/com/fasterxml/jackson/annotation/JsonIgnore.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="198">
<caret line="11" column="18" selection-start-line="11" selection-start-column="18" selection-end-line="11" selection-end-column="18" />
<folding>
<element signature="e#313#314#0" expanded="true" />
<element signature="e#347#348#0" expanded="true" />
</folding>
<state relative-caret-position="37">
<caret line="51" column="18" selection-start-line="51" selection-start-column="18" selection-end-line="51" selection-end-column="18" />
</state>
</provider>
</entry>
<entry file="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.web3j/quorum/4.0.6/57e1fc8a1bc9846cb4c5ca82d070771cd0033389/quorum-4.0.6-sources.jar!/org/web3j/quorum/Quorum.java">
<entry file="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.fasterxml.jackson.core/jackson-annotations/2.9.0/a0ad4e203304ccab7e01266fa814115850edb8a9/jackson-annotations-2.9.0-sources.jar!/com/fasterxml/jackson/annotation/JsonProperty.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="180">
<caret line="19" column="65" lean-forward="true" selection-start-line="19" selection-start-column="54" selection-end-line="19" selection-end-column="72" />
<state relative-caret-position="91">
<caret line="123" column="11" selection-start-line="123" selection-start-column="11" selection-end-line="123" selection-end-column="11" />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/contract/src/test/java/edu/prlab/tyler/iotgateway/contract/ContractTester.java">
<entry file="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.springframework/spring-web/5.1.6.RELEASE/dfb9e2cce0376ed468b6988b88a08fa7fb43f355/spring-web-5.1.6.RELEASE-sources.jar!/org/springframework/web/method/support/InvocableHandlerMethod.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="90">
<caret line="36" column="5" selection-start-line="36" selection-start-column="5" selection-end-line="36" selection-end-column="5" />
<folding>
<element signature="imports" expanded="true" />
</folding>
<state relative-caret-position="75">
<caret line="137" selection-start-line="137" selection-end-line="137" />
</state>
</provider>
</entry>
<entry file="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.web3j/core/4.0.4/f5bd332fb36b9e947967c930de1177a404ca1b2d/core-4.0.4-sources.jar!/org/web3j/protocol/admin/JsonRpc2_0Admin.java">
<entry file="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.springframework/spring-webmvc/5.1.6.RELEASE/1ae0d2f0262265869a8f15ea170a01d9d0583b79/spring-webmvc-5.1.6.RELEASE-sources.jar!/org/springframework/web/servlet/mvc/method/annotation/ServletInvocableHandlerMethod.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="990">
<caret line="71" column="33" selection-start-line="71" selection-start-column="33" selection-end-line="71" selection-end-column="33" />
<folding>
<element signature="imports" expanded="true" />
</folding>
<state relative-caret-position="75">
<caret line="110" selection-start-line="110" selection-end-line="110" />
</state>
</provider>
</entry>
<entry file="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.web3j/core/4.0.4/f5bd332fb36b9e947967c930de1177a404ca1b2d/core-4.0.4-sources.jar!/org/web3j/protocol/admin/methods/response/PersonalUnlockAccount.java">
<entry file="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.springframework/spring-webmvc/5.1.6.RELEASE/1ae0d2f0262265869a8f15ea170a01d9d0583b79/spring-webmvc-5.1.6.RELEASE-sources.jar!/org/springframework/web/servlet/mvc/method/annotation/RequestMappingHandlerAdapter.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="144">
<caret line="8" column="34" selection-start-line="8" selection-start-column="19" selection-end-line="8" selection-end-column="34" />
<state relative-caret-position="75">
<caret line="796" selection-start-line="796" selection-end-line="796" />
</state>
</provider>
</entry>
<entry file="jar://C:/Program Files/Java/jdk1.8.0_201/src.zip!/java/util/List.java">
<entry file="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.springframework/spring-webmvc/5.1.6.RELEASE/1ae0d2f0262265869a8f15ea170a01d9d0583b79/spring-webmvc-5.1.6.RELEASE-sources.jar!/org/springframework/web/servlet/mvc/method/AbstractHandlerMethodAdapter.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="10764">
<caret line="621" column="8" selection-start-line="621" selection-start-column="8" selection-end-line="621" selection-end-column="8" />
<state relative-caret-position="83">
<caret line="86" selection-start-line="86" selection-end-line="86" />
</state>
</provider>
</entry>
<entry file="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.web3j/core/4.0.4/f5bd332fb36b9e947967c930de1177a404ca1b2d/core-4.0.4-sources.jar!/org/web3j/tx/ClientTransactionManager.java">
<entry file="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.springframework/spring-webmvc/5.1.6.RELEASE/1ae0d2f0262265869a8f15ea170a01d9d0583b79/spring-webmvc-5.1.6.RELEASE-sources.jar!/org/springframework/web/servlet/DispatcherServlet.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="468">
<caret line="32" column="43" selection-start-line="32" selection-start-column="32" selection-end-line="32" selection-end-column="43" />
<state relative-caret-position="75">
<caret line="944" selection-start-line="944" selection-end-line="944" />
</state>
</provider>
</entry>
<entry file="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.web3j/crypto/4.0.4/1c032d86ba248cb766dd1016f0ee2ca68a6ecde9/crypto-4.0.4-sources.jar!/org/web3j/crypto/Credentials.java">
<entry file="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.springframework/spring-webmvc/5.1.6.RELEASE/1ae0d2f0262265869a8f15ea170a01d9d0583b79/spring-webmvc-5.1.6.RELEASE-sources.jar!/org/springframework/web/servlet/FrameworkServlet.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="378">
<caret line="25" column="29" selection-start-line="25" selection-start-column="18" selection-end-line="25" selection-end-column="29" />
<state relative-caret-position="75">
<caret line="883" selection-start-line="883" selection-end-line="883" />
</state>
</provider>
</entry>
<entry file="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.web3j/core/4.0.4/f5bd332fb36b9e947967c930de1177a404ca1b2d/core-4.0.4-sources.jar!/org/web3j/protocol/admin/Admin.java">
<entry file="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.apache.tomcat.embed/tomcat-embed-core/9.0.17/22819cd1fae898e96ca84a3e8394b0f0b15d9f17/tomcat-embed-core-9.0.17-sources.jar!/org/apache/catalina/core/ApplicationFilterChain.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="414">
<caret line="35" column="4" selection-start-line="35" selection-start-column="4" selection-end-line="35" selection-end-column="4" />
<state relative-caret-position="75">
<caret line="167" selection-start-line="167" selection-end-line="167" />
</state>
</provider>
</entry>
<entry file="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.web3j/quorum/4.0.6/57e1fc8a1bc9846cb4c5ca82d070771cd0033389/quorum-4.0.6-sources.jar!/org/web3j/quorum/methods/request/PrivateTransaction.java">
<entry file="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.apache.tomcat.embed/tomcat-embed-websocket/9.0.17/7eb434a1927798863ed8813164b2744211c6ba62/tomcat-embed-websocket-9.0.17-sources.jar!/org/apache/tomcat/websocket/server/WsFilter.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="288">
<caret line="19" column="23" selection-start-line="19" selection-start-column="23" selection-end-line="19" selection-end-column="23" />
<state relative-caret-position="83">
<caret line="53" selection-start-line="53" selection-end-line="53" />
</state>
</provider>
</entry>
<entry file="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.web3j/quorum/4.0.6/57e1fc8a1bc9846cb4c5ca82d070771cd0033389/quorum-4.0.6-sources.jar!/org/web3j/quorum/tx/ClientTransactionManager.java">
<entry file="file://$PROJECT_DIR$/cloud/src/main/java/edu/prlab/tyler/iotgateway/cloud/pojo/device/Icon.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="1170">
<caret line="79" column="45" selection-start-line="79" selection-start-column="45" selection-end-line="79" selection-end-column="45" />
<state relative-caret-position="116">
<caret line="15" column="13" selection-start-line="15" selection-start-column="13" selection-end-line="15" selection-end-column="13" />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/contract/src/main/java/edu/prlab/tyler/iotgateway/contract/DeviceContract.java">
<entry file="file://$PROJECT_DIR$/cloud/src/main/java/edu/prlab/tyler/iotgateway/cloud/config/DefaultData.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="102">
<caret line="133" column="49" selection-start-line="133" selection-start-column="42" selection-end-line="133" selection-end-column="49" />
<state relative-caret-position="70">
<caret line="117" column="25" lean-forward="true" selection-start-line="66" selection-start-column="8" selection-end-line="117" selection-end-column="25" />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/build.gradle">
<provider selected="true" editor-type-id="text-editor" />
</entry>
<entry file="file://$PROJECT_DIR$/cloud/settings.gradle">
<provider selected="true" editor-type-id="text-editor" />
</entry>
<entry file="file://$PROJECT_DIR$/contract/settings.gradle">
<provider selected="true" editor-type-id="text-editor" />
<entry file="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.hibernate/hibernate-core/5.3.9.Final/e0922b9cc0621641bdec33b4e2869d033f918a4c/hibernate-core-5.3.9.Final-sources.jar!/org/hibernate/annotations/Cascade.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="188">
<caret line="24" column="18" selection-start-line="24" selection-start-column="18" selection-end-line="24" selection-end-column="18" />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/contract/src/main/java/edu/prlab/tyler/iotgateway/contract/ContractApplication.java">
<entry file="file://$PROJECT_DIR$/gateway/src/main/java/edu/prlab/tyler/iotgateway/gateway/GatewayApplication.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="90">
<caret line="6" column="13" selection-start-line="6" selection-start-column="13" selection-end-line="6" selection-end-column="13" />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/settings.gradle">
<entry file="file://$PROJECT_DIR$/cloud/src/main/java/edu/prlab/tyler/iotgateway/cloud/repositories/SensitiveUserRepository.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="54">
<caret line="3" column="19" selection-start-line="3" selection-start-column="19" selection-end-line="3" selection-end-column="19" />
<state relative-caret-position="90">
<caret line="8" column="17" selection-start-line="8" selection-start-column="17" selection-end-line="8" selection-end-column="17" />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/gateway/build.gradle">
<entry file="file://$PROJECT_DIR$/gateway/src/main/java/edu/prlab/tyler/iotgateway/gateway/repositories/PrivacyChoiseRecordRepository.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="630">
<caret line="35" column="39" selection-start-line="35" selection-start-column="39" selection-end-line="35" selection-end-column="39" />
<state relative-caret-position="144">
<caret line="8" column="1" lean-forward="true" selection-start-line="8" selection-start-column="1" selection-end-line="8" selection-end-column="1" />
<folding>
<element signature="imports" expanded="true" />
</folding>
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/cloud/build.gradle">
<entry file="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.fasterxml.jackson.core/jackson-databind/2.9.8/f66792d499a6fea6c7a743558f940e0ebf775ce3/jackson-databind-2.9.8-sources.jar!/com/fasterxml/jackson/databind/ObjectMapper.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="216">
<caret line="18" column="47" selection-end-line="18" selection-end-column="47" />
<state relative-caret-position="209">
<caret line="3019" column="50" selection-start-line="3019" selection-start-column="43" selection-end-line="3019" selection-end-column="56" />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/contract/build.gradle">
<entry file="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.fasterxml.jackson.core/jackson-core/2.9.8/ecaea301e166a0b48f11615864246de739b6619b/jackson-core-2.9.8-sources.jar!/com/fasterxml/jackson/core/type/TypeReference.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="216">
<caret line="12" lean-forward="true" selection-start-line="12" selection-end-line="12" />
<state relative-caret-position="81">
<caret line="26" column="22" selection-start-line="26" selection-start-column="22" selection-end-line="26" selection-end-column="22" />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/cloud/src/main/java/edu/prlab/tyler/iotgateway/cloud/CloudApplication.java">
<entry file="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.springframework/spring-web/5.1.6.RELEASE/dfb9e2cce0376ed468b6988b88a08fa7fb43f355/spring-web-5.1.6.RELEASE-sources.jar!/org/springframework/web/client/RestOperations.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="90">
<caret line="6" column="13" selection-start-line="6" selection-start-column="13" selection-end-line="6" selection-end-column="13" />
<state relative-caret-position="201">
<caret line="54" column="10" selection-start-line="54" selection-start-column="10" selection-end-line="54" selection-end-column="10" />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/gateway/src/test/java/edu/prlab/tyler/iotgateway/gateway/GatewayApplicationTests.java">
<entry file="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.springframework/spring-web/5.1.6.RELEASE/dfb9e2cce0376ed468b6988b88a08fa7fb43f355/spring-web-5.1.6.RELEASE-sources.jar!/org/springframework/web/client/RestTemplate.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="108">
<caret line="9" column="13" selection-start-line="9" selection-start-column="13" selection-end-line="9" selection-end-column="13" />
<state relative-caret-position="208">
<caret line="602" column="38" selection-start-line="602" selection-start-column="12" selection-end-line="602" selection-end-column="38" />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/gateway/src/main/java/edu/prlab/tyler/iotgateway/gateway/controllers/GatewayController.java">
<entry file="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.springframework/spring-core/5.1.6.RELEASE/aa74700198d24e1ed8b3c8ad663ad50733658ac6/spring-core-5.1.6.RELEASE-sources.jar!/org/springframework/core/ParameterizedTypeReference.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="39">
<caret line="22" column="7" selection-start-line="22" selection-start-column="7" selection-end-line="22" selection-end-column="7" />
<state relative-caret-position="-358">
<caret line="48" column="14" selection-start-line="48" selection-start-column="14" selection-end-line="48" selection-end-column="14" />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/gateway/src/main/java/edu/prlab/tyler/iotgateway/gateway/services/DeviceService.java">
<entry file="file://$PROJECT_DIR$/cloud/src/test/java/edu/prlab/tyler/iotgateway/cloud/CloudApplicationTests.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="90">
<caret line="5" column="13" selection-start-line="5" selection-start-column="13" selection-end-line="5" selection-end-column="13" />
<state relative-caret-position="108">
<caret line="13" column="13" selection-start-line="13" selection-start-column="13" selection-end-line="13" selection-end-column="13" />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/gateway/src/main/java/edu/prlab/tyler/iotgateway/gateway/services/PrivacyService.java">
<entry file="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/javax.persistence/javax.persistence-api/2.2/462dff65f6f8bde02ee9d8afe07fe9d50268199c/javax.persistence-api-2.2-sources.jar!/javax/persistence/GenerationType.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="123">
<caret line="26" lean-forward="true" selection-start-line="26" selection-end-line="26" />
<state relative-caret-position="414">
<caret line="52" column="55" selection-start-line="52" selection-start-column="55" selection-end-line="52" selection-end-column="55" />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/gateway/src/test/java/edu/prlab/tyler/iotgateway/gateway/GatewayHttpApiTest.java">
<entry file="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.springframework.data/spring-data-commons/2.1.6.RELEASE/d6c2a24d22131dd891c73ebc3c9ab3ee00fcbb8f/spring-data-commons-2.1.6.RELEASE-sources.jar!/org/springframework/data/repository/CrudRepository.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="792">
<caret line="80" column="37" lean-forward="true" selection-start-line="80" selection-start-column="37" selection-end-line="80" selection-end-column="37" />
<state relative-caret-position="136">
<caret line="35" column="20" selection-start-line="35" selection-start-column="20" selection-end-line="35" selection-end-column="20" />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/cloud/src/main/java/edu/prlab/tyler/iotgateway/cloud/services/DeviceService.java">
<entry file="file://$PROJECT_DIR$/gateway/src/main/java/edu/prlab/tyler/iotgateway/gateway/repositories/DeviceIndexRepository.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="29">
<caret line="10" column="41" lean-forward="true" selection-start-line="10" selection-start-column="41" selection-end-line="10" selection-end-column="41" />
<state relative-caret-position="108">
<caret line="6" lean-forward="true" selection-start-line="6" selection-end-line="8" selection-end-column="1" />
<folding>
<element signature="imports" expanded="true" />
</folding>
</state>
</provider>
</entry>
<entry file="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.fasterxml.jackson.core/jackson-annotations/2.9.0/a0ad4e203304ccab7e01266fa814115850edb8a9/jackson-annotations-2.9.0-sources.jar!/com/fasterxml/jackson/annotation/JsonIgnore.java">
<entry file="file://$PROJECT_DIR$/gateway/src/main/java/edu/prlab/tyler/iotgateway/gateway/repositories/PrivacyChoiceIndexRepository.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="37">
<caret line="51" column="18" selection-start-line="51" selection-start-column="18" selection-end-line="51" selection-end-column="18" />
<state relative-caret-position="126">
<caret line="7" column="17" selection-start-line="7" selection-start-column="17" selection-end-line="7" selection-end-column="17" />
<folding>
<element signature="imports" expanded="true" />
</folding>
</state>
</provider>
</entry>
<entry file="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.fasterxml.jackson.core/jackson-annotations/2.9.0/a0ad4e203304ccab7e01266fa814115850edb8a9/jackson-annotations-2.9.0-sources.jar!/com/fasterxml/jackson/annotation/JsonProperty.java">
<entry file="file://$PROJECT_DIR$/gateway/src/test/java/edu/prlab/tyler/iotgateway/gateway/GatewayApplicationTests.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="91">
<caret line="123" column="11" selection-start-line="123" selection-start-column="11" selection-end-line="123" selection-end-column="11" />
<state relative-caret-position="108">
<caret line="9" column="13" selection-start-line="9" selection-start-column="13" selection-end-line="9" selection-end-column="13" />
</state>
</provider>
</entry>
<entry file="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.springframework/spring-web/5.1.6.RELEASE/dfb9e2cce0376ed468b6988b88a08fa7fb43f355/spring-web-5.1.6.RELEASE-sources.jar!/org/springframework/web/method/support/InvocableHandlerMethod.java">
<entry file="file://$PROJECT_DIR$/cloud/src/main/java/edu/prlab/tyler/iotgateway/cloud/repositories/DeviceRepository.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="75">
<caret line="137" selection-start-line="137" selection-end-line="137" />
<state relative-caret-position="90">
<caret line="9" column="17" selection-start-line="9" selection-start-column="17" selection-end-line="9" selection-end-column="17" />
</state>
</provider>
</entry>
<entry file="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.springframework/spring-webmvc/5.1.6.RELEASE/1ae0d2f0262265869a8f15ea170a01d9d0583b79/spring-webmvc-5.1.6.RELEASE-sources.jar!/org/springframework/web/servlet/mvc/method/annotation/ServletInvocableHandlerMethod.java">
<entry file="file://$PROJECT_DIR$/cloud/src/main/java/edu/prlab/tyler/iotgateway/cloud/pojo/device/Device.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="75">
<caret line="110" selection-start-line="110" selection-end-line="110" />
<state relative-caret-position="-241">
<caret line="13" selection-start-line="13" selection-end-line="14" />
</state>
</provider>
</entry>
<entry file="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.springframework/spring-webmvc/5.1.6.RELEASE/1ae0d2f0262265869a8f15ea170a01d9d0583b79/spring-webmvc-5.1.6.RELEASE-sources.jar!/org/springframework/web/servlet/mvc/method/annotation/RequestMappingHandlerAdapter.java">
<entry file="file://$PROJECT_DIR$/gateway/src/main/java/edu/prlab/tyler/iotgateway/gateway/config/RemoteConfig.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="75">
<caret line="796" selection-start-line="796" selection-end-line="796" />
<state relative-caret-position="180">
<caret line="12" column="1" lean-forward="true" selection-start-line="12" selection-start-column="1" selection-end-line="12" selection-end-column="1" />
<folding>
<element signature="imports" expanded="true" />
</folding>
</state>
</provider>
</entry>
<entry file="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.springframework/spring-webmvc/5.1.6.RELEASE/1ae0d2f0262265869a8f15ea170a01d9d0583b79/spring-webmvc-5.1.6.RELEASE-sources.jar!/org/springframework/web/servlet/mvc/method/AbstractHandlerMethodAdapter.java">
<entry file="file://$PROJECT_DIR$/cloud/src/main/java/edu/prlab/tyler/iotgateway/cloud/services/CrudService.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="83">
<caret line="86" selection-start-line="86" selection-end-line="86" />
<state relative-caret-position="252">
<caret line="18" column="23" selection-start-line="18" selection-start-column="19" selection-end-line="18" selection-end-column="23" />
<folding>
<element signature="e#518#519#0" expanded="true" />
<element signature="e#568#569#0" expanded="true" />
<element signature="e#599#600#0" expanded="true" />
<element signature="e#646#647#0" expanded="true" />
</folding>
</state>
</provider>
</entry>
<entry file="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.springframework/spring-webmvc/5.1.6.RELEASE/1ae0d2f0262265869a8f15ea170a01d9d0583b79/spring-webmvc-5.1.6.RELEASE-sources.jar!/org/springframework/web/servlet/DispatcherServlet.java">
<entry file="file://$PROJECT_DIR$/cloud/src/main/java/edu/prlab/tyler/iotgateway/cloud/services/DeviceService.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="75">
<caret line="944" selection-start-line="944" selection-end-line="944" />
<state relative-caret-position="90">
<caret line="10" column="42" selection-start-line="10" selection-start-column="42" selection-end-line="10" selection-end-column="42" />
</state>
</provider>
</entry>
<entry file="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.springframework/spring-webmvc/5.1.6.RELEASE/1ae0d2f0262265869a8f15ea170a01d9d0583b79/spring-webmvc-5.1.6.RELEASE-sources.jar!/org/springframework/web/servlet/FrameworkServlet.java">
<entry file="file://$PROJECT_DIR$/cloud/src/main/java/edu/prlab/tyler/iotgateway/cloud/services/SensitiveUserService.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="75">
<caret line="883" selection-start-line="883" selection-end-line="883" />
<state relative-caret-position="234">
<caret line="20" column="5" selection-start-line="20" selection-start-column="5" selection-end-line="20" selection-end-column="5" />
<folding>
<element signature="e#618#619#0" expanded="true" />
<element signature="e#683#684#0" expanded="true" />
</folding>
</state>
</provider>
</entry>
<entry file="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.apache.tomcat.embed/tomcat-embed-core/9.0.17/22819cd1fae898e96ca84a3e8394b0f0b15d9f17/tomcat-embed-core-9.0.17-sources.jar!/org/apache/catalina/core/ApplicationFilterChain.java">
<entry file="file://$PROJECT_DIR$/cloud/src/main/java/edu/prlab/tyler/iotgateway/cloud/controllers/DeviceController.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="75">
<caret line="167" selection-start-line="167" selection-end-line="167" />
<state relative-caret-position="324">
<caret line="32" column="30" selection-start-line="32" selection-start-column="17" selection-end-line="32" selection-end-column="30" />
<folding>
<element signature="imports" expanded="true" />
</folding>
</state>
</provider>
</entry>
<entry file="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.apache.tomcat.embed/tomcat-embed-websocket/9.0.17/7eb434a1927798863ed8813164b2744211c6ba62/tomcat-embed-websocket-9.0.17-sources.jar!/org/apache/tomcat/websocket/server/WsFilter.java">
<entry file="file://$PROJECT_DIR$/cloud/src/test/java/edu/prlab/tyler/iotgateway/cloud/CloudHttpApiTest.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="83">
<caret line="53" selection-start-line="53" selection-end-line="53" />
<state relative-caret-position="18">
<caret line="155" column="25" lean-forward="true" selection-start-line="155" selection-start-column="25" selection-end-line="155" selection-end-column="25" />
<folding>
<element signature="imports" expanded="true" />
</folding>
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/cloud/src/main/java/edu/prlab/tyler/iotgateway/cloud/pojo/device/Icon.java">
<entry file="file://$PROJECT_DIR$/cloud/src/main/java/edu/prlab/tyler/iotgateway/cloud/services/PrivacyPolicyReportService.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="116">
<caret line="15" column="13" selection-start-line="15" selection-start-column="13" selection-end-line="15" selection-end-column="13" />
<state relative-caret-position="108">
<caret line="11" column="13" selection-start-line="11" selection-start-column="13" selection-end-line="11" selection-end-column="13" />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/cloud/src/main/java/edu/prlab/tyler/iotgateway/cloud/pojo/device/Device.java">
<entry file="file://$PROJECT_DIR$/cloud/src/main/java/edu/prlab/tyler/iotgateway/cloud/services/PrivacyChoiceService.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="71">
<caret line="23" column="22" lean-forward="true" selection-start-line="23" selection-start-column="22" selection-end-line="23" selection-end-column="22" />
<state relative-caret-position="126">
<caret line="12" column="5" selection-start-line="12" selection-start-column="5" selection-end-line="12" selection-end-column="5" />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/cloud/src/main/java/edu/prlab/tyler/iotgateway/cloud/pojo/privacy/PrivacyPolicy.java">
<entry file="file://$PROJECT_DIR$/cloud/src/main/java/edu/prlab/tyler/iotgateway/cloud/pojo/privacy/PrivacyPolicyReport.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="162">
<caret line="26" lean-forward="true" selection-start-line="26" selection-end-line="26" />
<state relative-caret-position="360">
<caret line="28" lean-forward="true" selection-start-line="28" selection-end-line="28" />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/cloud/src/main/java/edu/prlab/tyler/iotgateway/cloud/services/PrivacyChoiceService.java">
<entry file="file://$PROJECT_DIR$/cloud/src/main/java/edu/prlab/tyler/iotgateway/cloud/pojo/privacy/PrivacyPolicy.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="90">
<caret line="8" column="13" selection-start-line="8" selection-start-column="13" selection-end-line="8" selection-end-column="13" />
<state relative-caret-position="270">
<caret line="26" selection-start-line="26" selection-end-line="26" />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/cloud/src/main/java/edu/prlab/tyler/iotgateway/cloud/services/PrivacyPolicyReportService.java">
<entry file="file://$PROJECT_DIR$/gateway/src/main/java/edu/prlab/tyler/iotgateway/gateway/pojo/DeviceIndex.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="-68">
<caret line="11" column="13" selection-start-line="11" selection-start-column="13" selection-end-line="11" selection-end-column="13" />
<state relative-caret-position="288">
<caret line="16" column="23" lean-forward="true" selection-start-line="16" selection-start-column="23" selection-end-line="16" selection-end-column="23" />
<folding>
<element signature="imports" expanded="true" />
</folding>
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/cloud/src/main/java/edu/prlab/tyler/iotgateway/cloud/config/DefaultData.java">
<entry file="file://$PROJECT_DIR$/gateway/src/main/java/edu/prlab/tyler/iotgateway/gateway/services/DeviceService.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="70">
<caret line="117" column="25" lean-forward="true" selection-start-line="66" selection-start-column="8" selection-end-line="117" selection-end-column="25" />
<state relative-caret-position="596">
<caret line="36" column="40" lean-forward="true" selection-start-line="36" selection-start-column="40" selection-end-line="36" selection-end-column="40" />
<folding>
<element signature="imports" expanded="true" />
</folding>
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/cloud/src/main/java/edu/prlab/tyler/iotgateway/cloud/services/SensitiveUserService.java">
<entry file="file://$PROJECT_DIR$/gateway/src/main/java/edu/prlab/tyler/iotgateway/gateway/services/PrivacyService.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="90">
<caret line="10" column="13" selection-start-line="10" selection-start-column="13" selection-end-line="10" selection-end-column="13" />
<state relative-caret-position="686">
<caret line="54" column="43" selection-start-line="54" selection-start-column="15" selection-end-line="54" selection-end-column="43" />
<folding>
<element signature="e#2400#2401#0" expanded="true" />
<element signature="e#2450#2451#0" expanded="true" />
</folding>
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/cloud/src/main/java/edu/prlab/tyler/iotgateway/cloud/controllers/DeviceController.java">
<entry file="file://$PROJECT_DIR$/gateway/src/main/java/edu/prlab/tyler/iotgateway/gateway/pojo/PrivacyChoiceIndex.java">
<provider selected="true" editor-type-id="text-editor">
<state>
<caret line="61" column="5" lean-forward="true" selection-start-line="61" selection-start-column="5" selection-end-line="61" selection-end-column="5" />
<state relative-caret-position="378">
<caret line="21" column="1" lean-forward="true" selection-start-line="21" selection-start-column="1" selection-end-line="21" selection-end-column="1" />
<folding>
<element signature="imports" expanded="true" />
</folding>
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/cloud/src/main/java/edu/prlab/tyler/iotgateway/cloud/controllers/GatewayController.java">
<entry file="file://$PROJECT_DIR$/gateway/src/test/java/edu/prlab/tyler/iotgateway/gateway/GatewayHttpApiTest.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="392">
<caret line="39" selection-start-line="39" selection-end-line="39" />
<state relative-caret-position="792">
<caret line="83" lean-forward="true" selection-start-line="83" selection-end-line="83" />
</state>
</provider>
</entry>
<entry file="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.hibernate/hibernate-core/5.3.9.Final/e0922b9cc0621641bdec33b4e2869d033f918a4c/hibernate-core-5.3.9.Final-sources.jar!/org/hibernate/annotations/Cascade.java">
<entry file="file://$PROJECT_DIR$/cloud/src/main/java/edu/prlab/tyler/iotgateway/cloud/controllers/GatewayController.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="188">
<caret line="24" column="18" selection-start-line="24" selection-start-column="18" selection-end-line="24" selection-end-column="18" />
<state relative-caret-position="522">
<caret line="40" lean-forward="true" selection-start-line="40" selection-end-line="40" />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/cloud/src/main/java/edu/prlab/tyler/iotgateway/cloud/services/CrudService.java">
<entry file="file://$PROJECT_DIR$/gateway/src/main/java/edu/prlab/tyler/iotgateway/gateway/controllers/GatewayController.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="23">
<caret line="15" column="41" selection-start-line="15" selection-start-column="41" selection-end-line="26" />
<state relative-caret-position="679">
<caret line="38" column="5" selection-start-line="38" selection-start-column="5" selection-end-line="38" selection-end-column="5" />
<folding>
<element signature="e#518#519#0" expanded="true" />
<element signature="e#568#569#0" expanded="true" />
<element signature="e#599#600#0" expanded="true" />
<element signature="e#646#647#0" expanded="true" />
<element signature="imports" expanded="true" />
</folding>
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/cloud/src/main/java/edu/prlab/tyler/iotgateway/cloud/pojo/privacy/PrivacyPolicyReport.java">
<entry file="file://$PROJECT_DIR$/cloud/src/main/java/edu/prlab/tyler/iotgateway/cloud/pojo/privacy/PrivacyChoice.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="183">
<caret line="28" lean-forward="true" selection-start-line="28" selection-end-line="28" />
<state relative-caret-position="306">
<caret line="22" column="31" lean-forward="true" selection-start-line="22" selection-start-column="31" selection-end-line="22" selection-end-column="31" />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/cloud/src/test/java/edu/prlab/tyler/iotgateway/cloud/CloudHttpApiTest.java">
<entry file="file://$PROJECT_DIR$/cloud/src/main/java/edu/prlab/tyler/iotgateway/cloud/pojo/privacy/PrivacyContent.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="717">
<caret line="50" column="5" lean-forward="true" selection-start-line="50" selection-start-column="5" selection-end-line="50" selection-end-column="5" />
<folding>
<element signature="imports" expanded="true" />
</folding>
<state relative-caret-position="342">
<caret line="27" column="30" selection-start-line="27" selection-start-column="26" selection-end-line="27" selection-end-column="30" />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/cloud/src/main/java/edu/prlab/tyler/iotgateway/cloud/pojo/auth/SensitiveUser.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="396">
<caret line="27" column="29" lean-forward="true" selection-start-line="18" selection-start-column="4" selection-end-line="27" selection-end-column="29" />
</state>
</provider>
</entry>
<entry file="file://$PROJECT_DIR$/gateway/src/main/java/edu/prlab/tyler/iotgateway/gateway/pojo/auth/User.java">
<provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="144">
<caret line="8" column="29" lean-forward="true" selection-start-line="8" selection-start-column="29" selection-end-line="8" selection-end-column="29" />
</state>
</provider>
</entry>
......
......@@ -8,13 +8,10 @@ import edu.prlab.tyler.iotgateway.cloud.services.PrivacyPolicyReportService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.*;
import java.util.ArrayList;
import java.util.List;
import java.util.Optional;
@RestController
@RequestMapping("device")
@RequestMapping
public class DeviceController {
private DeviceService deviceService;
private PrivacyPolicyReportService privacyPolicyReportService;
......@@ -26,21 +23,21 @@ public class DeviceController {
this.privacyPolicyReportService = privacyPolicyReportService;
}
@PostMapping
@PostMapping("/device")
public ResponseEntity<Device> addDevice(@RequestBody Device device) {
return deviceService.add(device)
.map(ResponseEntity::ok)
.orElseGet(()->ResponseEntity.noContent().build());
}
@GetMapping("/{id}")
public ResponseEntity<Device> readDevice(@PathVariable(value = "id",required = false) long id) {
return deviceService.read(id)
@GetMapping("/device/{udn}")
public ResponseEntity<Device> readDevice(@PathVariable(value = "udn",required = false) String udn) {
return deviceService.readByUDN(udn)
.map(ResponseEntity::ok)
.orElseGet(()->ResponseEntity.noContent().build());
}
@GetMapping
@GetMapping("/device")
public ResponseEntity<Iterable<Device>> readDevices() {
return Optional.of(deviceService.readll())
.map(ResponseEntity::ok)
......@@ -48,10 +45,7 @@ public class DeviceController {
}
// @GetMapping
// public ResponseEntity<Iterable<Device>> readDevices(SensitiveUser user) {
// return Optional.of(deviceService.readll())
// .map(ResponseEntity::ok)
// .orElseGet(()->ResponseEntity.noContent().build());
// public ResponseEntity<Iterable<Device>> readDevicesByUser(SensitiveUser user) {
// }
@PostMapping("/privacy")
......@@ -61,7 +55,6 @@ public class DeviceController {
.orElseGet(()->ResponseEntity.noContent().build());
}
@GetMapping("/privacy/{UDN}")
public ResponseEntity<PrivacyPolicyReport> readPrivacyPolicyReportByDevice(@PathVariable(value = "UDN") String UDN) {
return privacyPolicyReportService.readByDevice(UDN)
......
......@@ -6,10 +6,13 @@ import edu.prlab.tyler.iotgateway.cloud.services.PrivacyChoiceService;
import edu.prlab.tyler.iotgateway.cloud.services.SensitiveUserService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RestController;
import java.util.Optional;
@RestController
public class GatewayController {
private PrivacyChoiceService privacyChoiceService;
......@@ -22,8 +25,6 @@ public class GatewayController {
this.sensitiveUserService = sensitiveUserService;
}
@PostMapping("/choice")
public ResponseEntity<PrivacyChoice> setPrivacyChoice(@RequestBody PrivacyChoice privacyChoice) {
return privacyChoiceService.add(privacyChoice)
......@@ -31,10 +32,17 @@ public class GatewayController {
.orElseGet(() -> ResponseEntity.noContent().build());
}
@PostMapping("user")
public ResponseEntity<SensitiveUser> setUser(@RequestBody SensitiveUser sensitiveUser) {
return sensitiveUserService.add(sensitiveUser)
@GetMapping("/choice")
public ResponseEntity<Iterable<PrivacyChoice>> readPrivacyChoice() {
return Optional.of(privacyChoiceService.readll())
.map(ResponseEntity::ok)
.orElseGet(()->ResponseEntity.noContent().build());
.orElseGet(() -> ResponseEntity.noContent().build());
}
// @PostMapping("/user")
// public ResponseEntity<SensitiveUser> setUser(@RequestBody SensitiveUser sensitiveUser) {
// return sensitiveUserService.add(sensitiveUser)
// .map(ResponseEntity::ok)
// .orElseGet(()->ResponseEntity.noContent().build());
// }
}
......@@ -17,7 +17,6 @@ public class SensitiveUserService {
}
public Optional<SensitiveUser> add(SensitiveUser pojo) {
System.out.println(pojo.toString());
return Optional.of(repository.saveAndFlush(pojo));
}
}
......@@ -26,7 +26,6 @@ import org.springframework.test.web.servlet.request.MockMvcRequestBuilders;
import org.springframework.test.web.servlet.setup.MockMvcBuilders;
import org.springframework.web.context.WebApplicationContext;
import java.util.ArrayList;
import java.util.Arrays;
import static org.springframework.test.web.servlet.result.MockMvcResultHandlers.print;
......@@ -89,13 +88,13 @@ public class CloudHttpApiTest {
.andDo(print())
.andExpect(status().isOk())
.andReturn();
ArrayList<Device> devices = mapper.readValue(result.getResponse().getContentAsString(),
new TypeReference<ArrayList<Device>>() {
Iterable<Device> devices = mapper.readValue(result.getResponse().getContentAsString(),
new TypeReference<Iterable<Device>>() {
});
Assert.assertNotNull(devices);
result = mvc.perform(MockMvcRequestBuilders
.get("/device/" + device.getId())
.get("/device/" + device.getUdn())
.accept(MediaType.APPLICATION_JSON_UTF8))
.andDo(print())
.andExpect(status().isOk())
......@@ -157,7 +156,7 @@ public class CloudHttpApiTest {
.build();
result = mvc.perform(MockMvcRequestBuilders
.post("/device/privacy")
.post("/privacy")
.contentType(MediaType.APPLICATION_JSON_UTF8)
.accept(MediaType.APPLICATION_JSON_UTF8)
.content(mapper.writeValueAsString(privacyPolicyReport)))
......@@ -168,9 +167,8 @@ public class CloudHttpApiTest {
PrivacyPolicyReport.class);
Assert.assertNotNull(returnPolicy);
result = mvc.perform(MockMvcRequestBuilders
.get("/device/privacy/" + device.getUdn())
.get("/privacy/" + device.getUdn())
.accept(MediaType.APPLICATION_JSON_UTF8))
.andDo(print())
.andExpect(status().isOk())
......@@ -200,5 +198,16 @@ public class CloudHttpApiTest {
.andReturn();
Assert.assertNotNull(result);
result = mvc.perform(MockMvcRequestBuilders
.get("/choice")
.accept(MediaType.APPLICATION_JSON_UTF8))
.andDo(print())
.andExpect(status().isOk())
.andReturn();
Iterable<PrivacyChoice> privacyChoices = mapper.readValue(result.getResponse().getContentAsString(),
new TypeReference<Iterable<PrivacyChoice>>(){});
Assert.assertNotNull(privacyChoices);
}
}
package edu.prlab.tyler.iotgateway.gateway.config;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.client.RestTemplate;
@Configuration
public class RemoteConfig {
@Bean
public RestTemplate restTemplate() {
return new RestTemplate();
}
}
......@@ -46,6 +46,7 @@ public class GatewayController {
.orElseGet(() -> ResponseEntity.noContent().build());
}
//
@GetMapping("/device/{UDN}")
public ResponseEntity<PrivacyPolicyReport> readPrivacyPolicyReportByDevice(@PathVariable(value = "UDN") String UDN) {
return privacyService.getRelatedPrivacyPolicies(UDN)
......@@ -69,5 +70,4 @@ public class GatewayController {
.map(ResponseEntity::ok)
.orElseGet(() -> ResponseEntity.noContent().build());
}
}
package edu.prlab.tyler.iotgateway.gateway.pojo;
import lombok.Builder;
import lombok.Data;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
@Data
@Builder
@Entity
public class DeviceIndex {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private String udn;
}
package edu.prlab.tyler.iotgateway.gateway.pojo;
import edu.prlab.tyler.iotgateway.cloud.pojo.privacy.PrivacyChoice;
import lombok.Builder;
import lombok.Data;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import java.time.LocalDateTime;
@Data
@Builder
@Entity
public class PrivacyChoiceIndex {
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private long id;
private LocalDateTime localDateTime;
private PrivacyChoice privacyChoice;
}
package edu.prlab.tyler.iotgateway.gateway.pojo.auth;
public class User {
private String username;
private String password;
// private BigInteger publicKey;
// private BigInteger privateKey;
// private String address;
}
package edu.prlab.tyler.iotgateway.gateway.repositories;
import edu.prlab.tyler.iotgateway.gateway.pojo.DeviceIndex;
import org.springframework.data.repository.CrudRepository;
import org.springframework.stereotype.Repository;
@Repository
public interface DeviceIndexRepository extends CrudRepository<DeviceIndex, String> {
}
package edu.prlab.tyler.iotgateway.gateway.repositories;
import edu.prlab.tyler.iotgateway.gateway.pojo.PrivacyChoiceIndex;
import org.springframework.data.repository.CrudRepository;
import org.springframework.stereotype.Repository;
@Repository
public interface PrivacyChoiceIndexRepository extends CrudRepository<PrivacyChoiceIndex, String> {
}
package edu.prlab.tyler.iotgateway.gateway.services;
import edu.prlab.tyler.iotgateway.cloud.pojo.device.Device;
import edu.prlab.tyler.iotgateway.gateway.pojo.DeviceIndex;
import edu.prlab.tyler.iotgateway.gateway.repositories.DeviceIndexRepository;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.core.ParameterizedTypeReference;
import org.springframework.http.HttpMethod;
import org.springframework.stereotype.Service;
import org.springframework.web.client.RestTemplate;
import java.util.Optional;
@Service
public class DeviceService {
private RestTemplate template;
DeviceIndexRepository deviceIndexRepository;
private String cloudAddress;
@Autowired
public DeviceService(DeviceIndexRepository deviceIndexRepository,
RestTemplate template) {
this.deviceIndexRepository = deviceIndexRepository;
this.template = template;
}
@Value("${iotgateway.cloud.address}")
private void setCloudAddress(String cloudAddress) {
this.cloudAddress = cloudAddress;
}
//TODO bind and read from blockchain
public Optional<Device> bindDeviceAndGateway(String udn) {
return Optional.ofNullable(template.getForObject(cloudAddress + "/device/" + udn, Device.class));
// .map(device -> deviceIndexRepository.save(DeviceIndex.builder().udn(udn).build()));
}
public Optional<Iterable<Device>> readDevices() {
return Optional.ofNullable(template.exchange(cloudAddress + "/device", HttpMethod.GET,null,
new ParameterizedTypeReference<Iterable<Device>>() { }).getBody());
}
}
\ No newline at end of file
package edu.prlab.tyler.iotgateway.gateway.services;
import edu.prlab.tyler.iotgateway.cloud.pojo.privacy.PrivacyChoice;
import edu.prlab.tyler.iotgateway.cloud.pojo.privacy.PrivacyContent;
import edu.prlab.tyler.iotgateway.cloud.pojo.privacy.PrivacyPolicyReport;
import edu.prlab.tyler.iotgateway.gateway.pojo.PrivacyChoiceIndex;
import edu.prlab.tyler.iotgateway.gateway.repositories.PrivacyChoiceIndexRepository;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.core.ParameterizedTypeReference;
import org.springframework.http.HttpMethod;
import org.springframework.stereotype.Service;
import org.springframework.web.client.RestTemplate;
import java.time.LocalDateTime;
import java.util.Optional;
@Service
public class PrivacyService {
private RestTemplate template;
private PrivacyChoiceIndexRepository privacyChoiceIndexRepository;
private String cloudAddress;
public PrivacyService() {
this.template = new RestTemplate();
@Autowired
public PrivacyService(PrivacyChoiceIndexRepository privacyChoiceIndexRepository,
RestTemplate template) {
this.template = template;
this.privacyChoiceIndexRepository = privacyChoiceIndexRepository;
}
@Value("${iotgateway.cloud.address}")
......@@ -25,15 +33,25 @@ public class PrivacyService {
this.cloudAddress = cloudAddress;
}
public Optional<PrivacyPolicyReport> getRelatedPrivacyPolicies(String Udn) {
return Optional.ofNullable(template.getForObject(cloudAddress + "/device/privacy/" + Udn, PrivacyPolicyReport.class));
public Optional<PrivacyPolicyReport> getRelatedPrivacyPolicies(String udn) {
return Optional.ofNullable(template.getForObject(cloudAddress + "/privacy/" + udn, PrivacyPolicyReport.class));
}
public Optional<PrivacyChoice> setPrivacyPolicyChoice(PrivacyChoice privacyChoice) {
return Optional.of(privacyChoice)
.map((choice) -> template.postForObject(cloudAddress + "/choice", choice, PrivacyChoice.class));
.map(choice -> privacyChoiceIndexRepository.save(PrivacyChoiceIndex.builder()
.localDateTime(LocalDateTime.now())
.privacyChoice(choice)
.build()))
.map((choice) -> template.postForObject(cloudAddress + "/choice", choice.getPrivacyChoice(), PrivacyChoice.class));
}
public void getPrivacyPolicyChoice(PrivacyContent content) {
// public Optional<Iterable<PrivacyChoice>> getPrivacyPolicyChoices() {
// return Optional.ofNullable(template.exchange(cloudAddress + "/choice", HttpMethod.GET, null,
// new ParameterizedTypeReference<Iterable<PrivacyChoice>>() { }).getBody());
// }
public Iterable<PrivacyChoiceIndex> getPrivacyPolicyChoices() {
return privacyChoiceIndexRepository.findAll();
}
}
......@@ -46,9 +46,11 @@ public class GatewayHttpApiTest {
//取得裝置清單
//拿取隱私政策
MvcResult result = mvc.perform(MockMvcRequestBuilders
.get("/privacy/" + "a1252c49-4188-4e6d-a32e-66604c664fb8")
.get("/device/" + "a1252c49-4188-4e6d-a32e-66604c664fb8")
.accept(MediaType.APPLICATION_JSON_UTF8))
.andDo(print())
.andExpect(status().isOk())
......@@ -79,5 +81,14 @@ public class GatewayHttpApiTest {
.andExpect(status().isOk())
.andReturn();
Assert.assertNotNull(result);
//取得所有隱私偏好
// result = mvc.perform(MockMvcRequestBuilders
// .get("/choice")
// .accept(MediaType.APPLICATION_JSON_UTF8))
// .andDo(print())
// .andExpect(status().isOk())
// .andReturn();
// Assert.assertNotNull(result);
}
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment