It's all about the answers!

Ask a question

ILoadRule and ILoadRuleFactory


Hampus Wingren (3198) | asked Aug 26 '10, 8:28 a.m.
Hi,

Im trying to intercept the workspace loading process but I cant really find any extension points for that. I can see that there is an implementation for ILoadRule which reads a file and figures out which files/folders to checkout but I would like to have my own logic for loading workspaces. Is this possible in some way?

Regards,
Hampus

8 answers



permanent link
Michael Valenta (3.7k3) | answered Aug 26 '10, 11:14 a.m.
FORUM MODERATOR / JAZZ DEVELOPER
Hampus,

This is not really practical at this point in time. In 3.0, we do
provide a mechanism for clients to provide their own load mutator (i.e.
the code that writes the files and metadata to the local disk) but it is
still pretty heavy weight in the sense that you would need to make use
of SCM internals to make it work (and it is a lot of work to write a
mutator).

Having said that, it may be the case that there is a way to accomplish
what you want with what we currently have. Perhaps you can elaborate on
what you want your load logic to be.

Michael

hampus wrote:
Hi,

Im trying to intercept the workspace loading process but I cant
really find any extension points for that. I can see that there is an
implementation for ILoadRule which reads a file and figures out which
files/folders to checkout but I would like to have my own logic for
loading workspaces. Is this possible in some way?

Regards,
Hampus

permanent link
Hampus Wingren (3198) | answered Aug 26 '10, 3:02 p.m.
Hi Michael,

What I want to do is to load a repository workspace containing a few projects and then based on Ivy information in those projects figure out the dependencies from different configurations and then load them from a binary repository into an EAR and perhaps a few supporting projects acting as containers for different classpaths.

Ive seen the way you do it with developer offerings but that seems quite specific for OSGI environments.

Regards,
Hampus


Hampus,

This is not really practical at this point in time. In 3.0, we do
provide a mechanism for clients to provide their own load mutator (i.e.
the code that writes the files and metadata to the local disk) but it is
still pretty heavy weight in the sense that you would need to make use
of SCM internals to make it work (and it is a lot of work to write a
mutator).

Having said that, it may be the case that there is a way to accomplish
what you want with what we currently have. Perhaps you can elaborate on
what you want your load logic to be.

Michael

hampus wrote:
Hi,

Im trying to intercept the workspace loading process but I cant
really find any extension points for that. I can see that there is an
implementation for ILoadRule which reads a file and figures out which
files/folders to checkout but I would like to have my own logic for
loading workspaces. Is this possible in some way?

Regards,
Hampus

permanent link
Michael Valenta (3.7k3) | answered Aug 27 '10, 10:54 a.m.
FORUM MODERATOR / JAZZ DEVELOPER
Hampus,

It sounds like you may be able to write a script that uses the SCM CLI
to load the initial projects, analyze the Ivy information and then load
any additional projects.

Michael

hampus wrote:
Hi Michael,

What I want to do is to load a repository workspace containing a few
projects and then based on Ivy information in those projects figure
out the dependencies from different configurations and then load them
from a binary repository into an EAR and perhaps a few supporting
projects acting as containers for different classpaths.

Ive seen the way you do it with developer offerings but that seems
quite specific for OSGI environments.

Regards,
Hampus


Michael Valentawrote:
Hampus,
This is not really practical at this point in time. In 3.0, we do
provide a mechanism for clients to provide their own load mutator
(i.e.
the code that writes the files and metadata to the local disk) but
it is
still pretty heavy weight in the sense that you would need to make
use
of SCM internals to make it work (and it is a lot of work to write a

mutator).

Having said that, it may be the case that there is a way to
accomplish
what you want with what we currently have. Perhaps you can elaborate
on
what you want your load logic to be.

Michael

hampus wrote:
Hi,

Im trying to intercept the workspace loading process but I cant
really find any extension points for that. I can see that there is
an
implementation for ILoadRule which reads a file and figures out
which
files/folders to checkout but I would like to have my own logic for
loading workspaces. Is this possible in some way?

Regards,
Hampus


permanent link
Hampus Wingren (3198) | answered Aug 30 '10, 6:20 a.m.
Could you point me to any resources regarding this mutator thing?

Hampus

Hampus,

It sounds like you may be able to write a script that uses the SCM CLI
to load the initial projects, analyze the Ivy information and then load
any additional projects.

Michael

hampus wrote:
Hi Michael,

What I want to do is to load a repository workspace containing a few
projects and then based on Ivy information in those projects figure
out the dependencies from different configurations and then load them
from a binary repository into an EAR and perhaps a few supporting
projects acting as containers for different classpaths.

Ive seen the way you do it with developer offerings but that seems
quite specific for OSGI environments.

Regards,
Hampus


Michael Valentawrote:
Hampus,
This is not really practical at this point in time. In 3.0, we do
provide a mechanism for clients to provide their own load mutator
(i.e.
the code that writes the files and metadata to the local disk) but
it is
still pretty heavy weight in the sense that you would need to make
use
of SCM internals to make it work (and it is a lot of work to write a

mutator).

