Hi Nuwan,
As we discussed in the design review apart from email configuration we need
to consider the global configuration model that support other notification
mechanisms. And that should be compatible with APIM C5 configurations.
*Solotion 1* : Implement String to store the necessary details in
Notification configuration class And retrieve it as json.
"Notifications":[{
"Type":"new_api_version"[{
"notifiers": [{
"email":[{
"property":[{key:value},{key:value}],
"class" : "-----------"
}] }] }] }],
*Solution 2* :
Class implemantation to get neccessary details.
[image: yy]
Notificationconfiguration is a parent class that contains all the global
Notification configurations such as ServerName, Authentication Details
etc.other than that it holds “NotificationTypeConfigaration” object.
NotificationTypeConfiguration class hold “Type” which needs to send
notification and “NotifierConfiguration” object.
For example “Subscription”, “New Api Version” etc.
NotifierConfiguration Class given the details about notifier types and
related fields.
For example “Email”, “SMS” etc.
Considering all the facts I think that most suitable approach is solution 2.
Please provide suggestions for improvements.
Thanks
Krishan
On Mon, Jul 24, 2017 at 12:11 PM, Harsha Kumara <[email protected]> wrote:
> In that case, this should be fine. So we can give an interface which can
> be extended to support multiple event types. We can have a separate
> component for this feature which can be reused if needed.
>
> On Mon, Jul 24, 2017 at 8:25 AM, Nuwan Dias <[email protected]> wrote:
>
>> I think we have to focus on simplicity too. I'm guessing that over 95% of
>> users of this feature will opt for email. Using a separate component in
>> this case doesn't give us a huge gain IMO. Bring a separate component will
>> drag along its configuration and other bulk which isn't really useful for
>> us. Considering the pros and cons of using a third party component I think
>> we should just stick to our own piece of code for sending out email and
>> make it extensible.
>>
>> On Mon, 24 Jul 2017 at 2:41 am, Harsha Kumara <[email protected]> wrote:
>>
>>> Hi Sam/Krishan,
>>>
>>> Shouldn't we use event-output adapters to get this work done? So with
>>> this, we don't need to worry about different event output types if we reuse
>>> the features of it. I'm not sure whether it's moved to C5.
>>>
>>> Thanks,
>>> Harsha
>>>
>>> On Fri, Jul 21, 2017 at 4:37 AM, Sam Sivayogam <[email protected]> wrote:
>>>
>>>> Hi Pubudu,
>>>>
>>>> There is a Notifier interface so if anyone needs a different type of
>>>> notification then they can extend that interface and write their own
>>>> Notifier class and there should be a configuration to set the Notifier
>>>> class.
>>>>
>>>> Thanks,
>>>> Sam
>>>>
>>>> On Fri, Jul 21, 2017 at 1:07 AM, Pubudu Gunatilaka <[email protected]>
>>>> wrote:
>>>>
>>>>> Hi Krishan,
>>>>>
>>>>> Is this notification mechanism restricted to email? Have we considered
>>>>> other notification mechanism? If we can integrate a generic CEP output
>>>>> adapter module which supports email, sms, etc, users will be able to plug
>>>>> any notification mechanism based on their preference. Email notification
>>>>> mechanism is more suitable for new API creation use case. But in the
>>>>> future, there can be other use cases and we would need other notification
>>>>> mechanisms other than email.
>>>>>
>>>>> Thank you!
>>>>>
>>>>> On Fri, Jul 21, 2017 at 12:21 AM, Jochen Traunecker <
>>>>> [email protected]> wrote:
>>>>>
>>>>>> Hi,
>>>>>>
>>>>>> what about supporting webhooks in addition or is this already
>>>>>> available?
>>>>>>
>>>>>> Thanks,
>>>>>> Jochen
>>>>>>
>>>>>> 2017-07-20 9:37 GMT+02:00 Nuwan Dias <[email protected]>:
>>>>>>
>>>>>>> We will need to template the email content and stuff. So we'll need
>>>>>>> some sort of a configuration to store the default template and allow
>>>>>>> users
>>>>>>> to change it as needed.
>>>>>>>
>>>>>>> On Thu, Jul 20, 2017 at 12:53 PM, Krishan Wijesena <
>>>>>>> [email protected]> wrote:
>>>>>>>
>>>>>>>> Hi All,
>>>>>>>>
>>>>>>>> An earlier version of APIM had enabled notifications process at
>>>>>>>> the creation of new API versions in order to notify existing
>>>>>>>> subscribers
>>>>>>>> (via email) that a new version of the API is available.now need to
>>>>>>>> implement this feature according to C5 APIM.
>>>>>>>>
>>>>>>>>
>>>>>>>> [image: eeee]
>>>>>>>>
>>>>>>>> 1.Check whether user enabled notification if yes I need to create
>>>>>>>> NotificationDTO object and store data to object.
>>>>>>>>
>>>>>>>> 2.Send NotificationDTO object to notifier (separate thread) through
>>>>>>>> executor.
>>>>>>>>
>>>>>>>> 3.Notifier extended NewAPIVersionEmailNotifier send emails to
>>>>>>>> existing subscribers.
>>>>>>>>
>>>>>>>> This is the main design of the operation.This Operation can
>>>>>>>> implement through any API.but now I call this operation from API called
>>>>>>>> "create new version" in APIServiceImpl and using JavaMail.
>>>>>>>>
>>>>>>>>
>>>>>>>> Please provide suggestions for improvements.
>>>>>>>>
>>>>>>>> Thanks & Regards.
>>>>>>>>
>>>>>>>> --
>>>>>>>>
>>>>>>>> *Krishan Wijesena*
>>>>>>>> Software Engineer | WSO2
>>>>>>>>
>>>>>>>> Email : [email protected]
>>>>>>>> Mobile : +94776219923 <+94%2077%20621%209923>
>>>>>>>> WSO2 Inc : http://wso2.com
>>>>>>>> [image: http://wso2.com/signature] <http://wso2.com/signature>
>>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> --
>>>>>>> Nuwan Dias
>>>>>>>
>>>>>>> Software Architect - WSO2, Inc. http://wso2.com
>>>>>>> email : [email protected]
>>>>>>> Phone : +94 777 775 729 <+94%2077%20777%205729>
>>>>>>>
>>>>>>> _______________________________________________
>>>>>>> Architecture mailing list
>>>>>>> [email protected]
>>>>>>> https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture
>>>>>>>
>>>>>>>
>>>>>>
>>>>>>
>>>>>> --
>>>>>> Gruss / regards
>>>>>>
>>>>>> Jochen Traunecker
>>>>>> mailto: [email protected]
>>>>>>
>>>>>> _______________________________________________
>>>>>> Architecture mailing list
>>>>>> [email protected]
>>>>>> https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture
>>>>>>
>>>>>>
>>>>>
>>>>>
>>>>> --
>>>>> *Pubudu Gunatilaka*
>>>>> Committer and PMC Member - Apache Stratos
>>>>> Software Engineer
>>>>> WSO2, Inc.: http://wso2.com
>>>>> mobile : +94774078049 <%2B94772207163>
>>>>>
>>>>>
>>>>
>>>>
>>>> --
>>>> *Sam Sivayogam*
>>>>
>>>> Senior Software Engineer
>>>> Mobile : +94 772 906 439
>>>> Office : +94 112 145 345
>>>> *WSO2, Inc. :** wso2.com <http://wso2.com/>*
>>>> lean.enterprise.middleware.
>>>>
>>>
>>>
>>>
>>> --
>>> Harsha Kumara
>>> Software Engineer, WSO2 Inc.
>>> Mobile: +94775505618 <+94%2077%20550%205618>
>>> Blog:harshcreationz.blogspot.com
>>>
>> --
>> Nuwan Dias
>>
>> Software Architect - WSO2, Inc. http://wso2.com
>> email : [email protected]
>> Phone : +94 777 775 729 <+94%2077%20777%205729>
>>
>
>
>
> --
> Harsha Kumara
> Software Engineer, WSO2 Inc.
> Mobile: +94775505618 <+94%2077%20550%205618>
> Blog:harshcreationz.blogspot.com
>
--
*Krishan Wijesena*
Software Engineer | WSO2
Email : [email protected]
Mobile : +94776219923 <+94%2077%20621%209923>
WSO2 Inc : http://wso2.com
[image: http://wso2.com/signature] <http://wso2.com/signature>
_______________________________________________
Architecture mailing list
[email protected]
https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture