- Print
- PDF
Synchronize Configuration Changes Between Lasernet Developers (Workspace)
In some situations, team members work together to develop a new revision of a particular Lasernet configuration. When each of these Lasernet Developer users opens and works on the configuration, it is essential that they make changes that are appropriate, compatible with those made by other users, and do not duplicate other users’ changes. The Workspace feature enables users to do this.
What Is the Workspace?
The workspace is a centralized area in the Config Server that stores the latest state of each configuration. If the configuration has not been modified since it was last committed, the workspace matches the latest revision of that configuration. If any user has made changes to the configuration since then, the workspace includes their in-progress, uncommitted changes to the configuration. The workspace stores all configuration changes made by all users.
When a Lasernet Developer user modifies a configuration, Lasernet Developer immediately sends their change to the workspace on the Config Server. The Config Server immediately sends that change to all other Lasernet Developer users who are working on the same configuration. For those other Lasernet Developer users, the configuration displayed by Lasernet Developer automatically updates to reflect the new change.
In this way, Lasernet synchronizes a Lasernet Developer user’s configuration changes with all other users who are working on the same configuration. As a result, Lasernet Developer always shows a user the changes that other team members have made to the configuration, in addition to the changes that they themselves have made.
When a user loads a configuration in Lasernet Developer, it loads that configuration from the workspace.
Important
Although configuration changes such as adding modules to the workflow are automatically synchronized, users must click Save Resources to manually send selected new and updated resource files (such as image and grab files) to the workspace.
Conflict Avoidance
To prevent users from simultaneously changing the same parts of a configuration, Lasernet locks a part of a configuration (such as a module) when a user begins to modify it. That element becomes locked in the workspace and this change of state is pushed to all Lasernet Developer users who are currently working on that configuration. As a result, while one user is modifying an item (like a module), no other user can modify it or delete it.
After the user finishes making their changes and closes the Properties window of that module, Lasernet Developer releases the lock and sends the user’s changes to the workspace. The Config Server then pushes the lock release and the configuration change to other users.
Save Resources
Unlike configuration changes that are automatically synchronized (such as adding an engine or changing a setting on an output), you must use the Save Resources feature to manually send new and changed resources to the workspace. This is because you might need to be selective about which resources you add to the configuration.
For example, the Resources area in Lasernet Developer might contain three images that a form within the configuration uses. It might also contain several large image files that you tried out when developing the form but ultimately did not use. Also, it might contain a large number of grab files that you used when testing the configuration. Unused and redundant resources are not essential for the configuration to function and can take up large amounts of storage space, so they should not become part of the configuration. In this scenario, you would use Save Resources to send only the three used image files to the workspace.
Example
Suppose that User A and User B are working on the same Lasernet configuration.
Add and Remove Modules
If User A adds a module to the workflow, this module will automatically appear in Lasernet Developer for User B.
If User B deletes a module from the workflow, it will automatically disappear from Lasernet Developer for User A.
Modify Module Properties
If User A opens the Properties window for a module in the workflow, Lasernet Developer adds a lock icon to the module. As User A has opened the Properties window, User B cannot do the same. Also, User B cannot delete the module.
User A
User B
After User A makes settings changes and close the Properties window, Lasernet Developer removes the lock icon. If User B opens the Properties window for the module, they can see the change that User A made.
Save Resources
User A adds an image to the Resources area of the configuration and adds that image to a form design. After testing the form design, User A is satisified with the image and uses Save Resources to send it to the workspace.
After User A manually sends the image to the workspace, Lasernet automatically pushes the image to User B. The image is now present in the Resources area for both users. As User A also changed a form design, that change is pushed to User B too.
User A
User B
Commit Changes
Because changes are synchronized across both users, the Commit Changes window for User B contains the change that User A made. The content of this window is the same for both users.