You are right, you already sent the github link.

I've checked out the code and I've made some changes to make it
compile, also I have changed id signature in messages and mailboxes to
String since couchdb uses string. I have hardcoded a user and password
in the Utils class, it should go in the configuration files though.

I just have sent you a pull request
https://github.com/manolo/james-couchdb/commit/2b6b0ebce5c78198b14d1e7ec05c178d56482919

The unique Test in the tree do no pass, I think you can start fixing
the test so as it should be easier to follow the code taking a look to
tests.

- Manolo


On Thu, Oct 13, 2011 at 9:54 PM, Pepijn de Vos <pepijnde...@yahoo.com> wrote:
> I added the github link to the beautifully formatted original email, but I 
> think Google mistreated my message.
>
> Her it is again: https://github.com/pepijndevos/james-couchdb
>
> Pepijn
>
> On Oct 13, 2011, at 9:28 PM, Manuel Carrasco Moñino wrote:
>
>> Hi Pepjin, could be possible to share your code anywhere, so as I
>> could checkout it and take a look?
>>
>> Don't worry about if the code is ok or not, I think github could be
>> ok, but you could send a compressed file via email or whatever you
>> prefer.
>>
>> - Manolo
>>
>>
>> On Thu, Oct 13, 2011 at 8:12 PM, Pepijn de Vos <pepijnde...@yahoo.com> wrote:
>>> Okay, I put up the result for the day.
>>> I made a CouchDbMailbox with Ektorp @annotations.
>>> I made an attempt to make the MailboxMapper, but I got stuck at the <type> 
>>> casting sugar which I don't grok. My IDE keeps complaining it can't resolve 
>>> the incompatible types, while both are just Mailboxes.
>>> I stuffed the CouchDB connection in a class, not happy with it.
>>> I'm not sure how to implement the findMailboxWithPathLike and hasChildren 
>>> methods.
>>> Any help appreciated, especially with the... <> things. list() is the only 
>>> one that's red wiggly lines, the others are just unchecked casts. I've been 
>>> adding random casts and <> left and right.
>>>
>>> https://github.com/pepijndevos/james-couchdb
>>>
>>> Pepijn
>>>
>>> On Oct 13, 2011, at 6:23 PM, Pepijn de Vos wrote:
>>>
>>>> More questions. I started hacking!
>>>>
>>>> I'm going with Ektorp. I figured out most of it, I think. Except that I 
>>>> don't understand the configuration. It does have a Spring module. Any 
>>>> pointers on how to organize the config and connections?
>>>>
>>>> What does findMailboxWithPathLike do? The implementations seem to do weird 
>>>> things with regexes. Preferably I make that into a nice CouchDB view. 
>>>> CouchDB can't do fulltext search. As far as I can tell, the IMAP RFC 
>>>> doesn't say anything about it.
>>>>
>>>> To have custom message and mailbox classes, do I need to do anything else 
>>>> besides subclassing the corresponding *Manager class to return one?
>>>>
>>>> I'm getting there!
>>>>
>>>> Pepijn
>>>>
>>>> On Oct 12, 2011, at 9:35 PM, Manuel Carrasco Moñino wrote:
>>>>
>>>>> Actually Ektorp is not a full implementation of JPA, but it provides a
>>>>> JPA like API with support to many of its annotations etc.
>>>>>
>>>>> Anyway, based on my experience, Ektorp simplifies the access from java
>>>>> to couchdb and the bootstrap of couchdb, so as theoretically when
>>>>> James starts the first time, the database, views, design, mapreduce,
>>>>> etc should be created.
>>>>>
>>>>> - Manolo
>>>>>
>>>>> On Wed, Oct 12, 2011 at 1:05 PM, Pepijn de Vos <pepijnde...@yahoo.com> 
>>>>> wrote:
>>>>>> Ektorp seems nice, but I'm more comfortable just using something that 
>>>>>> resembles the HTTP API, since I'm not familiar with JPA. Haven't decided 
>>>>>> yet.
>>>>>>
>>>>>> Pepijn
>>>>>>
>>>>>> On Oct 11, 2011, at 5:08 PM, Manuel Carrasco Moñino wrote:
>>>>>>
>>>>>>> Hi Pepijn
>>>>>>>
>>>>>>> Which java library are you considering to use to connect with couchdb?
>>>>>>> I'm using [1] ektorp and makes really easy to map domain models.
>>>>>>>
>>>>>>> - Manolo
>>>>>>>
>>>>>>> [1] http://www.ektorp.org/reference_documentation.html#d0e532
>>>>>>>
>>>>>>> On Mon, Oct 10, 2011 at 10:44 PM, Pepijn de Vos <pepijnde...@yahoo.com> 
>>>>>>> wrote:
>>>>>>>>
>>>>>>>> Thanks a lot.
>>>>>>>>
>>>>>>>> On Oct 10, 2011, at 8:24 PM, Ioan Eugen Stan wrote:
>>>>>>>>
>>>>>>>>> Have patience. You will need it if you wish to complete something.
>>>>>>>>> Patience and perseverance or else you'll be just another one who
>>>>>>>>> tried.
>>>>>>>>
>>>>>>>> I don't expect to have it finished by the end of the week, but if I'm 
>>>>>>>> still completely clueless by then, it's just not worth the effort.
>>>>>>>> I don't have the ambition to become a James commiter or even a Java 
>>>>>>>> dev, I just thought it would be nice to use CouchDB for my application.
>>>>>>>> Somewhere is a point where pragmatism beats learning. There isn't any 
>>>>>>>> technical reason why I can't use JPA.
>>>>>>>>>
>>>>>>>>>> Can I just copy an existing one and rename stuff? In other words, 
>>>>>>>>>> how are the modules glued into the whole? How does the server know 
>>>>>>>>>> which class to load? It's not in the pom.xml, afaict.
>>>>>>>>>
>>>>>>>>> Not sure what you mean by that. It uses dependency injection provided
>>>>>>>>> by Spring framework (and soon Guice) to inject object references into
>>>>>>>>> other objects at runtime.
>>>>>>>>
>>>>>>>> Ah, dependency injection. *googles* So just the fact that I implement 
>>>>>>>> the interface is enough to @autowire it into James?
>>>>>>>>>
>>>>>>>>>> The sample config is gone btw: 
>>>>>>>>>> http://james.apache.org/server/3/config-mailbox.html
>>>>>>>>>> Do I inherit tests as well? I would imagine that a lot of tests are 
>>>>>>>>>> common to all mailbox implementations.
>>>>>>>>>
>>>>>>>>> I think this is because the configuration changed and now it's spring
>>>>>>>>> based, and more modular. I see you are very ambitious but I sense you
>>>>>>>>> have a lot of catching up. James is complex so give it time, if you
>>>>>>>>> expect too much from yourself and fail you will probably be too
>>>>>>>>> disappointed.
>>>>>>>> Yea, I read a Java book long ago, never did any big projects with it.
>>>>>>>>>
>>>>>>>>> Make a public repo, commit something and ask if you get stuck. I will
>>>>>>>>> try to help when/if I can. I suggest you start with simple
>>>>>>>>> implementation that passes some unit tests.
>>>>>>>>
>>>>>>>> So If I take any mailbox impl, put it in a separate repo, will it 
>>>>>>>> work? All sorts of things refer to the parent pom. I'll put something 
>>>>>>>> on github once I figure it out. I think it'll work out once I get to 
>>>>>>>> the point where I can write some code.
>>>>>>>>>
>>>>>>>>> See for example the unit tests I did for Mailbox interface in HBase
>>>>>>>>> implementation:
>>>>>>>>> http://svn.apache.org/repos/asf/james/mailbox/trunk/hbase/src/test/java/org/apache/james/mailbox/hbase/mail/model/HBaseMailboxTest.java
>>>>>>>> What I mean with inheriting tests is that these all look very generic. 
>>>>>>>> They look like they could test any mailbox implementation.
>>>>>>>>
>>>>>>>> Pepijn
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> --
>>>>>>>>> Ioan Eugen Stan
>>>>>>>>> http://ieugen.blogspot.com/
>>>>>>>>>
>>>>>>>>> ---------------------------------------------------------------------
>>>>>>>>> To unsubscribe, e-mail: server-dev-unsubscr...@james.apache.org
>>>>>>>>> For additional commands, e-mail: server-dev-h...@james.apache.org
>>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> ---------------------------------------------------------------------
>>>>>>>> To unsubscribe, e-mail: server-dev-unsubscr...@james.apache.org
>>>>>>>> For additional commands, e-mail: server-dev-h...@james.apache.org
>>>>>>>>
>>>>>>>
>>>>>>> ---------------------------------------------------------------------
>>>>>>> To unsubscribe, e-mail: server-dev-unsubscr...@james.apache.org
>>>>>>> For additional commands, e-mail: server-dev-h...@james.apache.org
>>>>>>>
>>>>>>
>>>>>>
>>>>>> ---------------------------------------------------------------------
>>>>>> To unsubscribe, e-mail: server-dev-unsubscr...@james.apache.org
>>>>>> For additional commands, e-mail: server-dev-h...@james.apache.org
>>>>>>
>>>>>>
>>>>>
>>>>> ---------------------------------------------------------------------
>>>>> To unsubscribe, e-mail: server-dev-unsubscr...@james.apache.org
>>>>> For additional commands, e-mail: server-dev-h...@james.apache.org
>>>>>
>>>>
>>>>
>>>> ---------------------------------------------------------------------
>>>> To unsubscribe, e-mail: server-dev-unsubscr...@james.apache.org
>>>> For additional commands, e-mail: server-dev-h...@james.apache.org
>>>>
>>>
>>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: server-dev-unsubscr...@james.apache.org
>> For additional commands, e-mail: server-dev-h...@james.apache.org
>>
>
>

---------------------------------------------------------------------
To unsubscribe, e-mail: server-dev-unsubscr...@james.apache.org
For additional commands, e-mail: server-dev-h...@james.apache.org

Reply via email to