Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
K
klaus_wendelin
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Eteri
klaus_wendelin
Commits
d2867d16
Commit
d2867d16
authored
Aug 11, 2017
by
Ivan Tyagov
Browse files
Options
Browse Files
Download
Plain Diff
Data bucket implementation
/reviewed-on
nexedi/wendelin!25
parents
de1ace79
bf2cdca7
Changes
23
Expand all
Show whitespace changes
Inline
Side-by-side
Showing
23 changed files
with
1515 additions
and
1 deletion
+1515
-1
bt5/erp5_wendelin/ActionTemplateItem/portal_types/Data%20Bucket%20Stream/view.xml
...TemplateItem/portal_types/Data%20Bucket%20Stream/view.xml
+85
-0
bt5/erp5_wendelin/DocumentTemplateItem/portal_components/document.erp5.DataBucketStream.py
...eItem/portal_components/document.erp5.DataBucketStream.py
+135
-0
bt5/erp5_wendelin/DocumentTemplateItem/portal_components/document.erp5.DataBucketStream.xml
...Item/portal_components/document.erp5.DataBucketStream.xml
+126
-0
bt5/erp5_wendelin/PortalTypeAllowedContentTypeTemplateItem/allowed_content_types.xml
...eAllowedContentTypeTemplateItem/allowed_content_types.xml
+1
-0
bt5/erp5_wendelin/PortalTypePropertySheetTemplateItem/property_sheet_list.xml
...rtalTypePropertySheetTemplateItem/property_sheet_list.xml
+3
-0
bt5/erp5_wendelin/PortalTypeTemplateItem/portal_types/Data%20Bucket%20Stream.xml
...lTypeTemplateItem/portal_types/Data%20Bucket%20Stream.xml
+71
-0
bt5/erp5_wendelin/PortalTypeWorkflowChainTemplateItem/workflow_chain_type.xml
...rtalTypeWorkflowChainTemplateItem/workflow_chain_type.xml
+4
-0
bt5/erp5_wendelin/SkinTemplateItem/portal_skins/erp5_wendelin/DataBucketStream_view.xml
...Item/portal_skins/erp5_wendelin/DataBucketStream_view.xml
+139
-0
bt5/erp5_wendelin/SkinTemplateItem/portal_skins/erp5_wendelin/DataBucketStream_view/my_description.xml
...ns/erp5_wendelin/DataBucketStream_view/my_description.xml
+101
-0
bt5/erp5_wendelin/SkinTemplateItem/portal_skins/erp5_wendelin/DataBucketStream_view/my_publication_section_list.xml
...lin/DataBucketStream_view/my_publication_section_list.xml
+90
-0
bt5/erp5_wendelin/SkinTemplateItem/portal_skins/erp5_wendelin/DataBucketStream_view/my_reference.xml
...kins/erp5_wendelin/DataBucketStream_view/my_reference.xml
+90
-0
bt5/erp5_wendelin/SkinTemplateItem/portal_skins/erp5_wendelin/DataBucketStream_view/my_source_title.xml
...s/erp5_wendelin/DataBucketStream_view/my_source_title.xml
+175
-0
bt5/erp5_wendelin/SkinTemplateItem/portal_skins/erp5_wendelin/DataBucketStream_view/my_title.xml
...al_skins/erp5_wendelin/DataBucketStream_view/my_title.xml
+260
-0
bt5/erp5_wendelin/SkinTemplateItem/portal_skins/erp5_wendelin/DataBucketStream_view/my_translated_validation_state_title.xml
...ucketStream_view/my_translated_validation_state_title.xml
+96
-0
bt5/erp5_wendelin/SkinTemplateItem/portal_skins/erp5_wendelin/DataBucketStream_view/my_version.xml
..._skins/erp5_wendelin/DataBucketStream_view/my_version.xml
+96
-0
bt5/erp5_wendelin/TestTemplateItem/portal_components/test.erp5.testWendelin.py
...tTemplateItem/portal_components/test.erp5.testWendelin.py
+34
-1
bt5/erp5_wendelin/bt/template_action_path_list
bt5/erp5_wendelin/bt/template_action_path_list
+1
-0
bt5/erp5_wendelin/bt/template_document_id_list
bt5/erp5_wendelin/bt/template_document_id_list
+1
-0
bt5/erp5_wendelin/bt/template_keep_last_workflow_history_only_path_list
...lin/bt/template_keep_last_workflow_history_only_path_list
+1
-0
bt5/erp5_wendelin/bt/template_portal_type_allowed_content_type_list
...endelin/bt/template_portal_type_allowed_content_type_list
+1
-0
bt5/erp5_wendelin/bt/template_portal_type_id_list
bt5/erp5_wendelin/bt/template_portal_type_id_list
+1
-0
bt5/erp5_wendelin/bt/template_portal_type_property_sheet_list
...erp5_wendelin/bt/template_portal_type_property_sheet_list
+1
-0
bt5/erp5_wendelin/bt/template_portal_type_workflow_chain_list
...erp5_wendelin/bt/template_portal_type_workflow_chain_list
+3
-0
No files found.
bt5/erp5_wendelin/ActionTemplateItem/portal_types/Data%20Bucket%20Stream/view.xml
0 → 100644
View file @
d2867d16
<?xml version="1.0"?>
<ZopeData>
<record
id=
"1"
aka=
"AAAAAAAAAAE="
>
<pickle>
<global
name=
"ActionInformation"
module=
"Products.CMFCore.ActionInformation"
/>
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
action
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAAI=
</string>
</persistent>
</value>
</item>
<item>
<key>
<string>
categories
</string>
</key>
<value>
<tuple>
<string>
action_type/object_view
</string>
</tuple>
</value>
</item>
<item>
<key>
<string>
category
</string>
</key>
<value>
<string>
object_view
</string>
</value>
</item>
<item>
<key>
<string>
condition
</string>
</key>
<value>
<string></string>
</value>
</item>
<item>
<key>
<string>
description
</string>
</key>
<value>
<none/>
</value>
</item>
<item>
<key>
<string>
icon
</string>
</key>
<value>
<string></string>
</value>
</item>
<item>
<key>
<string>
id
</string>
</key>
<value>
<string>
view
</string>
</value>
</item>
<item>
<key>
<string>
permissions
</string>
</key>
<value>
<tuple>
<string>
View
</string>
</tuple>
</value>
</item>
<item>
<key>
<string>
portal_type
</string>
</key>
<value>
<string>
Action Information
</string>
</value>
</item>
<item>
<key>
<string>
priority
</string>
</key>
<value>
<float>
1.0
</float>
</value>
</item>
<item>
<key>
<string>
title
</string>
</key>
<value>
<string>
View
</string>
</value>
</item>
<item>
<key>
<string>
visible
</string>
</key>
<value>
<int>
1
</int>
</value>
</item>
</dictionary>
</pickle>
</record>
<record
id=
"2"
aka=
"AAAAAAAAAAI="
>
<pickle>
<global
name=
"Expression"
module=
"Products.CMFCore.Expression"
/>
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
text
</string>
</key>
<value>
<string>
string:${object_url}/DataBucketStream_view
</string>
</value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
bt5/erp5_wendelin/DocumentTemplateItem/portal_components/document.erp5.DataBucketStream.py
0 → 100644
View file @
d2867d16
# -*- coding: utf-8 -*-
##############################################################################
#
# Copyright (c) 2015 Nexedi SA and Contributors. All Rights Reserved.
# Ivan Tyagov <ivan@nexedi.com>
#
# WARNING: This program as such is intended to be used by professional
# programmers who take the whole responsability of assessing all potential
# consequences resulting from its eventual inadequacies and bugs
# End users who are looking for a ready-to-use solution with commercial
# garantees and support are strongly adviced to contract a Free Software
# Service Company
#
# This program is Free Software; you can redistribute it and/or
# modify it under the terms of the GNU General Public License
# as published by the Free Software Foundation; either version 2
# of the License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
#
##############################################################################
import
hashlib
from
BTrees.OOBTree
import
OOBTree
from
AccessControl
import
ClassSecurityInfo
from
Products.ERP5.Document.Document
import
Document
from
Products.ERP5Type
import
Permissions
,
PropertySheet
from
Products.ERP5Type.BTreeData
import
PersistentString
class
DataBucketStream
(
Document
):
"""
Represents data stored in many small files inside a "stream".
Each file is "addressed" by its key similar to dict.
"""
meta_type
=
'ERP5 Data Bucket Stream'
portal_type
=
'Data Bucket Stream'
add_permission
=
Permissions
.
AddPortalContent
# Declarative security
security
=
ClassSecurityInfo
()
security
.
declareObjectProtected
(
Permissions
.
AccessContentsInformation
)
# Declarative properties
property_sheets
=
(
PropertySheet
.
CategoryCore
,
PropertySheet
.
SortIndex
)
def
__init__
(
self
,
id
,
**
kw
):
self
.
initTree
()
Document
.
__init__
(
self
,
id
,
**
kw
)
def
__len__
(
self
):
return
len
(
self
.
_tree
)
def
initTree
(
self
):
"""
Initialize the Tree
"""
self
.
_tree
=
OOBTree
()
def
_getOb
(
self
,
id
,
*
args
,
**
kw
):
return
None
def
getBucket
(
self
,
key
):
"""
Get one bucket
"""
return
self
.
_tree
[
key
].
value
def
insertBucket
(
self
,
key
,
value
):
"""
Insert one bucket
"""
return
self
.
_tree
.
insert
(
key
,
PersistentString
(
value
))
def
popBucket
(
self
,
key
):
"""
Remove one Bucket
"""
return
self
.
_tree
.
pop
(
key
)
def
getBucketKeySequence
(
self
,
start_key
=
None
,
count
=
None
):
"""
Get a lazy sequence of bucket values
"""
sequence
=
self
.
_tree
.
keys
(
min
=
start_key
)
if
count
is
None
:
return
sequence
return
sequence
[:
count
]
def
getBucketValueSequence
(
self
,
start_key
=
None
,
count
=
None
):
"""
Get a lazy sequence of bucket values
"""
sequence
=
self
.
_tree
.
values
(
min
=
start_key
)
if
count
is
None
:
return
sequence
return
sequence
[:
count
]
def
getBucketItemSequence
(
self
,
start_key
=
None
,
count
=
None
,
exclude_start_key
=
False
):
"""
Get a lazy sequence of bucket items
"""
sequence
=
self
.
_tree
.
items
(
min
=
start_key
,
excludemin
=
exclude_start_key
)
if
count
is
None
:
return
sequence
return
sequence
[:
count
]
def
getItemList
(
self
):
"""
Return a list of all key, value pairs
"""
return
[
item
for
item
in
self
.
_tree
.
items
()]
def
getKeyList
(
self
):
"""
Return a list of all keys
"""
return
[
key
for
key
in
self
.
_tree
.
keys
()]
def
getMd5sum
(
self
,
key
):
"""
Get hexdigest of bucket.
"""
h
=
hashlib
.
md5
()
h
.
update
(
self
.
getBucket
(
key
))
return
h
.
hexdigest
()
bt5/erp5_wendelin/DocumentTemplateItem/portal_components/document.erp5.DataBucketStream.xml
0 → 100644
View file @
d2867d16
<?xml version="1.0"?>
<ZopeData>
<record
id=
"1"
aka=
"AAAAAAAAAAE="
>
<pickle>
<global
name=
"Document Component"
module=
"erp5.portal_type"
/>
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
_recorded_property_dict
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAAI=
</string>
</persistent>
</value>
</item>
<item>
<key>
<string>
default_reference
</string>
</key>
<value>
<string>
DataBucketStream
</string>
</value>
</item>
<item>
<key>
<string>
description
</string>
</key>
<value>
<none/>
</value>
</item>
<item>
<key>
<string>
id
</string>
</key>
<value>
<string>
document.erp5.DataBucketStream
</string>
</value>
</item>
<item>
<key>
<string>
portal_type
</string>
</key>
<value>
<string>
Document Component
</string>
</value>
</item>
<item>
<key>
<string>
sid
</string>
</key>
<value>
<none/>
</value>
</item>
<item>
<key>
<string>
text_content_error_message
</string>
</key>
<value>
<tuple/>
</value>
</item>
<item>
<key>
<string>
text_content_warning_message
</string>
</key>
<value>
<tuple>
<string>
W: 55, 21: Redefining built-in \'id\' (redefined-builtin)
</string>
<string>
W: 68, 18: Redefining built-in \'id\' (redefined-builtin)
</string>
</tuple>
</value>
</item>
<item>
<key>
<string>
version
</string>
</key>
<value>
<string>
erp5
</string>
</value>
</item>
<item>
<key>
<string>
workflow_history
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAAM=
</string>
</persistent>
</value>
</item>
</dictionary>
</pickle>
</record>
<record
id=
"2"
aka=
"AAAAAAAAAAI="
>
<pickle>
<global
name=
"PersistentMapping"
module=
"Persistence.mapping"
/>
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
data
</string>
</key>
<value>
<dictionary/>
</value>
</item>
</dictionary>
</pickle>
</record>
<record
id=
"3"
aka=
"AAAAAAAAAAM="
>
<pickle>
<global
name=
"PersistentMapping"
module=
"Persistence.mapping"
/>
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
data
</string>
</key>
<value>
<dictionary>
<item>
<key>
<string>
component_validation_workflow
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAAQ=
</string>
</persistent>
</value>
</item>
</dictionary>
</value>
</item>
</dictionary>
</pickle>
</record>
<record
id=
"4"
aka=
"AAAAAAAAAAQ="
>
<pickle>
<global
name=
"WorkflowHistoryList"
module=
"Products.ERP5Type.patches.WorkflowTool"
/>
</pickle>
<pickle>
<tuple>
<none/>
<list>
<dictionary>
<item>
<key>
<string>
action
</string>
</key>
<value>
<string>
validate
</string>
</value>
</item>
<item>
<key>
<string>
validation_state
</string>
</key>
<value>
<string>
validated
</string>
</value>
</item>
</dictionary>
</list>
</tuple>
</pickle>
</record>
</ZopeData>
bt5/erp5_wendelin/PortalTypeAllowedContentTypeTemplateItem/allowed_content_types.xml
View file @
d2867d16
...
...
@@ -45,6 +45,7 @@
<item>
Data Set
</item>
</portal_type>
<portal_type
id=
"Data Stream Module"
>
<item>
Data Bucket Stream
</item>
<item>
Data Stream
</item>
</portal_type>
<portal_type
id=
"Data Supply"
>
...
...
bt5/erp5_wendelin/PortalTypePropertySheetTemplateItem/property_sheet_list.xml
View file @
d2867d16
...
...
@@ -9,6 +9,9 @@
<item>
ConstraintType
</item>
<item>
DataArrayLine
</item>
</portal_type>
<portal_type
id=
"Data Bucket Stream"
>
<item>
OffsetIndex
</item>
</portal_type>
<portal_type
id=
"Data Event"
>
<item>
DataEvent
</item>
</portal_type>
...
...
bt5/erp5_wendelin/PortalTypeTemplateItem/portal_types/Data%20Bucket%20Stream.xml
0 → 100644
View file @
d2867d16
<?xml version="1.0"?>
<ZopeData>
<record
id=
"1"
aka=
"AAAAAAAAAAE="
>
<pickle>
<global
name=
"Base Type"
module=
"erp5.portal_type"
/>
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
content_icon
</string>
</key>
<value>
<none/>
</value>
</item>
<item>
<key>
<string>
description
</string>
</key>
<value>
<string>
Represents a very big infinite file with a streaming API.\n
Usually used to store raw data.
</string>
</value>
</item>
<item>
<key>
<string>
factory
</string>
</key>
<value>
<string>
addXMLObject
</string>
</value>
</item>
<item>
<key>
<string>
group_list
</string>
</key>
<value>
<tuple>
<string>
item
</string>
</tuple>
</value>
</item>
<item>
<key>
<string>
id
</string>
</key>
<value>
<string>
Data Bucket Stream
</string>
</value>
</item>
<item>
<key>
<string>
init_script
</string>
</key>
<value>
<none/>
</value>
</item>
<item>
<key>
<string>
permission
</string>
</key>
<value>
<none/>
</value>
</item>
<item>
<key>
<string>
portal_type
</string>
</key>
<value>
<string>
Base Type
</string>
</value>
</item>
<item>
<key>
<string>
type_class
</string>
</key>
<value>
<string>
DataBucketStream
</string>
</value>
</item>
<item>
<key>
<string>
type_interface
</string>
</key>
<value>
<tuple/>
</value>
</item>
<item>
<key>
<string>
type_mixin
</string>
</key>
<value>
<tuple/>
</value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
bt5/erp5_wendelin/PortalTypeWorkflowChainTemplateItem/workflow_chain_type.xml
View file @
d2867d16
...
...
@@ -19,6 +19,10 @@
<type>
Data Array
</type>
<workflow>
edit_workflow, validation_workflow
</workflow>
</chain>
<chain>
<type>
Data Bucket Stream
</type>
<workflow>
data_stream_interaction_workflow, edit_workflow, validation_workflow
</workflow>
</chain>
<chain>
<type>
Data Event
</type>
<workflow>
edit_workflow
</workflow>
...
...
bt5/erp5_wendelin/SkinTemplateItem/portal_skins/erp5_wendelin/DataBucketStream_view.xml
0 → 100644
View file @
d2867d16
<?xml version="1.0"?>
<ZopeData>
<record
id=
"1"
aka=
"AAAAAAAAAAE="
>
<pickle>
<global
name=
"ERP5 Form"
module=
"erp5.portal_type"
/>
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
_objects
</string>
</key>
<value>
<tuple/>
</value>
</item>
<item>
<key>
<string>
action
</string>
</key>
<value>
<string>
Base_edit
</string>
</value>
</item>
<item>
<key>
<string>
description
</string>
</key>
<value>
<string></string>
</value>
</item>
<item>
<key>
<string>
edit_order
</string>
</key>
<value>
<list/>
</value>
</item>
<item>
<key>
<string>
encoding
</string>
</key>
<value>
<string>
UTF-8
</string>
</value>
</item>
<item>
<key>
<string>
enctype
</string>
</key>
<value>
<string>
multipart/form-data
</string>
</value>
</item>
<item>
<key>
<string>
group_list
</string>
</key>
<value>
<list>
<string>
left
</string>
<string>
right
</string>
<string>
center
</string>
<string>
bottom
</string>
<string>
hidden
</string>
</list>
</value>
</item>
<item>
<key>
<string>
groups
</string>
</key>
<value>
<dictionary>
<item>
<key>
<string>
bottom
</string>
</key>
<value>
<list/>
</value>
</item>
<item>
<key>
<string>
center
</string>
</key>
<value>
<list>
<string>
my_description
</string>
</list>
</value>
</item>
<item>
<key>
<string>
hidden
</string>
</key>
<value>
<list/>
</value>
</item>
<item>
<key>
<string>
left
</string>
</key>
<value>
<list>
<string>
my_title
</string>
<string>
my_source_title
</string>
<string>
my_reference
</string>
<string>
my_version
</string>
<string>
my_publication_section_list
</string>
</list>
</value>
</item>
<item>
<key>
<string>
right
</string>
</key>
<value>
<list>
<string>
my_translated_validation_state_title
</string>
</list>
</value>
</item>
</dictionary>
</value>
</item>
<item>
<key>
<string>
id
</string>
</key>
<value>
<string>
DataBucketStream_view
</string>
</value>
</item>
<item>
<key>
<string>
method
</string>
</key>
<value>
<string>
POST
</string>
</value>
</item>
<item>
<key>
<string>
name
</string>
</key>
<value>
<string>
DataStream_view
</string>
</value>
</item>
<item>
<key>
<string>
pt
</string>
</key>
<value>
<string>
form_view
</string>
</value>
</item>
<item>
<key>
<string>
row_length
</string>
</key>
<value>
<int>
4
</int>
</value>
</item>
<item>
<key>
<string>
stored_encoding
</string>
</key>
<value>
<string>
UTF-8
</string>
</value>
</item>
<item>
<key>
<string>
title
</string>
</key>
<value>
<string>
Data Bucket Stream
</string>
</value>
</item>
<item>
<key>
<string>
unicode_mode
</string>
</key>
<value>
<int>
0
</int>
</value>
</item>
<item>
<key>
<string>
update_action
</string>
</key>
<value>
<string></string>
</value>
</item>
<item>
<key>
<string>
update_action_title
</string>
</key>
<value>
<string></string>
</value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
bt5/erp5_wendelin/SkinTemplateItem/portal_skins/erp5_wendelin/DataBucketStream_view/my_description.xml
0 → 100644
View file @
d2867d16
<?xml version="1.0"?>
<ZopeData>
<record
id=
"1"
aka=
"AAAAAAAAAAE="
>
<pickle>
<global
name=
"ProxyField"
module=
"Products.ERP5Form.ProxyField"
/>
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
delegated_list
</string>
</key>
<value>
<list>
<string>
description
</string>
<string>
title
</string>
</list>
</value>
</item>
<item>
<key>
<string>
id
</string>
</key>
<value>
<string>
my_description
</string>
</value>
</item>
<item>
<key>
<string>
message_values
</string>
</key>
<value>
<dictionary>
<item>
<key>
<string>
external_validator_failed
</string>
</key>
<value>
<string>
The input failed the external validator.
</string>
</value>
</item>
</dictionary>
</value>
</item>
<item>
<key>
<string>
overrides
</string>
</key>
<value>
<dictionary>
<item>
<key>
<string>
field_id
</string>
</key>
<value>
<string></string>
</value>
</item>
<item>
<key>
<string>
form_id
</string>
</key>
<value>
<string></string>
</value>
</item>
<item>
<key>
<string>
target
</string>
</key>
<value>
<string></string>
</value>
</item>
</dictionary>
</value>
</item>
<item>
<key>
<string>
tales
</string>
</key>
<value>
<dictionary>
<item>
<key>
<string>
field_id
</string>
</key>
<value>
<string></string>
</value>
</item>
<item>
<key>
<string>
form_id
</string>
</key>
<value>
<string></string>
</value>
</item>
<item>
<key>
<string>
target
</string>
</key>
<value>
<string></string>
</value>
</item>
</dictionary>
</value>
</item>
<item>
<key>
<string>
values
</string>
</key>
<value>
<dictionary>
<item>
<key>
<string>
description
</string>
</key>
<value>
<string>
Description
</string>
</value>
</item>
<item>
<key>
<string>
field_id
</string>
</key>
<value>
<string>
my_text_area_field
</string>
</value>
</item>
<item>
<key>
<string>
form_id
</string>
</key>
<value>
<string>
Base_viewFieldLibrary
</string>
</value>
</item>
<item>
<key>
<string>
target
</string>
</key>
<value>
<string>
Click to edit the target
</string>
</value>
</item>
<item>
<key>
<string>
title
</string>
</key>
<value>
<string>
Description
</string>
</value>
</item>
</dictionary>
</value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
bt5/erp5_wendelin/SkinTemplateItem/portal_skins/erp5_wendelin/DataBucketStream_view/my_publication_section_list.xml
0 → 100644
View file @
d2867d16
<?xml version="1.0"?>
<ZopeData>
<record
id=
"1"
aka=
"AAAAAAAAAAE="
>
<pickle>
<global
name=
"ProxyField"
module=
"Products.ERP5Form.ProxyField"
/>
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
delegated_list
</string>
</key>
<value>
<list/>
</value>
</item>
<item>
<key>
<string>
id
</string>
</key>
<value>
<string>
my_publication_section_list
</string>
</value>
</item>
<item>
<key>
<string>
message_values
</string>
</key>
<value>
<dictionary>
<item>
<key>
<string>
external_validator_failed
</string>
</key>
<value>
<string>
The input failed the external validator.
</string>
</value>
</item>
</dictionary>
</value>
</item>
<item>
<key>
<string>
overrides
</string>
</key>
<value>
<dictionary>
<item>
<key>
<string>
field_id
</string>
</key>
<value>
<string></string>
</value>
</item>
<item>
<key>
<string>
form_id
</string>
</key>
<value>
<string></string>
</value>
</item>
<item>
<key>
<string>
target
</string>
</key>
<value>
<string></string>
</value>
</item>
</dictionary>
</value>
</item>
<item>
<key>
<string>
tales
</string>
</key>
<value>
<dictionary>
<item>
<key>
<string>
field_id
</string>
</key>
<value>
<string></string>
</value>
</item>
<item>
<key>
<string>
form_id
</string>
</key>
<value>
<string></string>
</value>
</item>
<item>
<key>
<string>
target
</string>
</key>
<value>
<string></string>
</value>
</item>
</dictionary>
</value>
</item>
<item>
<key>
<string>
values
</string>
</key>
<value>
<dictionary>
<item>
<key>
<string>
field_id
</string>
</key>
<value>
<string>
my_view_mode_publication_section_list
</string>
</value>
</item>
<item>
<key>
<string>
form_id
</string>
</key>
<value>
<string>
Base_viewDMSFieldLibrary
</string>
</value>
</item>
<item>
<key>
<string>
target
</string>
</key>
<value>
<string>
Click to edit the target
</string>
</value>
</item>
</dictionary>
</value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
bt5/erp5_wendelin/SkinTemplateItem/portal_skins/erp5_wendelin/DataBucketStream_view/my_reference.xml
0 → 100644
View file @
d2867d16
<?xml version="1.0"?>
<ZopeData>
<record
id=
"1"
aka=
"AAAAAAAAAAE="
>
<pickle>
<global
name=
"ProxyField"
module=
"Products.ERP5Form.ProxyField"
/>
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
delegated_list
</string>
</key>
<value>
<list/>
</value>
</item>
<item>
<key>
<string>
id
</string>
</key>
<value>
<string>
my_reference
</string>
</value>
</item>
<item>
<key>
<string>
message_values
</string>
</key>
<value>
<dictionary>
<item>
<key>
<string>
external_validator_failed
</string>
</key>
<value>
<string>
The input failed the external validator.
</string>
</value>
</item>
</dictionary>
</value>
</item>
<item>
<key>
<string>
overrides
</string>
</key>
<value>
<dictionary>
<item>
<key>
<string>
field_id
</string>
</key>
<value>
<string></string>
</value>
</item>
<item>
<key>
<string>
form_id
</string>
</key>
<value>
<string></string>
</value>
</item>
<item>
<key>
<string>
target
</string>
</key>
<value>
<string></string>
</value>
</item>
</dictionary>
</value>
</item>
<item>
<key>
<string>
tales
</string>
</key>
<value>
<dictionary>
<item>
<key>
<string>
field_id
</string>
</key>
<value>
<string></string>
</value>
</item>
<item>
<key>
<string>
form_id
</string>
</key>
<value>
<string></string>
</value>
</item>
<item>
<key>
<string>
target
</string>
</key>
<value>
<string></string>
</value>
</item>
</dictionary>
</value>
</item>
<item>
<key>
<string>
values
</string>
</key>
<value>
<dictionary>
<item>
<key>
<string>
field_id
</string>
</key>
<value>
<string>
my_view_mode_reference
</string>
</value>
</item>
<item>
<key>
<string>
form_id
</string>
</key>
<value>
<string>
Base_viewDMSFieldLibrary
</string>
</value>
</item>
<item>
<key>
<string>
target
</string>
</key>
<value>
<string>
Click to edit the target
</string>
</value>
</item>
</dictionary>
</value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
bt5/erp5_wendelin/SkinTemplateItem/portal_skins/erp5_wendelin/DataBucketStream_view/my_source_title.xml
0 → 100644
View file @
d2867d16
<?xml version="1.0"?>
<ZopeData>
<record
id=
"1"
aka=
"AAAAAAAAAAE="
>
<pickle>
<global
name=
"ProxyField"
module=
"Products.ERP5Form.ProxyField"
/>
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
delegated_list
</string>
</key>
<value>
<list>
<string>
enabled
</string>
<string>
portal_type
</string>
<string>
proxy_listbox_ids
</string>
<string>
title
</string>
</list>
</value>
</item>
<item>
<key>
<string>
id
</string>
</key>
<value>
<string>
my_source_title
</string>
</value>
</item>
<item>
<key>
<string>
message_values
</string>
</key>
<value>
<dictionary>
<item>
<key>
<string>
external_validator_failed
</string>
</key>
<value>
<string>
The input failed the external validator.
</string>
</value>
</item>
</dictionary>
</value>
</item>
<item>
<key>
<string>
overrides
</string>
</key>
<value>
<dictionary>
<item>
<key>
<string>
alternate_name
</string>
</key>
<value>
<string></string>
</value>
</item>
<item>
<key>
<string>
css_class
</string>
</key>
<value>
<string></string>
</value>
</item>
<item>
<key>
<string>
default
</string>
</key>
<value>
<string></string>
</value>
</item>
<item>
<key>
<string>
description
</string>
</key>
<value>
<string></string>
</value>
</item>
<item>
<key>
<string>
editable
</string>
</key>
<value>
<string></string>
</value>
</item>
<item>
<key>
<string>
enabled
</string>
</key>
<value>
<string></string>
</value>
</item>
<item>
<key>
<string>
external_validator
</string>
</key>
<value>
<string></string>
</value>
</item>
<item>
<key>
<string>
extra_context
</string>
</key>
<value>
<string></string>
</value>
</item>
<item>
<key>
<string>
field_id
</string>
</key>
<value>
<string></string>
</value>
</item>
<item>
<key>
<string>
form_id
</string>
</key>
<value>
<string></string>
</value>
</item>
<item>
<key>
<string>
hidden
</string>
</key>
<value>
<string></string>
</value>
</item>
<item>
<key>
<string>
title
</string>
</key>
<value>
<string></string>
</value>
</item>
</dictionary>
</value>
</item>
<item>
<key>
<string>
tales
</string>
</key>
<value>
<dictionary>
<item>
<key>
<string>
extra_context
</string>
</key>
<value>
<string></string>
</value>
</item>
<item>
<key>
<string>
field_id
</string>
</key>
<value>
<string></string>
</value>
</item>
<item>
<key>
<string>
form_id
</string>
</key>
<value>
<string></string>
</value>
</item>
</dictionary>
</value>
</item>
<item>
<key>
<string>
values
</string>
</key>
<value>
<dictionary>
<item>
<key>
<string>
enabled
</string>
</key>
<value>
<int>
0
</int>
</value>
</item>
<item>
<key>
<string>
extra_context
</string>
</key>
<value>
<list/>
</value>
</item>
<item>
<key>
<string>
field_id
</string>
</key>
<value>
<string>
my_source_title
</string>
</value>
</item>
<item>
<key>
<string>
form_id
</string>
</key>
<value>
<string>
Base_viewPDMFieldLibrary
</string>
</value>
</item>
<item>
<key>
<string>
portal_type
</string>
</key>
<value>
<list>
<tuple>
<string>
Sensor
</string>
<string>
Sensor
</string>
</tuple>
<tuple>
<string>
Data Acquisition Unit
</string>
<string>
Data Acquisition Unit
</string>
</tuple>
<tuple>
<string>
Data Aggregation Unit
</string>
<string>
Data Aggregation Unit
</string>
</tuple>
</list>
</value>
</item>
<item>
<key>
<string>
proxy_listbox_ids
</string>
</key>
<value>
<list>
<tuple>
<string>
SensorModule_viewSensorList/listbox
</string>
<string>
Sensors
</string>
</tuple>
<tuple>
<string>
DataAggregationUnitModule_viewDataAggregationUnitList/listbox
</string>
<string>
Data Aggregation Units
</string>
</tuple>
</list>
</value>
</item>
<item>
<key>
<string>
title
</string>
</key>
<value>
<string>
Source
</string>
</value>
</item>
</dictionary>
</value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
bt5/erp5_wendelin/SkinTemplateItem/portal_skins/erp5_wendelin/DataBucketStream_view/my_title.xml
0 → 100644
View file @
d2867d16
This diff is collapsed.
Click to expand it.
bt5/erp5_wendelin/SkinTemplateItem/portal_skins/erp5_wendelin/DataBucketStream_view/my_translated_validation_state_title.xml
0 → 100644
View file @
d2867d16
<?xml version="1.0"?>
<ZopeData>
<record
id=
"1"
aka=
"AAAAAAAAAAE="
>
<pickle>
<global
name=
"ProxyField"
module=
"Products.ERP5Form.ProxyField"
/>
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
delegated_list
</string>
</key>
<value>
<list>
<string>
title
</string>
</list>
</value>
</item>
<item>
<key>
<string>
id
</string>
</key>
<value>
<string>
my_translated_validation_state_title
</string>
</value>
</item>
<item>
<key>
<string>
message_values
</string>
</key>
<value>
<dictionary>
<item>
<key>
<string>
external_validator_failed
</string>
</key>
<value>
<string>
The input failed the external validator.
</string>
</value>
</item>
</dictionary>
</value>
</item>
<item>
<key>
<string>
overrides
</string>
</key>
<value>
<dictionary>
<item>
<key>
<string>
field_id
</string>
</key>
<value>
<string></string>
</value>
</item>
<item>
<key>
<string>
form_id
</string>
</key>
<value>
<string></string>
</value>
</item>
<item>
<key>
<string>
target
</string>
</key>
<value>
<string></string>
</value>
</item>
</dictionary>
</value>
</item>
<item>
<key>
<string>
tales
</string>
</key>
<value>
<dictionary>
<item>
<key>
<string>
field_id
</string>
</key>
<value>
<string></string>
</value>
</item>
<item>
<key>
<string>
form_id
</string>
</key>
<value>
<string></string>
</value>
</item>
<item>
<key>
<string>
target
</string>
</key>
<value>
<string></string>
</value>
</item>
</dictionary>
</value>
</item>
<item>
<key>
<string>
values
</string>
</key>
<value>
<dictionary>
<item>
<key>
<string>
field_id
</string>
</key>
<value>
<string>
my_view_mode_translated_workflow_state_title
</string>
</value>
</item>
<item>
<key>
<string>
form_id
</string>
</key>
<value>
<string>
Base_viewFieldLibrary
</string>
</value>
</item>
<item>
<key>
<string>
target
</string>
</key>
<value>
<string>
Click to edit the target
</string>
</value>
</item>
<item>
<key>
<string>
title
</string>
</key>
<value>
<string>
State
</string>
</value>
</item>
</dictionary>
</value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
bt5/erp5_wendelin/SkinTemplateItem/portal_skins/erp5_wendelin/DataBucketStream_view/my_version.xml
0 → 100644
View file @
d2867d16
<?xml version="1.0"?>
<ZopeData>
<record
id=
"1"
aka=
"AAAAAAAAAAE="
>
<pickle>
<global
name=
"ProxyField"
module=
"Products.ERP5Form.ProxyField"
/>
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
delegated_list
</string>
</key>
<value>
<list>
<string>
description
</string>
</list>
</value>
</item>
<item>
<key>
<string>
id
</string>
</key>
<value>
<string>
my_version
</string>
</value>
</item>
<item>
<key>
<string>
message_values
</string>
</key>
<value>
<dictionary>
<item>
<key>
<string>
external_validator_failed
</string>
</key>
<value>
<string>
The input failed the external validator.
</string>
</value>
</item>
</dictionary>
</value>
</item>
<item>
<key>
<string>
overrides
</string>
</key>
<value>
<dictionary>
<item>
<key>
<string>
field_id
</string>
</key>
<value>
<string></string>
</value>
</item>
<item>
<key>
<string>
form_id
</string>
</key>
<value>
<string></string>
</value>
</item>
<item>
<key>
<string>
target
</string>
</key>
<value>
<string></string>
</value>
</item>
</dictionary>
</value>
</item>
<item>
<key>
<string>
tales
</string>
</key>
<value>
<dictionary>
<item>
<key>
<string>
field_id
</string>
</key>
<value>
<string></string>
</value>
</item>
<item>
<key>
<string>
form_id
</string>
</key>
<value>
<string></string>
</value>
</item>
<item>
<key>
<string>
target
</string>
</key>
<value>
<string></string>
</value>
</item>
</dictionary>
</value>
</item>
<item>
<key>
<string>
values
</string>
</key>
<value>
<dictionary>
<item>
<key>
<string>
description
</string>
</key>
<value>
<string>
Version of the web page
</string>
</value>
</item>
<item>
<key>
<string>
field_id
</string>
</key>
<value>
<string>
my_view_mode_version
</string>
</value>
</item>
<item>
<key>
<string>
form_id
</string>
</key>
<value>
<string>
Base_viewFieldLibrary
</string>
</value>
</item>
<item>
<key>
<string>
target
</string>
</key>
<value>
<string>
Click to edit the target
</string>
</value>
</item>
</dictionary>
</value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
bt5/erp5_wendelin/TestTemplateItem/portal_components/test.erp5.testWendelin.py
View file @
d2867d16
...
...
@@ -308,3 +308,36 @@ context.activate().DataStream_readChunkListAndTransform( \
np
.
array_equal
(
data_array
.
getArraySlice
(
0
,
100
),
\
new_array
[:
100
]))
def
test_04_DataBucket
(
self
):
"""
Test data bucket
"""
bucket_stream
=
self
.
portal
.
data_stream_module
.
newContent
(
\
portal_type
=
'Data Bucket Stream'
)
self
.
tic
()
self
.
assertEqual
(
0
,
len
(
bucket_stream
))
# test set and get
bin_string
=
"1"
*
100000
key
=
len
(
bucket_stream
)
+
1
bucket_stream
.
insertBucket
(
key
,
bin_string
)
self
.
assertEqual
(
bin_string
,
bucket_stream
.
getBucket
(
key
))
# test sequence
self
.
assertEqual
(
1
,
len
(
bucket_stream
))
# test pop
bucket_stream
.
popBucket
(
key
)
self
.
assertEqual
(
0
,
len
(
bucket_stream
))
# set many buckets
for
i
in
range
(
100
):
bucket_stream
.
insertBucket
(
i
,
i
*
10000
)
self
.
assertEqual
(
100
,
len
(
bucket_stream
))
self
.
assertEqual
(
range
(
100
),
bucket_stream
.
getKeyList
())
# test as sequence
bucket
=
bucket_stream
.
getBucketItemSequence
(
start_key
=
10
,
count
=
1
)[
0
]
self
.
assertEqual
(
100000
,
bucket
[
1
].
value
)
\ No newline at end of file
bt5/erp5_wendelin/bt/template_action_path_list
View file @
d2867d16
...
...
@@ -11,6 +11,7 @@ Data Array Line | view
Data Array Module | view
Data Array | preview
Data Array | view
Data Bucket Stream | view
Data Event Module | view
Data Event | view
Data Ingestion Line | view
...
...
bt5/erp5_wendelin/bt/template_document_id_list
View file @
d2867d16
...
...
@@ -3,4 +3,5 @@ document.erp5.IngestionPolicy
document.erp5.DataArray
document.erp5.DataArrayLine
document.erp5.DataArrayLineExistenceConstraint
document.erp5.DataBucketStream
document.erp5.DataStream
\ No newline at end of file
bt5/erp5_wendelin/bt/template_keep_last_workflow_history_only_path_list
0 → 100644
View file @
d2867d16
portal_callables/DataIngestionLine_writeFluentdIngestionToDataStream
\ No newline at end of file
bt5/erp5_wendelin/bt/template_portal_type_allowed_content_type_list
View file @
d2867d16
...
...
@@ -13,6 +13,7 @@ Data Product Module | Data Product
Data Product | Embedded File
Data Release Module | Data Release
Data Set Module | Data Set
Data Stream Module | Data Bucket Stream
Data Stream Module | Data Stream
Data Supply Module | Data Supply
Data Supply | Data Supply Line
...
...
bt5/erp5_wendelin/bt/template_portal_type_id_list
View file @
d2867d16
...
...
@@ -9,6 +9,7 @@ Data Array
Data Array Line
Data Array Line Existence Constraint
Data Array Module
Data Bucket Stream
Data Event
Data Event Module
Data Ingestion
...
...
bt5/erp5_wendelin/bt/template_portal_type_property_sheet_list
View file @
d2867d16
...
...
@@ -2,6 +2,7 @@ Data Array Line Existence Constraint | ConstraintType
Data Array Line Existence Constraint | DataArrayLine
Data Array Line | DataArrayLine
Data Array | DataArray
Data Bucket Stream | OffsetIndex
Data Event | DataEvent
Data Product | DefaultImage
Data Release | Predicate
...
...
bt5/erp5_wendelin/bt/template_portal_type_workflow_chain_list
View file @
d2867d16
...
...
@@ -7,6 +7,9 @@ Data Analysis | edit_workflow
Data Analysis | validation_workflow
Data Array | edit_workflow
Data Array | validation_workflow
Data Bucket Stream | data_stream_interaction_workflow
Data Bucket Stream | edit_workflow
Data Bucket Stream | validation_workflow
Data Event | edit_workflow
Data Ingestion Line | edit_workflow
Data Ingestion | edit_workflow
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment