Writing a custom Teamwork management plug-in and delving into internals of org.eclipse.team.* [message #287936] |
Fri, 08 July 2005 16:52 |
Marcin Dobosz Messages: 80 Registered: July 2009 |
Member |
|
|
Hi,
I'm working on a plug-in for compsci students that is meant to simplify
checking in and out projects from cvs repositories. The idea is that every
person would have their own cvs repository in which they would store their
projects. Additionally, teams of students working on a team project would
use only one student's repositories for the project.
To do that, I was thinking about doing something similar to having a
modified cvs login window with the following fields:
user id - the id of the user working on files
cvs owner id - the id of the person who has the cvs rep with the project.
this would usually be the same as user id, but not necessarily (if "user id"
wanted to connect to someone else's repository)
cvs path - the path to owner id's cvs repository, which would be determined
from the "cvs owner id" field (say if somebody typed in "joe", the path
would become "/users/joe/cvs")
Creating a dialog like this would not be a problem. My question concerns how
do I actually use the entered information to connect to the right cvs,
authenticate, etc. (including taking advantage of eclipse's password
management and getting the projects associated with the right repository for
the future).
Additionally, I would like to make simplified check in/out jobs that would
perform transparently to the user if there are no repository conlficts, or
launch the team perspective if conflicts do occur. More specifically, how
can I do synchronization jobs and then proceed one way or the other based on
whether conflicts exist or not?
This might be out of scope of the standard team API as it probably goes into
the org.eclipse.team.internal packages, so all help would be appreciated
(including examples, or maybe ways of initiating and managing cvs
connections without dependence on the internal packages, which as I
understand should not be fully relied on)
Thanks
Marcin Dobosz
|
|
|
Re: Writing a custom Teamwork management plug-in and delving into internals of org.eclipse.team.* [message #288010 is a reply to message #287936] |
Mon, 11 July 2005 13:26 |
Eclipse User |
|
|
|
Originally posted by: Michael_Valenta.oti.com
Marcin,
I seem to recall reading an article in Dr Dobbs about something very similar
to this. Sorry but I don't have a reference. If you want to roll your own,
there should be no problem using the internal Team/CVS packages with the
understanding that future Eclipse releases may break your plugin.
As to your specific question, have a look at the
CVSProviderPlugin.getPlugin.getCVSWorkspaceSubscriber() method which returns
a Subscriber that allows you to refresh the synchronization state of one or
more resources. Once refreshed, the state of each resource can be checked.
Michael
"Marcin Dobosz" <md36@duke.edu> wrote in message
news:damb1k$51f$1@news.eclipse.org...
> Hi,
>
> I'm working on a plug-in for compsci students that is meant to simplify
> checking in and out projects from cvs repositories. The idea is that every
> person would have their own cvs repository in which they would store their
> projects. Additionally, teams of students working on a team project would
> use only one student's repositories for the project.
>
> To do that, I was thinking about doing something similar to having a
> modified cvs login window with the following fields:
> user id - the id of the user working on files
> cvs owner id - the id of the person who has the cvs rep with the project.
> this would usually be the same as user id, but not necessarily (if "user
> id" wanted to connect to someone else's repository)
> cvs path - the path to owner id's cvs repository, which would be
> determined from the "cvs owner id" field (say if somebody typed in "joe",
> the path would become "/users/joe/cvs")
>
> Creating a dialog like this would not be a problem. My question concerns
> how do I actually use the entered information to connect to the right cvs,
> authenticate, etc. (including taking advantage of eclipse's password
> management and getting the projects associated with the right repository
> for the future).
>
> Additionally, I would like to make simplified check in/out jobs that would
> perform transparently to the user if there are no repository conlficts, or
> launch the team perspective if conflicts do occur. More specifically, how
> can I do synchronization jobs and then proceed one way or the other based
> on whether conflicts exist or not?
>
> This might be out of scope of the standard team API as it probably goes
> into the org.eclipse.team.internal packages, so all help would be
> appreciated (including examples, or maybe ways of initiating and managing
> cvs connections without dependence on the internal packages, which as I
> understand should not be fully relied on)
>
> Thanks
>
> Marcin Dobosz
>
|
|
|
Powered by
FUDForum. Page generated in 0.02606 seconds