The Repository Browser is one of the major views of Desktop for Eclipse and is used to handle projects. A project provides a collection of objects, which define one or more applications.
When opening Desktop for Eclipse the Repository Browser is initially displayed as a tab in the upper left view.
Depending on your user role the Repository Browser may contain a Projects folder, a Libraries folder and a Configuration folder.

For information on the different user roles and their privileges and restrictions see Chapter 2 User Management Basic Topics in the Administration Guide.
The Projects folder contains subfolders for all projects you have access to. A project provides a collection of objects, which define one or more applications. To create a new project, right-click the Projects folder and from the context menu select New. For details see Creating a Project.
A project within VoiceObjects can have multiple versions (see Publishing a Project Version).
Clicking the plus sign in front of a project folder expands it and displays subfolders for all available project versions (at least one). Double-clicking a project version opens up the Object Browser to show the content of this project version.
Projects or project versions that have been locked are indicated by a Lock icon. An Eclipse warning icon
indicates that the respective project has been created with a previous version of VoiceObjects and needs to be upgraded. For details see Opening a Project and a Project Version.
Right-clicking a project or a project version opens up the respective context menu providing several commands described below.

These commands have the following functions, which will be explained in more detail below.
|
Menu Command |
Function |
|
Edit |
Opens up the Project editor displaying the access control list and the standard properties of the selected project and allows modifying them. For details see Editing a Project or a Project Version. |
|
Copy |
Creates a copy of the selected project. For details see Copying a Project. |
|
Delete |
Deletes the selected project. For details see Deleting a Project or a Project Version. |
|
Rename |
Opens up a text box to rename the selected project. |
|
Lock/Unlock |
Locks or respectively unlocks the selected project. For details see Locking or Unlocking a Project or a Project Version. |

These commands have the following functions, which will be explained in more detail below.
|
Menu Command |
Function |
|
Edit |
Opens up the Project Version editor displaying the list of referenced libraries and the standard properties of the selected project version and allows modifying them. For details see Editing a Project or a Project Version. |
|
Open |
Opens up the Object Browser displaying the content of this project version. |
|
Delete |
Deletes the selected project version. For details see Deleting a Project or a Project Version. |
|
Rename |
Opens up a text box to rename the selected project. |
|
Publish |
Creates a copy of the selected project version. For details see Publishing a Project Version. |
|
Export |
Exports the selected project version. For details see Exporting a Project Version. |
|
Lock/Unlock |
Locks or respectively unlocks the selected project version. For details see Locking or Unlocking a Project or a Project Version. |
The Libraries folder contains all library projects you have access to.
In the Repository Browser, the Libraries folder is indicated by a Library icon
.
A library is a reference project that can be linked into other projects. This allows you to re-use its objects within various applications.
Library projects behave like other projects except that they can only have one project version and cannot themselves use libraries.
To create a new library project, right-click the Libraries folder and from the context menu select New. For details see Creating a Project.
The Configuration folder contains subfolders for a set of configuration objects, which are project-independent and used to configure the VoiceObjects system:
Server and Service, both explained in detail in the Deployment Guide, and User, which is explained in detail in the Administration Guide.
In the Repository Browser, the Configuration folder is indicated by a Configuration icon
.
When right-clicking the Configuration folder, any of its subfolders or a particular configuration object the respective context menu comes up providing the commands describes below.

These commands have the following functions:
|
Menu Command |
Function |
|
New (only visible when you have the appropriate rights) |
In case of the Configuration folder: In case of object type folders: |
|
Refresh |
Refreshes this folder and all its subfolders. |

This context menu is only visible if you have the appropriate rights to work with configuration objects.
The commands have the following functions, being explained in more detail in Chapter 7 Basic Commands if no other reference is mentioned:
|
Menu Command |
Function |
|
|
Opens up the object editor for the selected configuration object. |
||
|
Creates a copy of the selected configuration object. |
||
|
Rename |
Opens up a text box to rename the selected configuration object. |
|
|
Deletes the selected configuration object. |
||
|
Lock/Unlock |
Locks or respectively unlocks the selected configuration object. For general information on locking/unlocking objects see Lock or Unlock Objects in Chapter 7 Basic Commands. For further information on locking configuration objects see Chapter 2 Configuring Servers and Services in the Deployment Guide. |
|
Deleted User objects are indicated by a Delete icon
in the Repository Browser. For further information on managing users see Chapter 2 User Management Basic Topics in the Administration Guide.
Depending on the overall number of projects and users managed by your Metadata Repository the number of deleted User objects may grow over time. As deleted User objects are still shown in the Repository Browser, Desktop for Eclipse provides a way to filter them out. In order to activate this filter mechanism, do the following:
· Bring the Repository Browser to the front. Click the Menu button
in the upper right corner, then Filter, and then Hide Deleted User Objects.
To create a new project, do the following:
1. Right-click the Projects folder and from the context menu select New.
Alternatively, you can open the File menu from the menu bar and click New, or click the small arrow to the right of the New button
on the toolbar. In the submenu, click VoiceObjects Project.
The New Project window opens up.

