[
https://issues.apache.org/jira/browse/JAMES-3293?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17151825#comment-17151825
]
David Leangen commented on JAMES-3293:
--------------------------------------
I took a stab at this, just for fun, to try to get an appreciation of how much
effort it would take to have a clean API that expresses
[RFC5321|https://tools.ietf.org/html/rfc5321].
During my initial pass of the documents, I extracted nous like: "Session",
"Client", "Command", "Response" and so on. However, I noticed that they use
various terms in a sloppy way, probably interchangeably, like "reply" and
"response", and neither seems to have any clear definition.
I noticed that many of the terms they use don't appear to be very well defined
or explained in any precise terms.
So not only would it be a large effort to make sense out of the spec in order
to create a Java API, I now question the entire effort itself. Perhaps the
James approach of having simply an "implementation" (without a clear API) is
actually the best we could reasonable hope for. Perhaps having a clean REST API
is enough. The SMTP session *is* the API, and the other elements (like user
management etc.) can be done via REST, so maybe we can just skip the whole idea
of having a proper Java API.
In any case, I think I am done with this experiment for now.
Please feel free to continue discussing here if you like, even if I close this
issue. :)
> [Experiment] Re-write the SMTP API
> ----------------------------------
>
> Key: JAMES-3293
> URL: https://issues.apache.org/jira/browse/JAMES-3293
> Project: James Server
> Issue Type: Sub-task
> Components: SMTPServer
> Reporter: David Leangen
> Priority: Major
>
> Based on [an email
> thread|https://www.mail-archive.com/[email protected]/msg67373.html].
> To achieve better componentization, the APIs must be very clean, independent,
> and decoupled from other components.
> I will experiment with rewriting the SMTP API in order to solicit comments
> from the James community.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]