Class: CmisServer::FolderType

Inherits:
Type
  • Object
show all
Defined in:
lib/cmis_server/folder_type.rb

Instance Attribute Summary

Attributes inherited from Type

#base_id, #controllable_acl, #controllable_policy, #creatable, #description, #display_name, #fileable, #fulltext_indexed, #id, #included_in_supertype_query, #local_name, #local_namespace, #parent_type, #query_name, #queryable, #self_property_definitions

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from Type

#base_type, #initialize, #parent_id, #parent_property_definitions, #property_definitions

Constructor Details

This class inherits a constructor from CmisServer::Type

Class Method Details

.baseObject



8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
# File 'lib/cmis_server/folder_type.rb', line 8

def self.base
  @base||=new(id:                   'cmis:folder',
      parent_type:          nil,
      description:          "A CMIS folder",
      display_name:         'Folder',
      creatable:            true,
      fileable:             true,
      queryable:            true,
      property_definitions: [
                                CmisServer::PropertyDefinition.register_property_definition({id: 'cmis:name'.freeze, type: String, required: true}),
                                CmisServer::PropertyDefinition.register_property_definition({id: 'cmis:description'.freeze, type: String, required: false}),
                                CmisServer::PropertyDefinition.register_property_definition({id: 'cmis:objectId'.freeze, type: CmisServer::Id, required: true, updatability: :readonly}),
                                CmisServer::PropertyDefinition.register_property_definition({id: 'cmis:baseTypeId'.freeze, type: CmisServer::Id, required: true, updatability: :readonly, value: ->(obj) { obj.type.base_id }}),
                                CmisServer::PropertyDefinition.register_property_definition({id: 'cmis:objectTypeId'.freeze, type: CmisServer::Id, required: true, updatability: :oncreate, value: ->(obj) { obj.type.id }}),
                                CmisServer::PropertyDefinition.register_property_definition({id: 'cmis:secondaryObjectTypeIds'.freeze, type: CmisServer::Id, required: false, updatability: :readonly, cardinality: :multi}),
                                CmisServer::PropertyDefinition.register_property_definition({id: 'cmis:createdBy'.freeze, type: String, required: false, updatability: :readonly, queryable: true, orderable: true}),
                                CmisServer::PropertyDefinition.register_property_definition({id: 'cmis:creationDate'.freeze, type: DateTime, required: false, updatability: :readonly, queryable: true, orderable: true}),
                                CmisServer::PropertyDefinition.register_property_definition({id: 'cmis:lastModifiedBy'.freeze, type: String, required: false, updatability: :readonly, queryable: true, orderable: true}),
                                CmisServer::PropertyDefinition.register_property_definition({id: 'cmis:lastModificationDate'.freeze, type: DateTime, required: false, updatability: :readonly, queryable: true, orderable: true}),
                                CmisServer::PropertyDefinition.register_property_definition({id: 'cmis:changeToken'.freeze, type: String, required: false, updatability: :readonly}),
                                CmisServer::PropertyDefinition.register_property_definition({id: 'cmis:parentId'.freeze, type: CmisServer::Id, required: false, updatability: :readonly}),
                                CmisServer::PropertyDefinition.register_property_definition({id: 'cmis:path'.freeze, type: CmisServer::Id, required: false, updatability: :readonly}),
                                CmisServer::PropertyDefinition.register_property_definition({id: 'cmis:allowedChildObjectTypeIds'.freeze, type: CmisServer::Id, required: false, updatability: :readonly, cardinality: :multi}),
                            ])
end

Instance Method Details

#adapter_classObject



4
5
6
# File 'lib/cmis_server/folder_type.rb', line 4

def adapter_class
  FolderAdapter
end