2. Enter the relevant project information:
|
Field name |
Function |
|
Project name |
Name for the new project (mandatory) |
|
Project description |
Short description for the new project (optional) |
|
Project version name |
Name for the project version (mandatory and set to Version 1.0 by default) |
|
Project version description |
Short project version description (optional) |
3. If you want to create a new library project, select the check box Create as library.
Alternatively, you can right-click the Libraries folder and from the context menu select New. You will then find the check box Create as library pre-selected.
4. If the new project or library project should be accessible for everyone within your site, select the check box Allow access to everyone. For more information on managing sites see Chapter 3 User Management Managing Sites in the Administration Guide.
5. Click Finish to create your new project. The corresponding project folder is displayed in the Repository Browser containing one subfolder representing the first project version.
Click Cancel to leave the New Project window without creating a project.
After creating a project you can optionally specify a list of users who will have permission to access it by doing the following:
1. Right-click the project folder and from the context menu select Edit. The corresponding Project editor will open up.
2. On the Security section, specify who has access to your project by dragging the corresponding users from the Users folder in the Repository Browser into the access control list.
For more information on controlling access via the Security section, refer to Access Control in Chapter 2 User Management Basic Topics in the Administration Guide.
To open a project and a corresponding project version, do the following:
· In the Repository Browser, select one of the available projects and expand its folder. All available project versions will be displayed as subfolders.
· Double-click one of the subfolders or select Open from its context menu to open the respective project version.
The Object Browser will open up containing all objects belonging to the selected project version. For detail see Chapter 4 Object Browser and Object Palette.
Projects or project versions that have been locked by you are indicated by a green Lock icon
on its folder. Projects or project versions that have been locked by any other user are indicated by a red Lock icon
. They may be viewed but not altered. A yellow Lock icon
on a project version folder indicates that the entire corresponding project has been locked either by you or by any other user. In all cases a tooltip displays the name of the user locking it. See also Locking or Unlocking a Project or a Project Version.
An Eclipse warning icon
on the project folder indicates that the respective project has been created with a previous version of VoiceObjects. To open it you first need to upgrade your project definition to be compatible with the current version of VoiceObjects.
Click the project you want to upgrade and in the upcoming window click OK to start the metadata upgrade process.

Running the metadata upgrade will create a copy of your project. The existing project name will be assigned to the new project definition while the old project definition will be indicated by the existing project name followed by a timestamp.
If a Service object references an object of your previous project as the start object you need to update this service. Replace the start object by the corresponding object of the new project. For more information on start objects in services see Chapter 2 Configuring Servers and Services in the Deployment Guide.
Each project or project version has several properties (project name, description, etc.) most of them being specified at the time they were created (see Creating a Project). These properties can be modified later on.
If you want to modify the properties for a project or a project version do the following:
· In the Repository Browser, right-click the project or project version you want to edit and from the context menu select Edit.
The corresponding Project or Project Version editor opens up (below the Project editor is shown as an example).

In the Properties section of both editors, you can modify the name and description or enter additional information. A check box at the bottom indicates if the project is locked. For detailed information on the Properties section see Properties in the Object Reference.
In addition, the Project editor contains a Security section to modify the security settings of a project. For more information on controlling access via the Security section, refer to Access Control in Chapter 2 User Management Basic Topics in the Administration Guide.

The Project Version editor contains a Libraries section from which you can link project libraries into your project version. For more information see Linking a Library into a Project Version.

VoiceObjects Desktop lets you copy either an entire project including all its project versions or just create another project version of a project (see Publishing a Project Version).
To copy an entire project, do the following:
1. In the Repository Browser, right-click the project folder of the project you want to copy and from the context menu select Copy.

The Copy Project window opens up.

2. In the Target project name field enter a name for the target project. Optionally, you may enter a project description.
3. Click Copy to start the copying of the project.
Click Cancel, if you want to leave the Copy Project window without copying the project.
You can create several project versions for one project e.g. one for development, one for testing and so on. Each version can be established and run as an active service on a server.
To publish a project version, do the following:
1. In the Repository Browser, right-click the folder of the project version you want to publish and from the context menu select Publish.

The Publish Project Version window opens up.

