-
Notifications
You must be signed in to change notification settings - Fork 6
Architecture
This page provides specifics about the various architecture considerations taken while designing and developing this version of the library. This page would be updated with more details soon.
The cross dependencies among the new modules are visualized using moon shine project below using this data.
The access to SMS API of Android previously supported with SMSManager
has been changed to the SmsApiGateway
classes and interfaces.
The following classes have been created as part of this implementation with the package com.ae.apps.lib.api.sms
Class Name | Description |
---|---|
SmsApiGateway | An interface that defines the API |
SmsApiConstants | Contains public and internal constants used by the API |
AbstractSmsApiGateway | Provides some basic implementation of the API |
SmsApiGatewayImpl | An implementation of the API |
SmsApiUtils | Contains some utility functions used by the API |
Previously an abstraction to the complex Android Contacts API was provided with ContactManager
and related classes. Although it was updated to split the logic into a Service class, it has now been completely rewritten as ContactsApiGateway
.
The following classes are available under the following package com.ae.apps.lib.api.contacts
Class Name | Description |
---|---|
ContactsApiGateway | An interface that defines the Contacts API |
ContactsApiConstants | Contains internal constants used by the API |
AbstractContactsApiGateway | Provides some basic implementation of the API |
ContactsApiGatewayImpl | An implementation of the API |
ContactsApiUtils | Contains some utility functions used by the API |
ContactInfoFilterOptions | Specifies the filtering options while reading the contacts |
ContactInfoOptions | Specifies options for getting ContactInfo |
ContactsDataConsumer | An interface that must be implemented by a consumer of the API |