Skip to content

Commit b5ccf89

Browse files
committed
Added high level API get_from_id feature to retrieve an spreadsheet.
1 parent b2519ef commit b5ccf89

File tree

4 files changed

+28
-0
lines changed

4 files changed

+28
-0
lines changed

sheets/Readme.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
Eiffel API for Google Sheets API
22
https://developers.google.com/sheets/api/reference/rest
3+
https://help.form.io/integrations/googledrive/
4+
35

46

57
OAuth2.0 Client credentials

sheets/src/eg_sheets_i.e

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,5 +30,15 @@ feature -- Post
3030
deferred
3131
end
3232

33+
feature -- Get
34+
35+
get_from_id (a_spreadsheet_id: STRING_8; a_params: detachable EG_SPREADSHEET_PARAMETERS): detachable EG_SPREADSHEET
36+
note
37+
EIS:"name=get.spreedsheets", "src=https://developers.google.com/sheets/api/reference/rest/v4/spreadsheets/get", "protocol=uri"
38+
require
39+
valid_id: not a_spreadsheet_id.is_empty
40+
deferred
41+
end
42+
3343

3444
end

sheets/src/json/eg_sheets_json.e

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -47,6 +47,21 @@ feature -- Post
4747
end
4848
end
4949

50+
feature -- Get
51+
52+
get_from_id (a_spreadsheet_id: STRING_8; a_params: detachable EG_SPREADSHEET_PARAMETERS): detachable EG_SPREADSHEET
53+
note
54+
EIS:"name=get.spreedsheets", "src=https://developers.google.com/sheets/api/reference/rest/v4/spreadsheets/get", "protocol=uri"
55+
do
56+
if attached eg_sheets_api.create_spreedsheet as s then
57+
if attached parsed_json (s) as j then
58+
Result := eg_spreadsheet (Void, j)
59+
else
60+
-- set error
61+
end
62+
end
63+
end
64+
5065
feature -- Error
5166

5267
last_error: detachable STRING

sheets/test/test_sheets_api.e

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@ feature -- {NONE}
1717

1818
make
1919
do
20+
-- TODO improve this code so we can select which integration test we want to run.
2021
logger.write_information ("make-> ======================> Starting application")
2122

2223
set_from_json_credentials_file_path (create {PATH}.make_from_string (CREDENTIALS_PATH))

0 commit comments

Comments
 (0)