2. In the New Project Version field, enter the name of the new project version. By default, the name of the current project version followed by 1 is provided (Tutorial -> Tutorial 1). If the name of the project version is already followed by a number, the number is increased by 1 (Version 1.0 -> Version 1.1).
3. Optionally, you may enter a project version description in the Project version description field.
4. If you select the check box Create empty project version the project version will be completely empty (except for the system expressions). This might be useful for example in case you want to import an entire project version that has been modified outside the project. If the check box is clear the content of the current project version will be copied into the new project version.
5. If you select the check box Switch to new project version the Object Browser will open up with the content of the new project version. If the check box is clear you will stay in the Repository Browser.
6. To create the new project version, click Publish.
Click Cancel, if you want to leave the Publish Project Version window without publishing the project version.
i8Note: When publishing a new project version the corresponding service will not automatically be adapted to the new version. If you want to continue working in the new project version you need to modify the Service object accordingly. In the Service editor, link the respective object from the new project version into the Start Object field.
VoiceObjects lets you delete either an entire project or just one of its project versions.
To delete a project or a project version, do the following:
· In the Repository Browser, right-click the project or project version you want to delete and from the context menu select Delete.

A confirmation window opens up in which you need to confirm the deletion by clicking OK.
Projects or project versions that are locked by any other user cannot be deleted.
i8Note: The permission to delete an entire project or a project version depends on your user role. For further information ask your administrator. Server or Site Administrators can delete locked projects or project versions even if there are still some locked project versions or locked objects inside it (if not locked by a higher user).
8Caution: The Delete command removes projects and project versions permanently and cannot be undone!
VoiceObjects lets you lock projects and project versions to prevent them from being modified or deleted.
To lock a project or a project version, do the following:
· In the Repository Browser, right-click the project or project version you want to lock and from the context menu select Lock/Unlock.

The corresponding project or project version will be locked, which is indicated by a green Lock icon on its folder.
The following Lock icons may appear on a project or project version folder with the following properties:
|
Icon |
On a project folder |
On a project version folder |
|
|
Green Lock icon: |
Green Lock icon: |
|
|
Red Lock icon: |
Red Lock icon: |
|
|
Not available |
Yellow Lock icon: |
i8Note: A project cannot be locked if a project version or even a single object inside a project version has been locked by any other user. Likewise a project version cannot be locked if any object inside it is locked by someone else.
For details on locking/unlocking single objects see Lock or Unlock Objects in Chapter 7 Basic Commands.
For details on how to quickly find all locked objects within a project version by using the object status option see Chapter 8 Object Search.
Locked projects or project versions can only be unlocked by the user who locked them or by an administrator from the same or higher level.
To unlock a project or a project version do the following:
· In the Repository Browser, right-click the project or project version you want to unlock and from the context menu select Lock/Unlock.
i8Note: If a Server or Site Administrator unlocks a project or project version, this overrides and removes all locks on the project, project version and on all objects, which have been set by other users (as long as they do not have a higher role). Vice versa, if a Server or Site Administrator locks a project or project version this overrides all locks made by other users.
See also Lock or Unlock Objects in Chapter 7 Basic Commands.
VoiceObjects not only lets you export single objects (see Export objects in Chapter 7 Basic Commands) but also entire project versions. Thus, applications built with VoiceObjects can easily be shared among departments, business units, or partners.
To export a project version, do the following:
1. In the Repository Browser, right-click the folder of the project version to be exported and from the context menu select Export.

If the project version is currently open in the Object Browser, you may also click VoiceObjects on the menu bar and from the VoiceObjects menu, select Export Project Version.
The Export window opens up.

2. In the Location field, provide a location for the export file within the current workspace of Desktop for Eclipse. By default the import_export folder of your VoiceObjects installation is displayed.
i8Note: The location must be a valid physical directory path accessible on the machine running VoiceObjects Desktop.
3. In the Filename field, provide a name for the export file. By default, the name of the project version combined with its version number is used with blanks being replaced by underscores. If no file extension is given the extension .xml will be added automatically.
4. In the Export format field, select an export format from the drop-down list.
By default, VoiceObjectsXML is selected. This option generates a VoiceObjectsXML file, which allows developers to continue working on the application definition.
The option VoiceObjectsXML without ID creates a VoiceObjectsXML file without any IDs, which is for instance useful when creating a template application or a template object.
5. The check box Include library objects in the export is only visible when your project contains library objects. In case you want to export a project version together with its library objects refer to the paragraph Export a project version with library objects below.
6. Click Export.
If a project version references one or more libraries, the additional check box Include library objects in the export is displayed when opening the Export window.
If it is selected, which is the default, all library objects are included in the export file.
Note, that after the export the library objects are treated as standard objects. This means that when re-importing a project again that has been exported together with its library objects, the original library objects can no longer be distinguished from the standard objects and are integrated into the standard object categories folders.
If you want to move the project version along with all referenced libraries to a new repository, the following steps need to be processed in exactly the order described below.
First export the project version:
1. In the Repository Browser right-click the respective project version and from the context menu select Export. The Export window opens up.
2. In the Export window, clear the check box Include library objects in the export. This has the effect that only the references to the library objects will be exported.
3. Select VoiceObjectsXML as the export format and click Export.
Next, export all referenced libraries:
1. Right-click one of the libraries referenced in the project version and from the context menu select Export to open up the Export window.
2. Select VoiceObjects XML as the export format and click Export.
For each referenced library repeat the steps 1-2.
Next, switch to the new repository:
This can either be done on the same machine by changing the Metadata Repository connection of Desktop for Eclipse or you can transfer the export files to a separate VoiceObjects installation. Refer to Chapter 10 VoiceObjects Preferences for further details on how to adjust the VoiceObjects preferences in order to switch the Metadata Repository connection.
Next, import the previously exported libraries into the new repository:
1. Create a new library and enter a name that matches exactly the name of the previously exported library you want to import.
2. In the Repository Browser, expand the new library folder and double-click the library version folder to display its content in the Object Browser.
3. On the menu bar of Desktop for Eclipse, click VoiceObjects and select Import. The Import window opens up.

