willdurand/Geocoder — pull request #128 by jpb0104 (2012-11-11 22:58:39+00:00)
Title: Added Google Maps for Business Provider + tests fixes #81

I created a new Provider: `GoogleMapsBusinessProvider extends GoogleMapsProvider`.

One disappointing issue I ran into was that Guzzle was encoding `$address` again. So when we're creating the "signature" our address uses "+" for spaces. When it gets sent by Guzzle those pluses get changed to "2B". The other HttpAdapters seemed to work just fine.

Unit testing the complete feature is a little bit difficult because it would require someone to share their Google Maps for Business private key ($$$$$).

The private key is optional because not all api calls require it. Or you may not want to set it in dev and set it in production.

Something else to consider is that the locale and region params will probably break the signature because they're added after the `$query` is signed. I might need some help to find an elegant solution. We might need a `buildQuery` method in both `GoogleMapsProvider` and `GoogleMapsBusinessProvider`. Let me know what you think.