Having said that, it may be the case that there is a way to
accomplish
what you want with what we currently have. Perhaps you can elaborate
on
what you want your load logic to be.

Michael

hampus wrote:
Hi,

Im trying to intercept the workspace loading process but I cant
really find any extension points for that. I can see that there is
an
implementation for ILoadRule which reads a file and figures out
which
files/folders to checkout but I would like to have my own logic for
loading workspaces. Is this possible in some way?

Regards,
Hampus


permanent link
Michael Valenta (3.7k3) | answered Aug 30 '10, 10:06 a.m.
FORUM MODERATOR / JAZZ DEVELOPER
There is no doc on the mutators as it is internal to SCM. As I indicated
in my previous post, the only practical way of achieving what you want
is to investigate scripting your load using the SCM command line client.

Michael

hampus wrote:
Could you point me to any resources regarding this mutator thing?

Hampus

Michael Valentawrote:
Hampus,
It sounds like you may be able to write a script that uses the SCM
CLI
to load the initial projects, analyze the Ivy information and then
load
any additional projects.

Michael

hampus wrote:
Hi Michael,

What I want to do is to load a repository workspace containing a
few
projects and then based on Ivy information in those projects figure
out the dependencies from different configurations and then load
them
from a binary repository into an EAR and perhaps a few supporting
projects acting as containers for different classpaths.

Ive seen the way you do it with developer offerings but that seems
quite specific for OSGI environments.

Regards,
Hampus


Michael Valentawrote:
Hampus,
This is not really practical at this point in time. In 3.0, we do
provide a mechanism for clients to provide their own load mutator
(i.e.
the code that writes the files and metadata to the local disk) but
it is
still pretty heavy weight in the sense that you would need to make
use
of SCM internals to make it work (and it is a lot of work to write
a
mutator).

Having said that, it may be the case that there is a way to
accomplish
what you want with what we currently have. Perhaps you can
elaborate
on
what you want your load logic to be.

Michael

hampus wrote:
Hi,

Im trying to intercept the workspace loading process but I cant
really find any extension points for that. I can see that there is
an
implementation for ILoadRule which reads a file and figures out
which
files/folders to checkout but I would like to have my own logic for
loading workspaces. Is this possible in some way?

Regards,
Hampus



permanent link
Hampus Wingren (3198) | answered Aug 31 '10, 4:24 a.m.
Ok, I understand what youre saying but our developers have become kind of familiar to a tight integration between our current "SCM" (CVS and a lot of XML) and RAD. They can synchronize through participants and the synchronize view with different Ivy repositories. I think that they would be disapointed if we went back to a scripting solution without real integrated UI etc.

What about connectors? Could we write a connector that would synchronize the workspace with an Ivy binary repository?

Hampus


There is no doc on the mutators as it is internal to SCM. As I indicated
in my previous post, the only practical way of achieving what you want
is to investigate scripting your load using the SCM command line client.

Michael

hampus wrote:
Could you point me to any resources regarding this mutator thing?

Hampus

Michael Valentawrote:
Hampus,
It sounds like you may be able to write a script that uses the SCM
CLI
to load the initial projects, analyze the Ivy information and then
load
any additional projects.

Michael

hampus wrote:
Hi Michael,

What I want to do is to load a repository workspace containing a
few
projects and then based on Ivy information in those projects figure
out the dependencies from different configurations and then load
them
from a binary repository into an EAR and perhaps a few supporting
projects acting as containers for different classpaths.

Ive seen the way you do it with developer offerings but that seems
quite specific for OSGI environments.

Regards,
Hampus


Michael Valentawrote:
Hampus,
This is not really practical at this point in time. In 3.0, we do
provide a mechanism for clients to provide their own load mutator
(i.e.
the code that writes the files and metadata to the local disk) but
it is
still pretty heavy weight in the sense that you would need to make
use
of SCM internals to make it work (and it is a lot of work to write
a
mutator).

Having said that, it may be the case that there is a way to
accomplish
what you want with what we currently have. Perhaps you can
elaborate
on
what you want your load logic to be.

Michael

hampus wrote:
Hi,

Im trying to intercept the workspace loading process but I cant
really find any extension points for that. I can see that there is
an
implementation for ILoadRule which reads a file and figures out
which
files/folders to checkout but I would like to have my own logic for
loading workspaces. Is this possible in some way?

Regards,
Hampus



permanent link
Geoffrey Clemm (30.1k23035) | answered Aug 31 '10, 8:51 a.m.
FORUM ADMINISTRATOR / FORUM MODERATOR / JAZZ DEVELOPER
WRT the ClearCase Connectors, the SCM Synchronizer machinery used by the
ClearCase Synchronizer does transfer data, but it does so directly
between a stream in the RTC repository and the semantic equivalent of a
stream in the other repository (bypassing the file system altogether,
for efficiency and to avoid file system peculiarities such as whether or
not symlinks are supported), so that wouldn't help you here. The
Subversion Connector uses completely different underlying machinery, so
I'll defer to Michael on whether the Subversion Connector might have
some application here.

