jchambers / pushy-console

A simple GUI app for sending APNs (iOS/macOS/Safari) push notifications
MIT License
54 stars 20 forks source link

Introduce wrapper objects for credentials and use bindings/properties for inter-controller communication #4

Closed jchambers closed 6 years ago

jchambers commented 6 years ago

This introduces wrapper classes for APNs credentials so we can make atomic changes when a user selects a new certificate/signing key file. From there, we can facilitate most communication between the "compose notification" controller and the main application controller via properties and bindings.

On the whole, I think this makes for a cleaner separation of responsibilities and—soon—easier testing.

I don't totally love the ApnsCredentialsFile/ApnsCredentials split. I tried a few other approaches, and definitely feel like there's something better to be done, but am also happy to refine this as we go.