Hello,
I finished off a simple buffer pool of direct memory buffers which I
plan to use in the next component that starts reading input from the
client channel.
Before giving the links to the area where I created this stuff I thought
it might be a good time to break down the structure of the repository
for the eve portion of the project.
Basically I will be dismantling some of the imported sandboxes and
projects slowly to build the frontend and backend of the server using
the new design. I will slowly move the code over into this new
configuration:
/ldap/eve
frontend
common
event
.
backend
.
I've or will be basically separated out the logical parts of the frontend
and the backend into separate directories. In there you'll find either
api, spi or impl directories containing Mavenized projects. Some of the
reasons for doing this are due to the way we handle classloaders in
most containers. It will eventually make components more pluggable
in the server. Anyway under the frontend/buffer directory are the 'spi'
and 'impl' project directories for the BufferPool stuff. As you would
suspect the 'spi' contains the interfaces and objects used to build a
BufferPool and the 'impl' contains implementations of the BufferPool
and components.
Here's a peek at the spi:
http://cvs.apache.org/viewcvs.cgi/incubator/directory/ldap/trunk/eve/fronten
d/buffer/spi/src/java/org/apache/eve/buffer/?root=Apache-SVN
Here's the impl stuff:
http://cvs.apache.org/viewcvs.cgi/incubator/directory/ldap/trunk/eve/fronten
d/buffer/impl/src/java/org/apache/eve/buffer/?root=Apache-SVN
Oooh just looked at these links and I gotta do something about my tabs
- sorry.
I'm soliciting comments ;). Namely what do you think about the BufferPool
interface itself here:
http://cvs.apache.org/viewcvs.cgi/*checkout*/incubator/directory/ldap/trunk/
eve/frontend/buffer/spi/src/java/org/apache/eve/buffer/BufferPool.java?conte
nt-type=text%2Fplain
&rev=1390&root=Apache-SVN
I could not find a good design pattern for this stuff so I implemented my
own.
If anyone knows of one out there let me know.
Thanks,
Alex