Hi,
What I can tell you:
1. The project-ID is set on the host-side in
SarosSessionManager.startSession or
SarosSessionManager.addResourcesToSession which both start the a
Negotiation-Process. The projectID is set as "projectID =
String.valueOf(SESSION_ID_GENERATOR.nextInt(Integer.MAX_VALUE));"
In general our shared resources and their IDs are managed/stored by the
SarosProjectMapper.
We have a Testframework called STF that we use for automated GUI-Tests.
The website should contain help on how to run existing STF-Tests and
setup new ones. http://www.saros-project.org/node/140. You can get
information about how to write STF-Test for example by looking at our
existing ones.
Also you can run multiple eclipse instances on the same computer.
Information about this should also be on the website.
Regards,
Patrick
Am 27.06.2013 07:28, schrieb Raydhitya Yoseph:
Few design questions. I hope the answers also point somewhere in the code.
1. Projects stored in a map using String as its key and its main
identifier. How to determine what String will become one project's id?
2. One project resources stored in a map using the project as its key.
I see many methods parameters contain project and its resources and
these two are passed to many methods. Why it is not in one class to
simplifying the project and resources passing? Why not also the class
contains the project's id? And why projects and resources stored in
maps? Is simple List is not enough?
3. Why Saros use exception as control flow? Mainly in
CancelableProcess.terminateProcess().
4. I only want to know the reasons for number two question. Really
change project into one class will make big impact to many things. So,
I'll keep going with all the maps. IncomingProjectNegotiation has
id-project map. OutgoingProjectNegotiation only has project list, but
the documentation says "this maps the currently exchanging projects.
projectID => project in workspace". Is it also intended to be
id-project map?
My last question is not related to the design. I use my laptop to dive
in the source code, run the client, and my desktop to run another
client. I usually connect the clients, share one project to establish
the session, and try cancelling the next project sharing. Where to
look to automate this process?
Best regards,
Raydhitya
--
Raydhitya Yoseph
Informatics Engineering
Institut Teknologi Bandung
http://raydhityayoseph.blogspot.com
------------------------------------------------------------------------------
This SF.net email is sponsored by Windows:
Build for Windows Store.
http://p.sf.net/sfu/windows-dev2dev
_______________________________________________
DPP-Devel mailing list
DPP-Devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/dpp-devel
------------------------------------------------------------------------------
This SF.net email is sponsored by Windows:
Build for Windows Store.
http://p.sf.net/sfu/windows-dev2dev
_______________________________________________
DPP-Devel mailing list
DPP-Devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/dpp-devel