ellipsis 3.1.46__tar.gz → 3.1.47__tar.gz
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.
Potentially problematic release.
This version of ellipsis might be problematic. Click here for more details.
- {ellipsis-3.1.46 → ellipsis-3.1.47}/PKG-INFO +1 -1
- {ellipsis-3.1.46 → ellipsis-3.1.47}/ellipsis/__init__.py +1 -1
- {ellipsis-3.1.46 → ellipsis-3.1.47}/ellipsis/path/__init__.py +1 -0
- {ellipsis-3.1.46 → ellipsis-3.1.47}/ellipsis/path/file/root.py +11 -4
- {ellipsis-3.1.46 → ellipsis-3.1.47}/ellipsis/path/root.py +3 -15
- ellipsis-3.1.47/ellipsis/path/setUpTask/__init__.py +2 -0
- ellipsis-3.1.47/ellipsis/path/setUpTask/root.py +50 -0
- {ellipsis-3.1.46 → ellipsis-3.1.47}/ellipsis/path/vector/timestamp/feature/series/root.py +3 -3
- {ellipsis-3.1.46 → ellipsis-3.1.47}/ellipsis.egg-info/PKG-INFO +1 -1
- {ellipsis-3.1.46 → ellipsis-3.1.47}/ellipsis.egg-info/SOURCES.txt +2 -0
- {ellipsis-3.1.46 → ellipsis-3.1.47}/setup.py +1 -1
- {ellipsis-3.1.46 → ellipsis-3.1.47}/test/test.py +26 -4
- {ellipsis-3.1.46 → ellipsis-3.1.47}/LICENSE +0 -0
- {ellipsis-3.1.46 → ellipsis-3.1.47}/README.md +0 -0
- {ellipsis-3.1.46 → ellipsis-3.1.47}/ellipsis/account/__init__.py +0 -0
- {ellipsis-3.1.46 → ellipsis-3.1.47}/ellipsis/account/accessToken/__init__.py +0 -0
- {ellipsis-3.1.46 → ellipsis-3.1.47}/ellipsis/account/accessToken/root.py +0 -0
- {ellipsis-3.1.46 → ellipsis-3.1.47}/ellipsis/account/root.py +0 -0
- {ellipsis-3.1.46 → ellipsis-3.1.47}/ellipsis/apiManager.py +0 -0
- {ellipsis-3.1.46 → ellipsis-3.1.47}/ellipsis/path/bookmark/__init__.py +0 -0
- {ellipsis-3.1.46 → ellipsis-3.1.47}/ellipsis/path/bookmark/root.py +0 -0
- {ellipsis-3.1.46 → ellipsis-3.1.47}/ellipsis/path/file/__init__.py +0 -0
- {ellipsis-3.1.46 → ellipsis-3.1.47}/ellipsis/path/folder/__init__.py +0 -0
- {ellipsis-3.1.46 → ellipsis-3.1.47}/ellipsis/path/folder/root.py +0 -0
- {ellipsis-3.1.46 → ellipsis-3.1.47}/ellipsis/path/hashtag/__init__.py +0 -0
- {ellipsis-3.1.46 → ellipsis-3.1.47}/ellipsis/path/hashtag/root.py +0 -0
- {ellipsis-3.1.46 → ellipsis-3.1.47}/ellipsis/path/invite/__init__.py +0 -0
- {ellipsis-3.1.46 → ellipsis-3.1.47}/ellipsis/path/invite/root.py +0 -0
- {ellipsis-3.1.46 → ellipsis-3.1.47}/ellipsis/path/member/__init__.py +0 -0
- {ellipsis-3.1.46 → ellipsis-3.1.47}/ellipsis/path/member/root.py +0 -0
- {ellipsis-3.1.46 → ellipsis-3.1.47}/ellipsis/path/pointCloud/__init__.py +0 -0
- {ellipsis-3.1.46 → ellipsis-3.1.47}/ellipsis/path/pointCloud/root.py +0 -0
- {ellipsis-3.1.46 → ellipsis-3.1.47}/ellipsis/path/pointCloud/timestamp/__init__.py +0 -0
- {ellipsis-3.1.46 → ellipsis-3.1.47}/ellipsis/path/pointCloud/timestamp/file/__init__.py +0 -0
- {ellipsis-3.1.46 → ellipsis-3.1.47}/ellipsis/path/pointCloud/timestamp/file/root.py +0 -0
- {ellipsis-3.1.46 → ellipsis-3.1.47}/ellipsis/path/pointCloud/timestamp/order/__init__.py +0 -0
- {ellipsis-3.1.46 → ellipsis-3.1.47}/ellipsis/path/pointCloud/timestamp/order/root.py +0 -0
- {ellipsis-3.1.46 → ellipsis-3.1.47}/ellipsis/path/pointCloud/timestamp/root.py +0 -0
- {ellipsis-3.1.46 → ellipsis-3.1.47}/ellipsis/path/pointCloud/timestamp/util.py +0 -0
- {ellipsis-3.1.46 → ellipsis-3.1.47}/ellipsis/path/raster/__init__.py +0 -0
- {ellipsis-3.1.46 → ellipsis-3.1.47}/ellipsis/path/raster/root.py +0 -0
- {ellipsis-3.1.46 → ellipsis-3.1.47}/ellipsis/path/raster/style/__init__.py +0 -0
- {ellipsis-3.1.46 → ellipsis-3.1.47}/ellipsis/path/raster/style/root.py +0 -0
- {ellipsis-3.1.46 → ellipsis-3.1.47}/ellipsis/path/raster/timestamp/__init__.py +0 -0
- {ellipsis-3.1.46 → ellipsis-3.1.47}/ellipsis/path/raster/timestamp/file/__init__.py +0 -0
- {ellipsis-3.1.46 → ellipsis-3.1.47}/ellipsis/path/raster/timestamp/file/root.py +0 -0
- {ellipsis-3.1.46 → ellipsis-3.1.47}/ellipsis/path/raster/timestamp/order/__init__.py +0 -0
- {ellipsis-3.1.46 → ellipsis-3.1.47}/ellipsis/path/raster/timestamp/order/root.py +0 -0
- {ellipsis-3.1.46 → ellipsis-3.1.47}/ellipsis/path/raster/timestamp/root.py +0 -0
- {ellipsis-3.1.46 → ellipsis-3.1.47}/ellipsis/path/raster/timestamp/util.py +0 -0
- {ellipsis-3.1.46 → ellipsis-3.1.47}/ellipsis/path/usage/__init__.py +0 -0
- {ellipsis-3.1.46 → ellipsis-3.1.47}/ellipsis/path/usage/root.py +0 -0
- {ellipsis-3.1.46 → ellipsis-3.1.47}/ellipsis/path/vector/__init__.py +0 -0
- {ellipsis-3.1.46 → ellipsis-3.1.47}/ellipsis/path/vector/featureProperty/__init__.py +0 -0
- {ellipsis-3.1.46 → ellipsis-3.1.47}/ellipsis/path/vector/featureProperty/root.py +0 -0
- {ellipsis-3.1.46 → ellipsis-3.1.47}/ellipsis/path/vector/root.py +0 -0
- {ellipsis-3.1.46 → ellipsis-3.1.47}/ellipsis/path/vector/style/__init__.py +0 -0
- {ellipsis-3.1.46 → ellipsis-3.1.47}/ellipsis/path/vector/style/root.py +0 -0
- {ellipsis-3.1.46 → ellipsis-3.1.47}/ellipsis/path/vector/timestamp/__init__.py +0 -0
- {ellipsis-3.1.46 → ellipsis-3.1.47}/ellipsis/path/vector/timestamp/feature/__init__.py +0 -0
- {ellipsis-3.1.46 → ellipsis-3.1.47}/ellipsis/path/vector/timestamp/feature/message/__init__.py +0 -0
- {ellipsis-3.1.46 → ellipsis-3.1.47}/ellipsis/path/vector/timestamp/feature/message/root.py +0 -0
- {ellipsis-3.1.46 → ellipsis-3.1.47}/ellipsis/path/vector/timestamp/feature/root.py +0 -0
- {ellipsis-3.1.46 → ellipsis-3.1.47}/ellipsis/path/vector/timestamp/feature/series/__init__.py +0 -0
- {ellipsis-3.1.46 → ellipsis-3.1.47}/ellipsis/path/vector/timestamp/file/__init__.py +0 -0
- {ellipsis-3.1.46 → ellipsis-3.1.47}/ellipsis/path/vector/timestamp/file/root.py +0 -0
- {ellipsis-3.1.46 → ellipsis-3.1.47}/ellipsis/path/vector/timestamp/order/__init__.py +0 -0
- {ellipsis-3.1.46 → ellipsis-3.1.47}/ellipsis/path/vector/timestamp/order/root.py +0 -0
- {ellipsis-3.1.46 → ellipsis-3.1.47}/ellipsis/path/vector/timestamp/root.py +0 -0
- {ellipsis-3.1.46 → ellipsis-3.1.47}/ellipsis/sanitize.py +0 -0
- {ellipsis-3.1.46 → ellipsis-3.1.47}/ellipsis/user/__init__.py +0 -0
- {ellipsis-3.1.46 → ellipsis-3.1.47}/ellipsis/user/root.py +0 -0
- {ellipsis-3.1.46 → ellipsis-3.1.47}/ellipsis/util/__init__.py +0 -0
- {ellipsis-3.1.46 → ellipsis-3.1.47}/ellipsis/util/root.py +0 -0
- {ellipsis-3.1.46 → ellipsis-3.1.47}/ellipsis.egg-info/dependency_links.txt +0 -0
- {ellipsis-3.1.46 → ellipsis-3.1.47}/ellipsis.egg-info/requires.txt +0 -0
- {ellipsis-3.1.46 → ellipsis-3.1.47}/ellipsis.egg-info/top_level.txt +0 -0
- {ellipsis-3.1.46 → ellipsis-3.1.47}/setup.cfg +0 -0
|
@@ -8,20 +8,27 @@ import json
|
|
|
8
8
|
import pandas as pd
|
|
9
9
|
|
|
10
10
|
|
|
11
|
-
def add( filePath,
|
|
11
|
+
def add( token, filePath=None, memFile=None, parentId = None, publicAccess =None, metadata=None,name=None):
|
|
12
12
|
token = sanitize.validString('token', token, True)
|
|
13
13
|
parentId = sanitize.validUuid('parentId', parentId, False)
|
|
14
14
|
publicAccess = sanitize.validObject('publicAccess', publicAccess, False)
|
|
15
15
|
metadata = sanitize.validObject('metadata', metadata, False)
|
|
16
|
+
filePath = sanitize.validString('filePath', filePath, False)
|
|
17
|
+
name = sanitize.validString('name', name, False)
|
|
18
|
+
if type(memFile) == type(None) and type(filePath) == type(None):
|
|
19
|
+
raise ValueError('You need to specify either a filePath or a memFile')
|
|
20
|
+
if type(memFile) != type(None) and type(name) == type(None):
|
|
21
|
+
raise ValueError('Parameter name is required when using a memory file')
|
|
16
22
|
|
|
17
|
-
|
|
18
|
-
|
|
19
23
|
seperator = os.path.sep
|
|
20
24
|
fileName = filePath.split(seperator)[len(filePath.split(seperator))-1 ]
|
|
21
25
|
|
|
22
26
|
body = {'name':fileName, 'publicAccess':publicAccess, 'metadata':metadata, 'parentId':parentId}
|
|
27
|
+
if type(memFile) == type(None):
|
|
28
|
+
r = apiManager.upload('/path/file' , filePath, body, token, key = 'data')
|
|
29
|
+
else:
|
|
30
|
+
r = apiManager.upload('/path/file' , filePath , name, body, token, memfile = memFile)
|
|
23
31
|
|
|
24
|
-
r = apiManager.upload('/path/file' , filePath, body, token, key = 'data')
|
|
25
32
|
return r
|
|
26
33
|
|
|
27
34
|
|
|
@@ -155,24 +155,12 @@ def recover(pathId, token):
|
|
|
155
155
|
}, token)
|
|
156
156
|
|
|
157
157
|
|
|
158
|
-
def delete(pathId, token
|
|
158
|
+
def delete(pathId, token):
|
|
159
159
|
pathId = sanitize.validUuid('pathId', pathId, True)
|
|
160
160
|
token = sanitize.validString('token', token, False)
|
|
161
|
-
recursive = sanitize.validBool('recursive', recursive, True)
|
|
162
161
|
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
if info['type'] == 'folder':
|
|
166
|
-
folders = listFolder(pathId = pathId, includeTrashed=True, pathTypes=['folder'], token=token)['result']
|
|
167
|
-
for f in folders:
|
|
168
|
-
delete(f['id'], token, True)
|
|
169
|
-
maps = listFolder(pathId=pathId, pathTypes=['raster','vector','file', 'pointCloud'], includeTrashed=True, token=token)['result']
|
|
170
|
-
for m in maps:
|
|
171
|
-
delete(m['id'], token, True)
|
|
172
|
-
apiManager.delete(f'/path/{pathId}', None, token)
|
|
173
|
-
|
|
174
|
-
else:
|
|
175
|
-
return apiManager.delete(f'/path/{pathId}', None, token)
|
|
162
|
+
|
|
163
|
+
return apiManager.delete(f'/path/{pathId}', None, token)
|
|
176
164
|
|
|
177
165
|
def editPublicAccess(pathId, token, access = None, hidden=None, recursive = False):
|
|
178
166
|
pathId = sanitize.validUuid('pathId', pathId, True)
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
from ellipsis import apiManager
|
|
2
|
+
from ellipsis import sanitize
|
|
3
|
+
import os
|
|
4
|
+
|
|
5
|
+
def get(token):
|
|
6
|
+
token = sanitize.validString('token', token, False)
|
|
7
|
+
|
|
8
|
+
r = apiManager.get('/path/setUpTask', {}, token)
|
|
9
|
+
|
|
10
|
+
return r
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
def copernicusImport( parameters, token):
|
|
14
|
+
token = sanitize.validString('token', token, True)
|
|
15
|
+
parameters = sanitize.validObject('parameters', parameters, True)
|
|
16
|
+
r = apiManager.post('/path/setUpTask', {'type':'copernicusImport', 'parameters':parameters}, token)
|
|
17
|
+
|
|
18
|
+
return r
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
def fileImport( token, memFile=None, parentId = None, filePath=None, fileFormat = 'geopackage', name = None):
|
|
22
|
+
token = sanitize.validString('token', token, True)
|
|
23
|
+
parentId = sanitize.validUuid(('parentId', parentId, False))
|
|
24
|
+
filePath = sanitize.validString('filePath', filePath, False)
|
|
25
|
+
name = sanitize.validString('name', name, False)
|
|
26
|
+
fileFormat = sanitize.validString('fileFormat', fileFormat, True)
|
|
27
|
+
|
|
28
|
+
|
|
29
|
+
if type(memFile) == type(None) and type(filePath) == type(None):
|
|
30
|
+
raise ValueError('You need to specify either a filePath or a memFile')
|
|
31
|
+
if type(memFile) != type(None) and type(name) == type(None):
|
|
32
|
+
raise ValueError('Parameter name is required when using a memory file')
|
|
33
|
+
|
|
34
|
+
if type(name) != type(None):
|
|
35
|
+
nameToUse = name
|
|
36
|
+
else:
|
|
37
|
+
seperator = os.path.sep
|
|
38
|
+
nameToUse = filePath.split(seperator)[len(filePath.split(seperator)) - 1]
|
|
39
|
+
|
|
40
|
+
parameters = {'name': nameToUse, 'parentId': parentId}
|
|
41
|
+
body = {'type': fileFormat + 'Import', 'parameters': parameters}
|
|
42
|
+
if type(memFile) == type(None):
|
|
43
|
+
r = apiManager.post('/path/setUpTask', body, token)
|
|
44
|
+
else:
|
|
45
|
+
r = apiManager.upload('/path/setUpTask' , filePath , name, body, token, memfile = memFile)
|
|
46
|
+
return r
|
|
47
|
+
|
|
48
|
+
|
|
49
|
+
|
|
50
|
+
|
|
@@ -82,17 +82,17 @@ def add(pathId, timestampId, seriesData, token, featureId=None, showProgress = T
|
|
|
82
82
|
df_sub['value'] = seriesData[c].astype(float)
|
|
83
83
|
dfs_long = dfs_long + [df_sub]
|
|
84
84
|
seriesData_long = pd.concat(dfs_long)
|
|
85
|
-
|
|
86
85
|
if uploadAsFile:
|
|
87
86
|
|
|
88
87
|
memfile = BytesIO()
|
|
89
|
-
seriesData_long.to_csv(memfile)
|
|
88
|
+
seriesData_long.to_csv(memfile, na_rep='null')
|
|
90
89
|
|
|
91
90
|
res = apiManager.upload(url = '/path/' + pathId + '/vector/timestamp/' + timestampId + '/feature/series', filePath = 'upload', body= {'name':'upload'}, token = token, key = 'data', memfile= memfile)
|
|
92
91
|
return res
|
|
93
92
|
else:
|
|
94
|
-
|
|
93
|
+
seriesData_long = seriesData_long.replace({float('nan'): None})
|
|
95
94
|
|
|
95
|
+
values = seriesData_long.to_dict('records')
|
|
96
96
|
|
|
97
97
|
chunks_values = chunks(values)
|
|
98
98
|
N = 0
|
|
@@ -47,6 +47,8 @@ ellipsis/path/raster/timestamp/file/__init__.py
|
|
|
47
47
|
ellipsis/path/raster/timestamp/file/root.py
|
|
48
48
|
ellipsis/path/raster/timestamp/order/__init__.py
|
|
49
49
|
ellipsis/path/raster/timestamp/order/root.py
|
|
50
|
+
ellipsis/path/setUpTask/__init__.py
|
|
51
|
+
ellipsis/path/setUpTask/root.py
|
|
50
52
|
ellipsis/path/usage/__init__.py
|
|
51
53
|
ellipsis/path/usage/root.py
|
|
52
54
|
ellipsis/path/vector/__init__.py
|
|
@@ -9,8 +9,11 @@ import pandas as pd
|
|
|
9
9
|
|
|
10
10
|
import os
|
|
11
11
|
|
|
12
|
-
|
|
13
|
-
|
|
12
|
+
file = '/home/daniel/Ellipsis/keys/admin'
|
|
13
|
+
with open(file,'r') as c:
|
|
14
|
+
password = c.read()
|
|
15
|
+
password = password[0:-1]
|
|
16
|
+
token = el.account.logIn('admin', password)
|
|
14
17
|
|
|
15
18
|
|
|
16
19
|
####################################
|
|
@@ -18,9 +21,7 @@ token = el.account.logIn('admin', '')
|
|
|
18
21
|
#python3 setup.py sdist bdist_wheel
|
|
19
22
|
#twine upload --repository pypi dist/*
|
|
20
23
|
|
|
21
|
-
token = el.account.logIn(username = 'admin', password='')
|
|
22
24
|
|
|
23
|
-
el.apiManager.baseUrl = 'https://acc.api.ellipsis-drive.com/v3'
|
|
24
25
|
##access token
|
|
25
26
|
el.account.accessToken.create(description = 'hoi', accessList = [{'pathId': '46e1e919-8b73-42a3-a575-25c6d45fd93b' , 'access':{'accessTier':'view'}}], token = token)
|
|
26
27
|
tokenId = el.account.accessToken.get(token, listAll = True)['result'][0]['id']
|
|
@@ -555,3 +556,24 @@ out = el.util.saveVector(features = sh, targetFile = b)
|
|
|
555
556
|
|
|
556
557
|
el.path.vector.timestamp.file.add(pathId = 'c6a341e1-59bf-44f8-a0d7-0962415a8fa2', timestampId= 'ad490f78-0cf0-426e-9238-e0ef803c7371', token = token, fileFormat='gpkg', memFile=out, name = 'test.gpkg')
|
|
557
558
|
|
|
559
|
+
|
|
560
|
+
|
|
561
|
+
###add series
|
|
562
|
+
import geopandas as gpd
|
|
563
|
+
import numpy as np
|
|
564
|
+
import pandas as pd
|
|
565
|
+
import datetime
|
|
566
|
+
layerId = el.path.vector.add(name = 'series test', token = token)['id']
|
|
567
|
+
timestampId = el.path.vector.timestamp.add(pathId = layerId, token = token)['id']
|
|
568
|
+
|
|
569
|
+
features = gpd.read_file('/home/daniel/Ellipsis/db/testset/buildings_mini')
|
|
570
|
+
|
|
571
|
+
featureIds = el.path.vector.timestamp.feature.add(pathId = layerId, timestampId=timestampId, features=features, token = token)
|
|
572
|
+
N = 1000
|
|
573
|
+
x = [float(x) for x in np.arange(N)]
|
|
574
|
+
featureId = np.repeat(featureIds[0], N)
|
|
575
|
+
date = np.repeat( datetime.datetime.now(),N)
|
|
576
|
+
seriesData = pd.DataFrame({'date':date, 'featureId': featureId, 'x':x })
|
|
577
|
+
seriesData['x'].values[4] = np.nan
|
|
578
|
+
el.path.vector.timestamp.feature.series.add(pathId = layerId, timestampId = timestampId, uploadAsFile = True, seriesData=seriesData, token=token)
|
|
579
|
+
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{ellipsis-3.1.46 → ellipsis-3.1.47}/ellipsis/path/vector/timestamp/feature/message/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{ellipsis-3.1.46 → ellipsis-3.1.47}/ellipsis/path/vector/timestamp/feature/series/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|