Cheers,
Geoff

On 8/31/2010 4:38 AM, hampus wrote:
Ok, I understand what youre saying but our developers have become
kind of familiar to a tight integration between our current
"SCM" (CVS and a lot of XML) and RAD. They can synchronize
through participants and the synchronize view with different Ivy
repositories. I think that they would be disapointed if we went back
to a scripting solution without real integrated UI etc.

What about connectors? Could we write a connector that would
synchronize the workspace with an Ivy binary repository?

Hampus


Michael Valentawrote:
There is no doc on the mutators as it is internal to SCM. As I
indicated
in my previous post, the only practical way of achieving what you
want
is to investigate scripting your load using the SCM command line
client.

Michael

hampus wrote:
Could you point me to any resources regarding this mutator thing?

Hampus

Michael Valentawrote:
Hampus,
It sounds like you may be able to write a script that uses the SCM
CLI
to load the initial projects, analyze the Ivy information and then
load
any additional projects.

Michael

hampus wrote:
Hi Michael,

What I want to do is to load a repository workspace containing a
few
projects and then based on Ivy information in those projects figure
out the dependencies from different configurations and then load
them
from a binary repository into an EAR and perhaps a few supporting
projects acting as containers for different classpaths.

Ive seen the way you do it with developer offerings but that seems
quite specific for OSGI environments.

Regards,
Hampus


Michael Valentawrote:
Hampus,
This is not really practical at this point in time. In 3.0, we do
provide a mechanism for clients to provide their own load mutator
(i.e.
the code that writes the files and metadata to the local disk) but
it is
still pretty heavy weight in the sense that you would need to make
use
of SCM internals to make it work (and it is a lot of work to write
a
mutator).

Having said that, it may be the case that there is a way to
accomplish
what you want with what we currently have. Perhaps you can
elaborate
on
what you want your load logic to be.

Michael

hampus wrote:
Hi,

Im trying to intercept the workspace loading process but I cant
really find any extension points for that. I can see that there is
an
implementation for ILoadRule which reads a file and figures out
which
files/folders to checkout but I would like to have my own logic for
loading workspaces. Is this possible in some way?

Regards,
Hampus




permanent link
Michael Valenta (3.7k3) | answered Sep 11 '10, 10:04 a.m.
FORUM MODERATOR / JAZZ DEVELOPER
Hampus,

I would recommend that you open an enhancement request against the RTC
Source Control component this. Make sure to include a description of the
use cases you require. Once we have a better understanding of the use
cases, we may be able to suggest some approaches with the existing API
or work toward adding support for them.

Michael

hampus wrote:
Ok, I understand what youre saying but our developers have become
kind of familiar to a tight integration between our current
"SCM" (CVS and a lot of XML) and RAD. They can synchronize
through participants and the synchronize view with different Ivy
repositories. I think that they would be disapointed if we went back
to a scripting solution without real integrated UI etc.

What about connectors? Could we write a connector that would
synchronize the workspace with an Ivy binary repository?

Hampus


Michael Valentawrote:
There is no doc on the mutators as it is internal to SCM. As I
indicated
in my previous post, the only practical way of achieving what you
want
is to investigate scripting your load using the SCM command line
client.
Michael

hampus wrote:
Could you point me to any resources regarding this mutator thing?

Hampus

Michael Valentawrote:
Hampus,
It sounds like you may be able to write a script that uses the SCM
CLI
to load the initial projects, analyze the Ivy information and then
load
any additional projects.

Michael

hampus wrote:
Hi Michael,

What I want to do is to load a repository workspace containing a
few
projects and then based on Ivy information in those projects figure
out the dependencies from different configurations and then load
them
from a binary repository into an EAR and perhaps a few supporting
projects acting as containers for different classpaths.

Ive seen the way you do it with developer offerings but that seems
quite specific for OSGI environments.

Regards,
Hampus


Michael Valentawrote:
Hampus,
This is not really practical at this point in time. In 3.0, we do
provide a mechanism for clients to provide their own load mutator
(i.e.
the code that writes the files and metadata to the local disk) but
it is
still pretty heavy weight in the sense that you would need to make
use
of SCM internals to make it work (and it is a lot of work to write
a
mutator).

Having said that, it may be the case that there is a way to
accomplish
what you want with what we currently have. Perhaps you can
elaborate
on
what you want your load logic to be.

Michael

hampus wrote:
Hi,

Im trying to intercept the workspace loading process but I cant
really find any extension points for that. I can see that there is
an
implementation for ILoadRule which reads a file and figures out
which
files/folders to checkout but I would like to have my own logic for
loading workspaces. Is this possible in some way?

Regards,
Hampus



Your answer


Register or to post your answer.