WideLens
WideLens is a Bungee Connect’s reference calendaring web application. WideLens serves both as a commercial-grade application, as well as as a model for how you can extend any application built on the Bungee Connect platform.
Contents |
[edit] About
WideLens is a Bungee Connect reference calendaring application designed by the Bungee Labs engineering team to:
- Demonstrate the kind of application that can be developed using Bungee Connect: highly interactive, secure and scalable web applications connecting to and leveraging multiple, distributed web services (REST/POX and SOAP) and relational data stores (e.g. SQL databases such as MySQL or PostgreSQL)
- Motivate Bungee developers to work through the required learning curve because they are inspired by WideLens as a reference application - the application can be imported into a Bungee developer's own workspace, modified and deployed as their own application or just used as a learning tool
- Leverage WideLens to educate developers on how to extend and customize an existing Bungee application, illustrating Bungee development best practices and design patterns using WideLens as an example
- Encourage developer community activity, e.g. kick-start collaborative development projects among Bungee devs who want to work together to build WideLens derivative Bungee apps
[edit] Frequently Asked Questions
How do I get the WideLens source code?
There are two versions of the WideLens source code that you can import into your own Bungee Connect workspace:
- WideLens Reference Application (in Premier Examples of the Design tab) is the same source code that is deployed and available at http://widelens.bungeeconnect.com.
- Salesforce.com Opportunities Calendar (WideLens Sample) is a derivative work that shows how WideLens can be extended with a new data source, in this case a custom event for Salesforce.com opportunities. An in-depth technical article explains how WideLens was extended to display a Salesforce.com custom event
How do I get started at extending the WideLens source code?
There are several videos and articles listed in the section Developer Resources below.
How Free is the WideLens Source Code?
The WideLens source code is freely available under an open source license that allows developers to create derivative works. The license is a Bungee Connect Type-R Library Source License, which is based upon the BSD open source licence. It's a very liberal license that freely allows developers to use and modify the source code for creating their own works without needing to open source their derivative works.
How are user accounts and other application data handled when I import the source code?
When you import either the WideLens Reference App or the Salesforce.com Opportunities Calendar (WideLens Sample), into your workspace, a new MySQL database is automatically provisioned for you. The new database has no user accounts. Consequently, when you simulate the main form, you will first need to create an account, which gets added to the database.
Can I just use the deployed version of WideLens?
Yes. You can register an account simply by going to http://widelens.bungeeconnect.com and using the Create New Account link.
If you are a registered Bungee Connect developer and your account was automatically provisioned from Bungee Connect, be advised that your WideLens password is independent from your developer account on Bungee Connect. If you change either password, the other does not automatically change, too.
[edit] Connecting to Multiple External Data Sources
WideLens connects to Microsoft Exchange calendar, Google Calendar, Salesforce.com, Facebook, MySQL and iCalendar feeds. If you’re familiar with these services, you know this list isn’t just a mouthful to say, it represents a variety of protocols and authentication schemes. MS Exchange is accessed through WebDav, Google Calendar through gData, Salesforce.com via SOAP, Facebook through REST and MySQL connectivity is based on client libraries provided by MySQL (integrated directly inside Bungee Connect).
WideLens connects to each of the sources in real-time, presenting the user with live data. With the exception of Facebook and iCalendar, users can create and modify events and those changes are immediately posted back to the source.MySQL pulls double duty, serving as both a WideLens native calendar source and as the persistence layer for all kinds of application data including user preferences and credential information for each service.
Due to the sensitivity of calendar data, user credentials for each type of service are encrypted before being stored into the database. Credentials can only be unlocked with the users password, not stored in the database. If they forget their password they will need to re-enter all their credential information for each service.This list of services was chosen to demonstrate to variety of ways Bungee Connect can leverage existing data in applications and the accelerated way in which a developer can integrate that data into their application. To provide some perspective, once the base calendar was functional it took only 3 hours of development time to integrate Salesforce.com and only a day to integrate Facebook.
[edit] Developer Resources
[edit] Blog Posts
- WideLens: A calendaring reference application for Bungee Connect
- Extending the WideLens Reference App
[edit] Technical Articles
[edit] Videos
- WideLens User Experience
- WideLens - Overview for Bungee Developers and slides (.ppt)
- WideLens - Importing and Running WideLens, and viewing WideLens database
- Extending WideLens





