osducli 0.0.48__py3-none-any.whl → 0.0.50__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (128) hide show
  1. osducli/VERSION +1 -1
  2. osducli/commands/wbdutil/config_file.py +19 -2
  3. osducli/commands/wbdutil/download.py +6 -4
  4. osducli/commands/wbdutil/ingest/data.py +4 -2
  5. osducli/commands/wbdutil/ingest/wellbore.py +4 -2
  6. osducli/commands/wbdutil/list/curves.py +1 -1
  7. osducli/commands/wbdutil/parse/convert.py +4 -2
  8. osducli/commands/wellbore_ddms/_const.py +9 -0
  9. osducli/commands/wellbore_ddms/log_recognition/__init__.py +13 -0
  10. osducli/commands/wellbore_ddms/log_recognition/family.py +37 -0
  11. osducli/commands/wellbore_ddms/log_recognition/upload_catalog.py +40 -0
  12. osducli/commands/wellbore_ddms/ppfgdataset/__init__.py +13 -0
  13. osducli/commands/wellbore_ddms/ppfgdataset/add.py +42 -0
  14. osducli/commands/wellbore_ddms/ppfgdataset/data/__init__.py +13 -0
  15. osducli/commands/wellbore_ddms/ppfgdataset/data/add.py +40 -0
  16. osducli/commands/wellbore_ddms/ppfgdataset/data/get.py +44 -0
  17. osducli/commands/wellbore_ddms/ppfgdataset/delete.py +35 -0
  18. osducli/commands/wellbore_ddms/ppfgdataset/get.py +35 -0
  19. osducli/commands/wellbore_ddms/ppfgdataset/session/__init__.py +13 -0
  20. osducli/commands/wellbore_ddms/ppfgdataset/session/create.py +35 -0
  21. osducli/commands/wellbore_ddms/ppfgdataset/session/get.py +36 -0
  22. osducli/commands/wellbore_ddms/ppfgdataset/session/list.py +35 -0
  23. osducli/commands/wellbore_ddms/ppfgdataset/session/send.py +41 -0
  24. osducli/commands/wellbore_ddms/ppfgdataset/session/update.py +37 -0
  25. osducli/commands/wellbore_ddms/ppfgdataset/version/__init__.py +13 -0
  26. osducli/commands/wellbore_ddms/ppfgdataset/version/data/__init__.py +13 -0
  27. osducli/commands/wellbore_ddms/ppfgdataset/version/data/get.py +45 -0
  28. osducli/commands/wellbore_ddms/ppfgdataset/version/get.py +36 -0
  29. osducli/commands/wellbore_ddms/ppfgdataset/version/list.py +35 -0
  30. osducli/commands/wellbore_ddms/trajectory/__init__.py +13 -0
  31. osducli/commands/wellbore_ddms/trajectory/add.py +42 -0
  32. osducli/commands/wellbore_ddms/trajectory/data/__init__.py +13 -0
  33. osducli/commands/wellbore_ddms/trajectory/data/add.py +40 -0
  34. osducli/commands/wellbore_ddms/trajectory/data/get.py +44 -0
  35. osducli/commands/wellbore_ddms/trajectory/delete.py +35 -0
  36. osducli/commands/wellbore_ddms/trajectory/get.py +35 -0
  37. osducli/commands/wellbore_ddms/trajectory/session/__init__.py +13 -0
  38. osducli/commands/wellbore_ddms/trajectory/session/create.py +35 -0
  39. osducli/commands/wellbore_ddms/trajectory/session/get.py +36 -0
  40. osducli/commands/wellbore_ddms/trajectory/session/list.py +35 -0
  41. osducli/commands/wellbore_ddms/trajectory/session/send.py +41 -0
  42. osducli/commands/wellbore_ddms/trajectory/session/update.py +37 -0
  43. osducli/commands/wellbore_ddms/trajectory/version/__init__.py +13 -0
  44. osducli/commands/wellbore_ddms/trajectory/version/data/__init__.py +13 -0
  45. osducli/commands/wellbore_ddms/trajectory/version/data/get.py +45 -0
  46. osducli/commands/wellbore_ddms/trajectory/version/get.py +36 -0
  47. osducli/commands/wellbore_ddms/trajectory/version/list.py +35 -0
  48. osducli/commands/wellbore_ddms/well/__init__.py +13 -0
  49. osducli/commands/wellbore_ddms/well/add.py +42 -0
  50. osducli/commands/wellbore_ddms/well/delete.py +35 -0
  51. osducli/commands/wellbore_ddms/well/get.py +35 -0
  52. osducli/commands/wellbore_ddms/well/version/__init__.py +13 -0
  53. osducli/commands/wellbore_ddms/well/version/get.py +36 -0
  54. osducli/commands/wellbore_ddms/well/version/list.py +35 -0
  55. osducli/commands/wellbore_ddms/well_log/add.py +4 -4
  56. osducli/commands/wellbore_ddms/well_log/data/__init__.py +1 -1
  57. osducli/commands/wellbore_ddms/well_log/data/add.py +5 -5
  58. osducli/commands/wellbore_ddms/well_log/data/get.py +5 -5
  59. osducli/commands/wellbore_ddms/well_log/data/statistics.py +36 -0
  60. osducli/commands/wellbore_ddms/well_log/delete.py +35 -0
  61. osducli/commands/wellbore_ddms/well_log/get.py +5 -5
  62. osducli/commands/wellbore_ddms/well_log/session/__init__.py +13 -0
  63. osducli/commands/wellbore_ddms/well_log/session/create.py +35 -0
  64. osducli/commands/wellbore_ddms/well_log/session/get.py +36 -0
  65. osducli/commands/wellbore_ddms/well_log/session/list.py +35 -0
  66. osducli/commands/wellbore_ddms/well_log/session/send.py +41 -0
  67. osducli/commands/wellbore_ddms/well_log/session/update.py +37 -0
  68. osducli/commands/wellbore_ddms/well_log/version/__init__.py +13 -0
  69. osducli/commands/wellbore_ddms/well_log/version/data/__init__.py +13 -0
  70. osducli/commands/wellbore_ddms/well_log/version/data/get.py +45 -0
  71. osducli/commands/wellbore_ddms/well_log/version/data/statistics.py +37 -0
  72. osducli/commands/wellbore_ddms/well_log/version/data/update_stats.py +36 -0
  73. osducli/commands/wellbore_ddms/well_log/version/get.py +36 -0
  74. osducli/commands/wellbore_ddms/well_log/version/list.py +35 -0
  75. osducli/commands/wellbore_ddms/wellbore/__init__.py +13 -0
  76. osducli/commands/wellbore_ddms/wellbore/add.py +42 -0
  77. osducli/commands/wellbore_ddms/wellbore/delete.py +35 -0
  78. osducli/commands/wellbore_ddms/wellbore/get.py +35 -0
  79. osducli/commands/wellbore_ddms/wellbore/version/__init__.py +13 -0
  80. osducli/commands/wellbore_ddms/wellbore/version/get.py +36 -0
  81. osducli/commands/wellbore_ddms/wellbore/version/list.py +35 -0
  82. osducli/commands/wellbore_ddms/wellbore_intervalset/__init__.py +13 -0
  83. osducli/commands/wellbore_ddms/wellbore_intervalset/add.py +44 -0
  84. osducli/commands/wellbore_ddms/wellbore_intervalset/delete.py +37 -0
  85. osducli/commands/wellbore_ddms/wellbore_intervalset/get.py +37 -0
  86. osducli/commands/wellbore_ddms/wellbore_intervalset/version/__init__.py +13 -0
  87. osducli/commands/wellbore_ddms/wellbore_intervalset/version/get.py +38 -0
  88. osducli/commands/wellbore_ddms/wellbore_intervalset/version/list.py +37 -0
  89. osducli/commands/wellbore_ddms/wellbore_markerset/__init__.py +13 -0
  90. osducli/commands/wellbore_ddms/wellbore_markerset/add.py +42 -0
  91. osducli/commands/wellbore_ddms/wellbore_markerset/delete.py +35 -0
  92. osducli/commands/wellbore_ddms/wellbore_markerset/get.py +35 -0
  93. osducli/commands/wellbore_ddms/wellbore_markerset/version/__init__.py +13 -0
  94. osducli/commands/wellbore_ddms/wellbore_markerset/version/get.py +36 -0
  95. osducli/commands/wellbore_ddms/wellbore_markerset/version/list.py +35 -0
  96. osducli/commands/wellbore_ddms/welllog_acquisition/__init__.py +13 -0
  97. osducli/commands/wellbore_ddms/welllog_acquisition/add.py +42 -0
  98. osducli/commands/wellbore_ddms/welllog_acquisition/delete.py +35 -0
  99. osducli/commands/wellbore_ddms/welllog_acquisition/get.py +35 -0
  100. osducli/commands/wellbore_ddms/welllog_acquisition/version/__init__.py +13 -0
  101. osducli/commands/wellbore_ddms/welllog_acquisition/version/get.py +36 -0
  102. osducli/commands/wellbore_ddms/welllog_acquisition/version/list.py +35 -0
  103. osducli/commands/wellbore_ddms/wellpressure_test_raw_measurement/__init__.py +13 -0
  104. osducli/commands/wellbore_ddms/wellpressure_test_raw_measurement/add.py +44 -0
  105. osducli/commands/wellbore_ddms/wellpressure_test_raw_measurement/data/__init__.py +13 -0
  106. osducli/commands/wellbore_ddms/wellpressure_test_raw_measurement/data/add.py +42 -0
  107. osducli/commands/wellbore_ddms/wellpressure_test_raw_measurement/data/get.py +46 -0
  108. osducli/commands/wellbore_ddms/wellpressure_test_raw_measurement/delete.py +37 -0
  109. osducli/commands/wellbore_ddms/wellpressure_test_raw_measurement/get.py +37 -0
  110. osducli/commands/wellbore_ddms/wellpressure_test_raw_measurement/session/__init__.py +13 -0
  111. osducli/commands/wellbore_ddms/wellpressure_test_raw_measurement/session/create.py +37 -0
  112. osducli/commands/wellbore_ddms/wellpressure_test_raw_measurement/session/get.py +38 -0
  113. osducli/commands/wellbore_ddms/wellpressure_test_raw_measurement/session/list.py +37 -0
  114. osducli/commands/wellbore_ddms/wellpressure_test_raw_measurement/session/send.py +43 -0
  115. osducli/commands/wellbore_ddms/wellpressure_test_raw_measurement/session/update.py +39 -0
  116. osducli/commands/wellbore_ddms/wellpressure_test_raw_measurement/version/__init__.py +13 -0
  117. osducli/commands/wellbore_ddms/wellpressure_test_raw_measurement/version/data/__init__.py +13 -0
  118. osducli/commands/wellbore_ddms/wellpressure_test_raw_measurement/version/data/get.py +47 -0
  119. osducli/commands/wellbore_ddms/wellpressure_test_raw_measurement/version/get.py +38 -0
  120. osducli/commands/wellbore_ddms/wellpressure_test_raw_measurement/version/list.py +37 -0
  121. osducli/wbddms_client.py +160 -27
  122. {osducli-0.0.48.dist-info → osducli-0.0.50.dist-info}/METADATA +10 -1
  123. osducli-0.0.50.dist-info/RECORD +242 -0
  124. osducli-0.0.48.dist-info/RECORD +0 -135
  125. {osducli-0.0.48.dist-info → osducli-0.0.50.dist-info}/WHEEL +0 -0
  126. {osducli-0.0.48.dist-info → osducli-0.0.50.dist-info}/entry_points.txt +0 -0
  127. {osducli-0.0.48.dist-info → osducli-0.0.50.dist-info}/licenses/LICENSE.md +0 -0
  128. {osducli-0.0.48.dist-info → osducli-0.0.50.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,35 @@
1
+ # Licensed under the Apache License, Version 2.0 (the "License");
2
+ # you may not use this file except in compliance with the License.
3
+ # You may obtain a copy of the License at
4
+ #
5
+ # http://www.apache.org/licenses/LICENSE-2.0
6
+ #
7
+ # Unless required by applicable law or agreed to in writing, software
8
+ # distributed under the License is distributed on an "AS IS" BASIS,
9
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
10
+ # See the License for the specific language governing permissions and
11
+ # limitations under the License.
12
+ """WellLog list session command"""
13
+ import click
14
+
15
+ from osducli.click_cli import CustomClickCommand, State, command_with_output
16
+ from osducli.cliclient import CliOsduClient, handle_cli_exceptions
17
+ from osducli.commands.wellbore_ddms._const import WELLBORE_DDMS_WELL_LOG_PATH
18
+
19
+
20
+ # click entry point
21
+ @click.command(cls=CustomClickCommand, help="List session of the given WellLog")
22
+ @click.option("-id", "--id", "_id", help="WellLog id to search for", required=True)
23
+ @handle_cli_exceptions
24
+ @command_with_output()
25
+ def _click_command(state: State, _id: str):
26
+ return get_versions(state, _id)
27
+
28
+
29
+ def get_versions(state: State, record_id: str):
30
+ """List session of the given WellLog"""
31
+ client = CliOsduClient(state.config)
32
+ wellbore_client = client.get_wellbore_ddms_client(url_extra_path=WELLBORE_DDMS_WELL_LOG_PATH)
33
+ response = wellbore_client.list_wbddms_session(record_id)
34
+ client.check_status_code(response)
35
+ return response.json()
@@ -0,0 +1,41 @@
1
+ # Licensed under the Apache License, Version 2.0 (the "License");
2
+ # you may not use this file except in compliance with the License.
3
+ # You may obtain a copy of the License at
4
+ #
5
+ # http://www.apache.org/licenses/LICENSE-2.0
6
+ #
7
+ # Unless required by applicable law or agreed to in writing, software
8
+ # distributed under the License is distributed on an "AS IS" BASIS,
9
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
10
+ # See the License for the specific language governing permissions and
11
+ # limitations under the License.
12
+ """WellLog send data chunk command"""
13
+ import click
14
+
15
+ from osducli.click_cli import CustomClickCommand, State, command_with_output
16
+ from osducli.cliclient import CliOsduClient, handle_cli_exceptions
17
+ from osducli.commands.wellbore_ddms._const import WELLBORE_DDMS_WELL_LOG_PATH
18
+
19
+
20
+ # click entry point
21
+ @click.command(cls=CustomClickCommand, help="Send a data chunk within a session")
22
+ @click.option("-id", "--id", "_id", help="WellLog id to append chunk", required=True)
23
+ @click.option("-s", "--session", "_ses", help="WellLog session id to append chunk", required=True)
24
+ @click.option("-f", "--file", "_file", help="WellLog chunk file to append", required=True)
25
+ @handle_cli_exceptions
26
+ @command_with_output()
27
+ def _click_command(state: State, _id: str, _ses: str, _file: str):
28
+ return send_chunk(state, _id, _ses, _file)
29
+
30
+
31
+ def send_chunk(state: State, record_id: str, session_id: str, data_file: str):
32
+ """Send a data chunk within a session"""
33
+ client = CliOsduClient(state.config)
34
+ wellbore_client = client.get_wellbore_ddms_client(url_extra_path=WELLBORE_DDMS_WELL_LOG_PATH)
35
+
36
+ with open(data_file, 'rb') as file:
37
+ file_data = file.read()
38
+
39
+ response = wellbore_client.add_wbddms_data_chunk(record_id, session_id, file_data)
40
+ client.check_status_code(response)
41
+ return response.json()
@@ -0,0 +1,37 @@
1
+ # Licensed under the Apache License, Version 2.0 (the "License");
2
+ # you may not use this file except in compliance with the License.
3
+ # You may obtain a copy of the License at
4
+ #
5
+ # http://www.apache.org/licenses/LICENSE-2.0
6
+ #
7
+ # Unless required by applicable law or agreed to in writing, software
8
+ # distributed under the License is distributed on an "AS IS" BASIS,
9
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
10
+ # See the License for the specific language governing permissions and
11
+ # limitations under the License.
12
+ """WellLog update session command"""
13
+ import click
14
+
15
+ from osducli.click_cli import CustomClickCommand, State, command_with_output
16
+ from osducli.cliclient import CliOsduClient, handle_cli_exceptions
17
+ from osducli.commands.wellbore_ddms._const import WELLBORE_DDMS_WELL_LOG_PATH
18
+
19
+
20
+ # click entry point
21
+ @click.command(cls=CustomClickCommand, help="Update a session, either commit or abandon")
22
+ @click.option("-id", "--id", "_id", help="WellLog id to update", required=True)
23
+ @click.option("-s", "--session", "_ses", help="WellLog session id to update", required=True)
24
+ @click.option("-a", "--abandon", "_aba", is_flag=True, help="Abandon session. Will commit session if flag is omitted", required=False)
25
+ @handle_cli_exceptions
26
+ @command_with_output()
27
+ def _click_command(state: State, _id: str, _ses: str, _aba: bool):
28
+ return update_session(state, _id, _ses, _aba)
29
+
30
+
31
+ def update_session(state: State, record_id: str, session_id: str, abandon: bool = False):
32
+ """Update a session, either commit or abandon"""
33
+ client = CliOsduClient(state.config)
34
+ wellbore_client = client.get_wellbore_ddms_client(url_extra_path=WELLBORE_DDMS_WELL_LOG_PATH)
35
+ response = wellbore_client.update_wbddms_session(record_id, session_id, abandon)
36
+ client.check_status_code(response)
37
+ return response.json()
@@ -0,0 +1,13 @@
1
+ # Licensed under the Apache License, Version 2.0 (the "License");
2
+ # you may not use this file except in compliance with the License.
3
+ # You may obtain a copy of the License at
4
+ #
5
+ # http://www.apache.org/licenses/LICENSE-2.0
6
+ #
7
+ # Unless required by applicable law or agreed to in writing, software
8
+ # distributed under the License is distributed on an "AS IS" BASIS,
9
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
10
+ # See the License for the specific language governing permissions and
11
+ # limitations under the License.
12
+
13
+ """Wellbore DDMS WellLog version commands"""
@@ -0,0 +1,13 @@
1
+ # Licensed under the Apache License, Version 2.0 (the "License");
2
+ # you may not use this file except in compliance with the License.
3
+ # You may obtain a copy of the License at
4
+ #
5
+ # http://www.apache.org/licenses/LICENSE-2.0
6
+ #
7
+ # Unless required by applicable law or agreed to in writing, software
8
+ # distributed under the License is distributed on an "AS IS" BASIS,
9
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
10
+ # See the License for the specific language governing permissions and
11
+ # limitations under the License.
12
+
13
+ """Wellbore DDMS WellLog version data commands"""
@@ -0,0 +1,45 @@
1
+ # Licensed under the Apache License, Version 2.0 (the "License");
2
+ # you may not use this file except in compliance with the License.
3
+ # You may obtain a copy of the License at
4
+ #
5
+ # http://www.apache.org/licenses/LICENSE-2.0
6
+ #
7
+ # Unless required by applicable law or agreed to in writing, software
8
+ # distributed under the License is distributed on an "AS IS" BASIS,
9
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
10
+ # See the License for the specific language governing permissions and
11
+ # limitations under the License.
12
+ """WellLog get version data command"""
13
+ import os
14
+
15
+ import click
16
+
17
+ from osducli.click_cli import CustomClickCommand, State, command_with_output
18
+ from osducli.cliclient import CliOsduClient, handle_cli_exceptions
19
+ from osducli.commands.wellbore_ddms._const import WELLBORE_DDMS_WELL_LOG_PATH
20
+
21
+
22
+ # click entry point
23
+ @click.command(cls=CustomClickCommand, help="Get WellLog data by id and version")
24
+ @click.option("-id", "--id", "_id", help="WellLog id to search for", required=True)
25
+ @click.option("-v", "--version", "_ver", help="WellLog version to search for", required=True)
26
+ @click.option("-f", "--file", "_file", help="File to save WellLog data", required=True)
27
+ @handle_cli_exceptions
28
+ @command_with_output()
29
+ def _click_command(state: State, _id: str, _ver: str, _file: str):
30
+ return get_data(state, _id, _ver, _file)
31
+
32
+
33
+ def get_data(state: State, record_id: str, version_id: str, out_file: str):
34
+ """Get WellLog data by id and version"""
35
+ client = CliOsduClient(state.config)
36
+ wellbore_client = client.get_wellbore_ddms_client(url_extra_path=WELLBORE_DDMS_WELL_LOG_PATH)
37
+ response = wellbore_client.get_wbddms_version_data(record_id, version_id)
38
+ client.check_status_code(response)
39
+
40
+ with open(out_file, 'wb') as file:
41
+ file.write(response.content)
42
+
43
+ filename = os.path.abspath(file.name)
44
+ print("File created: ", filename)
45
+ return filename
@@ -0,0 +1,37 @@
1
+ # Licensed under the Apache License, Version 2.0 (the "License");
2
+ # you may not use this file except in compliance with the License.
3
+ # You may obtain a copy of the License at
4
+ #
5
+ # http://www.apache.org/licenses/LICENSE-2.0
6
+ #
7
+ # Unless required by applicable law or agreed to in writing, software
8
+ # distributed under the License is distributed on an "AS IS" BASIS,
9
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
10
+ # See the License for the specific language governing permissions and
11
+ # limitations under the License.
12
+ """WellLog get version data statistics command"""
13
+ import click
14
+
15
+ from osducli.click_cli import CustomClickCommand, State, command_with_output
16
+ from osducli.cliclient import CliOsduClient, handle_cli_exceptions
17
+ from osducli.commands.wellbore_ddms._const import WELLBORE_DDMS_WELL_LOG_PATH
18
+
19
+
20
+ # click entry point
21
+ @click.command(cls=CustomClickCommand, help="Get WellLog data statistics by id and version")
22
+ @click.option("-id", "--id", "_id", help="WellLog id to search for", required=True)
23
+ @click.option("-v", "--version", "_ver", help="WellLog version to search for", required=True)
24
+ @click.option("-cu", "--curves", "_curves", help="List of curves or array to be returned. All curves if empty", required=False)
25
+ @handle_cli_exceptions
26
+ @command_with_output()
27
+ def _click_command(state: State, _id: str, _ver: str, _curves: str):
28
+ return get_statistics(state, _id, _ver, _curves)
29
+
30
+
31
+ def get_statistics(state: State, record_id: str, version_id: str, curves: str):
32
+ """Get WellLog data statistics"""
33
+ client = CliOsduClient(state.config)
34
+ wellbore_client = client.get_wellbore_ddms_client(url_extra_path=WELLBORE_DDMS_WELL_LOG_PATH)
35
+ response = wellbore_client.get_wbddms_version_statistics(record_id, version_id, curves)
36
+ client.check_status_code(response)
37
+ return response.json()
@@ -0,0 +1,36 @@
1
+ # Licensed under the Apache License, Version 2.0 (the "License");
2
+ # you may not use this file except in compliance with the License.
3
+ # You may obtain a copy of the License at
4
+ #
5
+ # http://www.apache.org/licenses/LICENSE-2.0
6
+ #
7
+ # Unless required by applicable law or agreed to in writing, software
8
+ # distributed under the License is distributed on an "AS IS" BASIS,
9
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
10
+ # See the License for the specific language governing permissions and
11
+ # limitations under the License.
12
+ """WellLog compute version data statistics command"""
13
+ import click
14
+
15
+ from osducli.click_cli import CustomClickCommand, State, command_with_output
16
+ from osducli.cliclient import CliOsduClient, handle_cli_exceptions
17
+ from osducli.commands.wellbore_ddms._const import WELLBORE_DDMS_WELL_LOG_PATH
18
+
19
+
20
+ # click entry point
21
+ @click.command(cls=CustomClickCommand, help="Compute WellLog data statistics")
22
+ @click.option("-id", "--id", "_id", help="WellLog id to search for", required=True)
23
+ @click.option("-v", "--version", "_ver", help="WellLog version to search for", required=True)
24
+ @handle_cli_exceptions
25
+ @command_with_output()
26
+ def _click_command(state: State, _id: str, _ver: str):
27
+ return compute_statistics(state, _id, _ver)
28
+
29
+
30
+ def compute_statistics(state: State, record_id: str, version_id: str):
31
+ """Compute WellLog data statistics"""
32
+ client = CliOsduClient(state.config)
33
+ wellbore_client = client.get_wellbore_ddms_client(url_extra_path=WELLBORE_DDMS_WELL_LOG_PATH)
34
+ response = wellbore_client.compute_wbddms_version_statistics(record_id, version_id)
35
+ client.check_status_code(response)
36
+ return response.json()
@@ -0,0 +1,36 @@
1
+ # Licensed under the Apache License, Version 2.0 (the "License");
2
+ # you may not use this file except in compliance with the License.
3
+ # You may obtain a copy of the License at
4
+ #
5
+ # http://www.apache.org/licenses/LICENSE-2.0
6
+ #
7
+ # Unless required by applicable law or agreed to in writing, software
8
+ # distributed under the License is distributed on an "AS IS" BASIS,
9
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
10
+ # See the License for the specific language governing permissions and
11
+ # limitations under the License.
12
+ """WellLog get record version command"""
13
+ import click
14
+
15
+ from osducli.click_cli import CustomClickCommand, State, command_with_output
16
+ from osducli.cliclient import CliOsduClient, handle_cli_exceptions
17
+ from osducli.commands.wellbore_ddms._const import WELLBORE_DDMS_WELL_LOG_PATH
18
+
19
+
20
+ # click entry point
21
+ @click.command(cls=CustomClickCommand, help="Get WellLog record by id and version")
22
+ @click.option("-id", "--id", "_id", help="WellLog id to search for", required=True)
23
+ @click.option("-v", "--version", "_ver", help="WellLog version to search for", required=True)
24
+ @handle_cli_exceptions
25
+ @command_with_output()
26
+ def _click_command(state: State, _id: str, _ver: str):
27
+ return get_record(state, _id, _ver)
28
+
29
+
30
+ def get_record(state: State, record_id: str, version_id: str):
31
+ """Get WellLog record by id and version"""
32
+ client = CliOsduClient(state.config)
33
+ wellbore_client = client.get_wellbore_ddms_client(url_extra_path=WELLBORE_DDMS_WELL_LOG_PATH)
34
+ response = wellbore_client.get_wbddms_record_version(record_id, version_id)
35
+ client.check_status_code(response)
36
+ return response.json()
@@ -0,0 +1,35 @@
1
+ # Licensed under the Apache License, Version 2.0 (the "License");
2
+ # you may not use this file except in compliance with the License.
3
+ # You may obtain a copy of the License at
4
+ #
5
+ # http://www.apache.org/licenses/LICENSE-2.0
6
+ #
7
+ # Unless required by applicable law or agreed to in writing, software
8
+ # distributed under the License is distributed on an "AS IS" BASIS,
9
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
10
+ # See the License for the specific language governing permissions and
11
+ # limitations under the License.
12
+ """WellLog get record versions command"""
13
+ import click
14
+
15
+ from osducli.click_cli import CustomClickCommand, State, command_with_output
16
+ from osducli.cliclient import CliOsduClient, handle_cli_exceptions
17
+ from osducli.commands.wellbore_ddms._const import WELLBORE_DDMS_WELL_LOG_PATH
18
+
19
+
20
+ # click entry point
21
+ @click.command(cls=CustomClickCommand, help="List WellLog record versions by id")
22
+ @click.option("-id", "--id", "_id", help="WellLog id to search for", required=True)
23
+ @handle_cli_exceptions
24
+ @command_with_output()
25
+ def _click_command(state: State, _id: str):
26
+ return get_versions(state, _id)
27
+
28
+
29
+ def get_versions(state: State, record_id: str):
30
+ """Get WellLog record versions by id"""
31
+ client = CliOsduClient(state.config)
32
+ wellbore_client = client.get_wellbore_ddms_client(url_extra_path=WELLBORE_DDMS_WELL_LOG_PATH)
33
+ response = wellbore_client.get_wbddms_record_versions(record_id)
34
+ client.check_status_code(response)
35
+ return response.json()
@@ -0,0 +1,13 @@
1
+ # Licensed under the Apache License, Version 2.0 (the "License");
2
+ # you may not use this file except in compliance with the License.
3
+ # You may obtain a copy of the License at
4
+ #
5
+ # http://www.apache.org/licenses/LICENSE-2.0
6
+ #
7
+ # Unless required by applicable law or agreed to in writing, software
8
+ # distributed under the License is distributed on an "AS IS" BASIS,
9
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
10
+ # See the License for the specific language governing permissions and
11
+ # limitations under the License.
12
+
13
+ """Wellbore DDMS Wellbore commands"""
@@ -0,0 +1,42 @@
1
+ # Licensed under the Apache License, Version 2.0 (the "License");
2
+ # you may not use this file except in compliance with the License.
3
+ # You may obtain a copy of the License at
4
+ #
5
+ # http://www.apache.org/licenses/LICENSE-2.0
6
+ #
7
+ # Unless required by applicable law or agreed to in writing, software
8
+ # distributed under the License is distributed on an "AS IS" BASIS,
9
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
10
+ # See the License for the specific language governing permissions and
11
+ # limitations under the License.
12
+ """Wellbore add record command"""
13
+ import json
14
+
15
+ import click
16
+
17
+ from osducli.click_cli import CustomClickCommand, State, command_with_output
18
+ from osducli.cliclient import CliOsduClient, handle_cli_exceptions
19
+ from osducli.commands.wellbore_ddms._const import WELLBORE_DDMS_WELLBORE_PATH
20
+
21
+
22
+ # click entry point
23
+ @click.command(cls=CustomClickCommand, help="Add Wellbore record")
24
+ @click.option("-f", "--file", "_file", help="Wellbore record file to add", required=True)
25
+ @handle_cli_exceptions
26
+ @command_with_output("recordIds")
27
+ def _click_command(state: State, _file: str):
28
+ return add_record(state, _file)
29
+
30
+
31
+ def add_record(state: State, record_file: str):
32
+ """Add Wellbore record"""
33
+ client = CliOsduClient(state.config)
34
+ wellbore_client = client.get_wellbore_ddms_client(url_extra_path=WELLBORE_DDMS_WELLBORE_PATH)
35
+
36
+ with open(record_file) as file:
37
+ record_data = json.load(file)
38
+
39
+ record_data_list = "[" + json.dumps(record_data) + "]"
40
+ response = wellbore_client.create_wbddms_record(record_data_list)
41
+ client.check_status_code(response)
42
+ return response.json()
@@ -0,0 +1,35 @@
1
+ # Licensed under the Apache License, Version 2.0 (the "License");
2
+ # you may not use this file except in compliance with the License.
3
+ # You may obtain a copy of the License at
4
+ #
5
+ # http://www.apache.org/licenses/LICENSE-2.0
6
+ #
7
+ # Unless required by applicable law or agreed to in writing, software
8
+ # distributed under the License is distributed on an "AS IS" BASIS,
9
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
10
+ # See the License for the specific language governing permissions and
11
+ # limitations under the License.
12
+ """Wellbore delete record command"""
13
+ import click
14
+
15
+ from osducli.click_cli import CustomClickCommand, State, command_with_output
16
+ from osducli.cliclient import CliOsduClient, handle_cli_exceptions
17
+ from osducli.commands.wellbore_ddms._const import WELLBORE_DDMS_WELLBORE_PATH
18
+
19
+
20
+ # click entry point
21
+ @click.command(cls=CustomClickCommand, help="Delete record from wellbore ddms by id. The API performs a soft delete.")
22
+ @click.option("-id", "--id", "_id", help="Wellbore id to delete", required=True)
23
+ @handle_cli_exceptions
24
+ @command_with_output()
25
+ def _click_command(state: State, _id: str):
26
+ return delete_record(state, _id)
27
+
28
+
29
+ def delete_record(state: State, identifier: str):
30
+ """Delete record from wellbore ddms by id. The API performs a soft delete."""
31
+ client = CliOsduClient(state.config)
32
+ wellbore_client = client.get_wellbore_ddms_client(url_extra_path=WELLBORE_DDMS_WELLBORE_PATH)
33
+ response = wellbore_client.delete_wbddms_record(identifier)
34
+ client.check_status_code(response)
35
+ return response.json()
@@ -0,0 +1,35 @@
1
+ # Licensed under the Apache License, Version 2.0 (the "License");
2
+ # you may not use this file except in compliance with the License.
3
+ # You may obtain a copy of the License at
4
+ #
5
+ # http://www.apache.org/licenses/LICENSE-2.0
6
+ #
7
+ # Unless required by applicable law or agreed to in writing, software
8
+ # distributed under the License is distributed on an "AS IS" BASIS,
9
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
10
+ # See the License for the specific language governing permissions and
11
+ # limitations under the License.
12
+ """Wellbore get record command"""
13
+ import click
14
+
15
+ from osducli.click_cli import CustomClickCommand, State, command_with_output
16
+ from osducli.cliclient import CliOsduClient, handle_cli_exceptions
17
+ from osducli.commands.wellbore_ddms._const import WELLBORE_DDMS_WELLBORE_PATH
18
+
19
+
20
+ # click entry point
21
+ @click.command(cls=CustomClickCommand, help="Get Wellbore record by id")
22
+ @click.option("-id", "--id", "_id", help="Wellbore id to search for", required=True)
23
+ @handle_cli_exceptions
24
+ @command_with_output()
25
+ def _click_command(state: State, _id: str):
26
+ return get_record(state, _id)
27
+
28
+
29
+ def get_record(state: State, identifier: str):
30
+ """Get Wellbore record by id"""
31
+ client = CliOsduClient(state.config)
32
+ wellbore_client = client.get_wellbore_ddms_client(url_extra_path=WELLBORE_DDMS_WELLBORE_PATH)
33
+ response = wellbore_client.get_wbddms_record(identifier)
34
+ client.check_status_code(response)
35
+ return response.json()
@@ -0,0 +1,13 @@
1
+ # Licensed under the Apache License, Version 2.0 (the "License");
2
+ # you may not use this file except in compliance with the License.
3
+ # You may obtain a copy of the License at
4
+ #
5
+ # http://www.apache.org/licenses/LICENSE-2.0
6
+ #
7
+ # Unless required by applicable law or agreed to in writing, software
8
+ # distributed under the License is distributed on an "AS IS" BASIS,
9
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
10
+ # See the License for the specific language governing permissions and
11
+ # limitations under the License.
12
+
13
+ """Wellbore DDMS Wellbore version commands"""
@@ -0,0 +1,36 @@
1
+ # Licensed under the Apache License, Version 2.0 (the "License");
2
+ # you may not use this file except in compliance with the License.
3
+ # You may obtain a copy of the License at
4
+ #
5
+ # http://www.apache.org/licenses/LICENSE-2.0
6
+ #
7
+ # Unless required by applicable law or agreed to in writing, software
8
+ # distributed under the License is distributed on an "AS IS" BASIS,
9
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
10
+ # See the License for the specific language governing permissions and
11
+ # limitations under the License.
12
+ """Wellbore get record version command"""
13
+ import click
14
+
15
+ from osducli.click_cli import CustomClickCommand, State, command_with_output
16
+ from osducli.cliclient import CliOsduClient, handle_cli_exceptions
17
+ from osducli.commands.wellbore_ddms._const import WELLBORE_DDMS_WELLBORE_PATH
18
+
19
+
20
+ # click entry point
21
+ @click.command(cls=CustomClickCommand, help="Get Wellbore record by id and version")
22
+ @click.option("-id", "--id", "_id", help="Wellbore id to search for", required=True)
23
+ @click.option("-v", "--version", "_ver", help="Wellbore version to search for", required=True)
24
+ @handle_cli_exceptions
25
+ @command_with_output()
26
+ def _click_command(state: State, _id: str, _ver: str):
27
+ return get_record(state, _id, _ver)
28
+
29
+
30
+ def get_record(state: State, identifier: str, version: str):
31
+ """Get Wellbore record by id and version"""
32
+ client = CliOsduClient(state.config)
33
+ wellbore_client = client.get_wellbore_ddms_client(url_extra_path=WELLBORE_DDMS_WELLBORE_PATH)
34
+ response = wellbore_client.get_wbddms_record_version(identifier, version)
35
+ client.check_status_code(response)
36
+ return response.json()
@@ -0,0 +1,35 @@
1
+ # Licensed under the Apache License, Version 2.0 (the "License");
2
+ # you may not use this file except in compliance with the License.
3
+ # You may obtain a copy of the License at
4
+ #
5
+ # http://www.apache.org/licenses/LICENSE-2.0
6
+ #
7
+ # Unless required by applicable law or agreed to in writing, software
8
+ # distributed under the License is distributed on an "AS IS" BASIS,
9
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
10
+ # See the License for the specific language governing permissions and
11
+ # limitations under the License.
12
+ """Wellbore get record versions command"""
13
+ import click
14
+
15
+ from osducli.click_cli import CustomClickCommand, State, command_with_output
16
+ from osducli.cliclient import CliOsduClient, handle_cli_exceptions
17
+ from osducli.commands.wellbore_ddms._const import WELLBORE_DDMS_WELLBORE_PATH
18
+
19
+
20
+ # click entry point
21
+ @click.command(cls=CustomClickCommand, help="List Wellbore record versions by id")
22
+ @click.option("-id", "--id", "_id", help="Wellbore id to search for", required=True)
23
+ @handle_cli_exceptions
24
+ @command_with_output()
25
+ def _click_command(state: State, _id: str):
26
+ return get_versions(state, _id)
27
+
28
+
29
+ def get_versions(state: State, identifier: str):
30
+ """Get Wellbore record versions by id"""
31
+ client = CliOsduClient(state.config)
32
+ wellbore_client = client.get_wellbore_ddms_client(url_extra_path=WELLBORE_DDMS_WELLBORE_PATH)
33
+ response = wellbore_client.get_wbddms_record_versions(identifier)
34
+ client.check_status_code(response)
35
+ return response.json()
@@ -0,0 +1,13 @@
1
+ # Licensed under the Apache License, Version 2.0 (the "License");
2
+ # you may not use this file except in compliance with the License.
3
+ # You may obtain a copy of the License at
4
+ #
5
+ # http://www.apache.org/licenses/LICENSE-2.0
6
+ #
7
+ # Unless required by applicable law or agreed to in writing, software
8
+ # distributed under the License is distributed on an "AS IS" BASIS,
9
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
10
+ # See the License for the specific language governing permissions and
11
+ # limitations under the License.
12
+
13
+ """Wellbore DDMS Wellbore intervalset commands"""
@@ -0,0 +1,44 @@
1
+ # Licensed under the Apache License, Version 2.0 (the "License");
2
+ # you may not use this file except in compliance with the License.
3
+ # You may obtain a copy of the License at
4
+ #
5
+ # http://www.apache.org/licenses/LICENSE-2.0
6
+ #
7
+ # Unless required by applicable law or agreed to in writing, software
8
+ # distributed under the License is distributed on an "AS IS" BASIS,
9
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
10
+ # See the License for the specific language governing permissions and
11
+ # limitations under the License.
12
+ """Wellbore Intervalset add record command"""
13
+ import json
14
+
15
+ import click
16
+
17
+ from osducli.click_cli import CustomClickCommand, State, command_with_output
18
+ from osducli.cliclient import CliOsduClient, handle_cli_exceptions
19
+ from osducli.commands.wellbore_ddms._const import (
20
+ WELLBORE_DDMS_WELLBORE_INTERVAL_SET_PATH,
21
+ )
22
+
23
+
24
+ # click entry point
25
+ @click.command(cls=CustomClickCommand, help="Add Wellbore Intervalset record")
26
+ @click.option("-f", "--file", "_file", help="Wellbore Intervalset record file to add", required=True)
27
+ @handle_cli_exceptions
28
+ @command_with_output("recordIds")
29
+ def _click_command(state: State, _file: str):
30
+ return add_record(state, _file)
31
+
32
+
33
+ def add_record(state: State, record_file: str):
34
+ """Add Wellbore Intervalset record"""
35
+ client = CliOsduClient(state.config)
36
+ wellbore_client = client.get_wellbore_ddms_client(url_extra_path=WELLBORE_DDMS_WELLBORE_INTERVAL_SET_PATH)
37
+
38
+ with open(record_file) as file:
39
+ record_data = json.load(file)
40
+
41
+ record_data_list = "[" + json.dumps(record_data) + "]"
42
+ response = wellbore_client.create_wbddms_record(record_data_list)
43
+ client.check_status_code(response)
44
+ return response.json()
@@ -0,0 +1,37 @@
1
+ # Licensed under the Apache License, Version 2.0 (the "License");
2
+ # you may not use this file except in compliance with the License.
3
+ # You may obtain a copy of the License at
4
+ #
5
+ # http://www.apache.org/licenses/LICENSE-2.0
6
+ #
7
+ # Unless required by applicable law or agreed to in writing, software
8
+ # distributed under the License is distributed on an "AS IS" BASIS,
9
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
10
+ # See the License for the specific language governing permissions and
11
+ # limitations under the License.
12
+ """Wellbore Intervalset delete record command"""
13
+ import click
14
+
15
+ from osducli.click_cli import CustomClickCommand, State, command_with_output
16
+ from osducli.cliclient import CliOsduClient, handle_cli_exceptions
17
+ from osducli.commands.wellbore_ddms._const import (
18
+ WELLBORE_DDMS_WELLBORE_INTERVAL_SET_PATH,
19
+ )
20
+
21
+
22
+ # click entry point
23
+ @click.command(cls=CustomClickCommand, help="Delete record from wellbore ddms by id. The API performs a soft delete.")
24
+ @click.option("-id", "--id", "_id", help="Wellbore Intervalset id to delete", required=True)
25
+ @handle_cli_exceptions
26
+ @command_with_output()
27
+ def _click_command(state: State, _id: str):
28
+ return delete_record(state, _id)
29
+
30
+
31
+ def delete_record(state: State, identifier: str):
32
+ """Delete record from wellbore ddms by id. The API performs a soft delete."""
33
+ client = CliOsduClient(state.config)
34
+ wellbore_client = client.get_wellbore_ddms_client(url_extra_path=WELLBORE_DDMS_WELLBORE_INTERVAL_SET_PATH)
35
+ response = wellbore_client.delete_wbddms_record(identifier)
36
+ client.check_status_code(response)
37
+ return response.json()