4. Browse for the corresponding library export file (the one that matches the name of the currently created library) by clicking the Browse button
to the right of the Filename field.
5. Click Import.
For each exported library repeat the steps 1-5.
Next, add the previously imported libraries to the new project version in the new repository:
1. Create a new project version or right-click an existing project version in the Repository Browser of the new repository.
2. From the context menu, select Edit. The Project Version editor opens up.
3. Switch to the Libraries section.
4. Add all originally referenced libraries to the project version by dragging them from the Repository Browser into the Libraries field of the Project Version editor.
5. Save and close the Project Version editor.
Finally, import the project version export file:
1. Double-click the project version to open the Object Browser.
2. On the menu bar of Desktop for Eclipse, click VoiceObjects and select Import. The Import window opens up.
3. Browse for the corresponding library export file by clicking the Browse button
to the right of the Filename field.
4. Click Import.
Once the import is finished the project version has been successfully transferred and all references to libraries are re-established.
VoiceObjects also supports you in backing up all projects and libraries in your Metadata Repository. Using this functionality you can move the complete set of projects and libraries from one repository to another without having to export every single project or library manually, or you can simply create a backup for security reasons. Note that projects and libraries that are not yet upgraded to the current metadata version, indicated by the upgrade icon
in front of their name in the Repository Browser, cannot be included in the backup.
To backup all projects, do the following:
1. On the menu bar, click VoiceObjects and select Backup All Projects. The Backup All Projects window opens up.

2. In the Location field, provide a location for the backup files. Select the folder in which the backup files should be stored by clicking the Browse button
to the right of the Location field.
3. Select one of three supported backup modes in the Backup mode field. You can choose to create the export files, to only create a zip archive of the export files or to create both the export files and a zip archive.
4. Click Backup to start the backup process.
Reviewers have read-only access to projects to inspect and review applications. They cannot make any changes to the application but can attach annotations to project versions to document their findings. Note that Reviewers need to be invited to projects by other users, in order to access them.
For more information on user roles and their privileges refer to Chapter 2 User Management Basic Topics in the Administration Guide.
To enter a reviewer annotation to a project version, do the following:
5. In the Repository Browser, open one of the project versions you are invited to.
6. On the menu bar, click VoiceObjects and select Enter Reviewer Annotation. This command is only available for users with Reviewer role. The Reviewer Annotation window opens up.

7. In the Annotation field, enter an annotation for the project version.
8. Click Save to save the annotation. The annotation will be added to the project version properties.
To view the project version properties right-click the project version in the Repository Browser and from the context menu select Edit. The Project Version editor opens up. Switch to the Properties section to view the reviewer annotations.

i8Note: The annotation cannot be edited later on, neither by any other user nor by yourself.
When creating a project, you can optionally choose to create it as a library. A library is a reference project that can be linked into project versions of other projects. This allows you to re-use its objects within various applications.
Library projects behave like other projects except of that they can only have a single project version and cannot themselves use libraries.
To link a library into a project version of another project, do the following:
1. In the Object Browser, right-click the Libraries folder and from the context menu select Configure Libraries. The Project Version editor of the currently opened project version will open up with the Libraries section in front.
Alternatively, you can open the Project Version editor by selecting Edit from the context menu of the respective project version folder in the Repository Browser. The Project Version editor will open up, again with the Libraries section in front.

2. From the Repository Browser drag the libraries you want to link to the project version into the Libraries section.
3. Finally save and close the Project Version editor.
Closing a project is equivalent to one of the following:
· Opening another project (see Opening a Project and a Project Version)
· Changing the Metadata Repository connection (see Chapter 10 VoiceObjects Preferences)
· Exiting Desktop for Eclipse (see Exiting Desktop for Eclipse in Chapter 1 Entering Desktop for Eclipse).
If changes have been made to an object editor and have not been saved yet a dialog will come up asking you if the changes should be saved or discarded.