Enterprise Store displayed in the Gallery
In my previous article I showed you how you can leverage SharePoint 2010 extensibility capabilities to build an Enterprise Solution Store for your organization. In this article I will share with you Mavention Solution Store Builder – a solution that I’ve built that allows you to easily create your own Enterprise Solution Store without any custom development.

What is Mavention Solution Store Builder

Mavention Solution Store Builder is a SharePoint 2010 Solution that allows you to easily build an Enterprise Solution Store for your own organization. It uses a Document Library to store Solutions and you can have multiple Document Libraries spread across multiple Site Collections that will make up your Enterprise Solution Store.

Building an Enterprise Solution Store with Mavention Solution Store Builder

After deploying the Mavention Solution Store Builder Solution your Enterprise Store will be installed. You can confirm that if you see the Enterprise Store tab added to the Gallery.

The Enterprise Store tab added to the Gallery

Since no configuration for the Enterprise Store has been provided yet, you will see an error message when you open it.

Error message displayed after navigating to the Enterprise Store

In order to build an Enterprise Store you have to do two things: you have to create at least one Store Catalog Library where you will upload your Solutions and you have to deploy a configuration file that will point to all the locations of all your Store Catalog Libraries.

Creating a Store Catalog Library

The Mavention Solution Store Builder Solution contains the Store Catalog List that can be used to create catalog libraries for storing Solutions. In order to install this List Definition you have to activate the Mavention Solution Store Builder Store Library Site Collection Feature.

Mavention Solution Store Builder Store Library Site Collection Feature

After activating the Site Collection Feature you can continue with creating Store Catalog libraries. You need at least one Store Catalog library and you can have as many of them as you want. There is no limitations as to where those libraries are located as long as their contents can be requested by the current user.

Store Catalog library created in a SharePoint site

Configuring Enterprise Store

After you have created Store Catalog libraries the last thing that you need to do is to let the Mavention Solution Store Builder know where your Store Catalogs are located. You can do this by using a configuration file that must be called Mavention.SharePoint.SolutionStore.dll.config and must be located in the 14\TEMPLATE\LAYOUTS\AddGalleryProviders folder. The following code snippet shows the sample structure of the configuration file:

<configuration>
  <Provider>
    <Sources>
      <SharePointLocal SiteUrl="http://mavention" ListName="SolutionCatalog"/>
    </Sources>
  </Provider>
</configuration>

For every Store Catalog you have to create a SharePointLocal element and have its SiteUrl and ListName attributes point to respectively the site where the Store Catalog library is located and the name of the Store Catalog library.

After you have created the configuration file you have to deploy it to the right location. You could do this manually but it’s definitely a better idea to follow the pattern I have described in my previous article and to have the configuration file deployed using a SharePoint Package.

If you have done everything correctly, if you would navigate to the Enterprise Store now all you should see would be an empty page. Although the Store Catalog is in place there are no Solutions in it yet, so this is what we will do next: upload some Solutions to the Store Catalog.

Uploading Solutions to the Store Catalog

In this release of Mavention Solution Store Builder the Store Catalog is simplified version of what’s possible to achieve using the Gallery capability. At this moment using a Store Catalog you can upload a Sandboxed Solution, provide its title, description, comma-separated list of categories, image, and URL to the image and EULA. One more thing, that probably has the most influence on how the Solution will be installed is the Solution Code Type property that I explained in my previous article.

Important: If you set the Solution Code Type property to Full Tust code your Solution will not appear in the Gallery since this Solution Code Type is not supported by the Gallery at this moment.

To support the review process of uploaded Solutions, the Store Catalog List Definition has the Approval Workflow enabled and allows to view draft versions only by users who have Approval Permissions by default. Those settings will be applied by default to every Store Catalog Library that you create. With this you can control when Solutions become available to users but you can configure the settings for your organization by altering the list configuration.

Once you’ve uploaded and approved your Solutions they will appear in the Enterprise Store ready to be downloaded and installed by your users.

Two Mavention Solutions displayed in the Enterprise Store

Summary

Mavention Solution Store Builder is a solution that allows you to easily create a simple company-wide Solution Store for your organization without any custom development. Although it doesn’t offer full capabilities of the Gallery component of SharePoint 2010 it gives you a quick start in providing you with a mechanism to deliver your custom Solutions to your users.

Download: Mavention Solution Store Builder (151KB, WSP)