This is simple checklist for those who would like to add a new Push Platform support to UPS (like Blackberry hint for the community hint).
-
Start by updating the Variant Enum class by adding your platform
-
Create a subclass of the Variant base class , add any properties that are specific to this platform (like API keys, secrets etc ...)
-
Add the platform's pattern to validate the deviceToken https://github.com/aerogear/aerogear-unifiedpush-server/blob/master/model/api/src/main/java/org/jboss/aerogear/unifiedpush/api/validation/DeviceTokenValidator.java
-
Update the ORM descriptor by adding your new Variant entity.
-
Create the REST endpoint by extending the Variant Base Endpoint
You can find a concrete example of these steps in this commit (for ADM) here
-
Add the logo image for your platform in this folder , try to keep the convention platform-[name_of_platform].png , image size should be 35x35
-
Update the UPS less style file , update
.ups-panel-variants
and.ups-radio .ups-platform
-
Update the create variant template
-
Update the detail controller
-
Update the variant detail directive
-
Update the Example page by adding the registration code snippet for this platform
You can find a concrete example of these steps in this commit (for ADM) here
-
Update the sender POM to add the connector/client library of the platform. If it does not exist, well, implement it and share it ;)
-
Update the Push Message by adding any specific properties that your platform supports.
-
Implements a Push Sender class using this interface
You can find a concrete example of these steps in this commit (for ADM) here
Well, you should update the related test classes, don't forget to update the mock test message if you have added new keys/properties to the Push Message.
TODO