chemistry-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Florian Müller <f...@apache.org>
Subject Re: question on Folder and Document info via CMIS
Date Fri, 31 Aug 2012 08:54:17 GMT
 Hi Mark,

 A few additional comments:

 - You can only count what the current users is allowed to see. There 
 could be additional documents in the folder.
 - If documents have no content, the cmis:contentStreamLength property 
 can be null. Be prepared for that or, even better, filter them in the 
 query.
 - Depending on your use case you may or may not want to include 
 document versions.


 Florian


> Jeff
>
> Wow -  thanks for the lightning fast response :-)
>
> You're of course right - just select the single
> property cmis:contentStreamLength instead of the * - good point. Will 
> look
> at the Paging on the result set.
>
> On Thu, Aug 30, 2012 at 5:40 PM, Jeff Potts <jeffpotts01@gmail.com> 
> wrote:
>
>> Yeah, what you'd like to be able to do is a SELECT
>> sum(cmis:contentStreamLength) from cmis:document where...
>>
>> But you can't. :)
>>
>> So you'll have to iterate. Couple of thoughts, though:
>>
>>  - Ask for the cmis:contentStreamLength specifically--don't use * if 
>> all
>> you need is that length property. That will speed up performance a 
>> bit.
>>  - Be sure to use paging on the result set.
>>  - Using IN_FOLDER will give you just the space taken up by that 
>> folder
>> object. If you want to recurse use IN_TREE instead.
>>
>> Jeff
>>
>> On Aug 30, 2012, at 4:21 PM, Mark Streit wrote:
>>
>> > Hello
>> >
>> > I have a question that has been raised about how to get the 
>> *number *of
>> > cmis:Document objects in a cmis:Folder object and also how much 
>> space
>> > (bytes) is being consumed by that cmis:Folder object.
>> >
>> > The use case here is each "client" storing information on the ECM 
>> being
>> > used (application is using OpenCMIS Java API) to persist and 
>> retrieve
>> > documents to the ECM.  Each has its own Folder and stores its 
>> respective
>> > Document objects.
>> >
>> > The closest thing I can envision is to run a SELECT * FROM 
>> cmis:document
>> > WHERE IN_FOLDER("some_folder_id")
>> >
>> >
>> >   1. Then get the size of the ItemIterable<QueryResult> 
>> queryResult for
>> >   the count
>> >   2. Then iterate over the list and the ContentStreamLength 
>> property
>> value
>> >   and add it to an accumlator
>> >
>> > The notion of SELECT COUNT(*) FROM cmis:document WHERE
>> > IN_FOLDER("some_folder_id") is not supported in CMIS SQL AFAIK.  
>> As for
>> > cumulative bytes representing the consumed space of the document 
>> count,
>> > this is the only thing that seemed possible.
>> >
>> > Is there some feature we may not be leveraging?
>> >
>> > Thanks in advance.
>> >
>> > Mark
>>
>>
>
>
> *Mark
> *


Mime
View raw message