Immediate Help required

Former SVN Browser
ayaseen
Posts: 12
Joined: Fri Jun 16, 2006 6:38 am
Contact:

Immediate Help required

Postby ayaseen » Tue Jul 11, 2006 5:15 pm

Hi All,
I am adding functionality in polarion to add/remove/update/display metadata properties on a specified file/folder. I am done with the basic work.
Now I need information where to place JavaSVN interfacing function in polarion??
According to my understanding I shall add
public void doSetProperty(File path, String propName, String propValue, boolean force, boolean recursive, ISVNPropertyHandler handler) throws SVNException{} in IDataProvider and DataProvider.
As this is the function in SVNWCClient in JavaSVN library.
Can you please suggest me how to retrieve reference to SVNWCClient and how to pass required parameters for creating this reference?
and any help in this regard will be highly appreciated.

Kind Regards
Aamir Yaseen

ivinnykov
Posts: 473
Joined: Tue Jan 03, 2006 11:57 am
Location: Kharkiv, Ukraine

Postby ivinnykov » Tue Jul 11, 2006 6:51 pm

Dear Aamir,

First of all thank you for your efforts on functionality improvements. Property support is a functionality, which is required and is in our list for project next steps, so your help with it will be really appreciated.

I want to guide you through technical aspects. org.polarion.svnwebclient.data.IDataProvider is an abstract interface to SVN data layer. This interface contains SVN operations, which are required by UI. This interface is abstract, because doesn't oriented to communication library implementation and because of this it can be easy to switch between different libraries like JavaSVN and JavaHL. Because this interface is abstract, it shouldn't contain any code related with JavaSVN or any providers - only Java datatypes and own classes are allowed there. We also have data abstarction for returned result, which is represented by classes in org.polarion.svnwebclient.data.model package.

Currently we have the one implementation of the IDataProvider: org.polarion.svnwebclient.data.javasvn.DataProvider. This implementation uses JavaSVN. Because of performance reasons we operate with JavaSVN through internal JavaSVN interface SVNRepository. SVNRepository instance is created and initialized automatically during DataProvider instantiation, so you should use SVNRepository like in other methods.

Currently I see following areas, where your approach should be improved in order to be aligned with WebClient concept:

1. Avoid use of JavaSVN-specific parameter ISVNPropertyHandler in the abstract IDataProvider interface. I think that rather you should create handler instance in method implementation.

2. WebClient doen't use working copy, so File path paremeter can't be used. Instead find API, which can set property remotely on repository and replace this parameter to String url, like in other methods.

3. Because of point 2 you can't use SVNWCClient. Please find appropriate interface in JavaSVN, which can set properties remotely on the repository. Use interfaces from org.tmatesoft.svn.examples.repository and related.

4. Align method name to existed methods. I propose something like addProperty.

5. It also will be great to have related methods - getProperties, removeProperty.

It also will be useful to evaluate and follow the approach of other methods in DataProvider. It can give more info how things work in WebClient.

Please also feel free to ask if you need a help from us.
Best regards,
Igor Vinnykov
Polarion Team

ayaseen
Posts: 12
Joined: Fri Jun 16, 2006 6:38 am
Contact:

Metadata Properties GUI and Application Flow

Postby ayaseen » Wed Jul 12, 2006 9:59 am

Dear ivinnykov,
Thanks for the detailed answer to my questions.
Now I would like to have your opinion in defining a flow and GUI of this use case.
My Suggestions:
We should add one link on welcome page (directoryContent.jsp) for Metadata Handling.
User may select only one file/directory from listing to update metadata.
We will have to set Action of the form dir_list dynamically, which can be done using JavaScript.
This will decide whether to submit this form to delete.jsp or metadata.jsp.
Then we may provide list of existing Attributes for the selected file/folder, and user may add/update or delete existing attribute.

I would highly appreciate your guideline and response in this regard.
Kind Regards ~~~
H.M. Aamir Yaseen

ivinnykov
Posts: 473
Joined: Tue Jan 03, 2006 11:57 am
Location: Kharkiv, Ukraine

Postby ivinnykov » Thu Jul 27, 2006 3:06 pm

Dear Aamir,

Thank you for sharing your thoughts about metadata management. I think that there is simpler and more natural solution. Metadata are relared with particular resource: either folder of file. Action panel should have additional button named as "Properties list", which should behave the same way as "Revisions list": i.e. when we click on it it opens new page, which represents revision list, applied for current resource (folder or file). In this view we can add, delete and change properties.

IMO this approach is more simpler and natural - we already have currently selected resource, so don't need to have a deal with resource selection, JavaScript and other things. All what we need - show "Properties list" button in the Actions panel. Rule when show it and when not will be the same as for "Revisions list".

I suggest you to follow this way. Please don't hesitate to discuss if some help from my side is required.
Best regards,

Igor Vinnykov

Polarion Team

ayaseen
Posts: 12
Joined: Fri Jun 16, 2006 6:38 am
Contact:

Postby ayaseen » Fri Jul 28, 2006 11:26 am

Dear ivinnykov,
I have added Metadata addition functionality in Polarion.
As i received your reply in the morning after completing my task, so i am sorry i could not follow your workflow like REVISIONS work.
But i will update this according to your guideline.

I have updated my code according to your coding instructions, it would be great if you can review my small chunck of code.
This will give me confidence to continue work accordingly :)

How can i share my code with you for review?
Kind Regards ~~~

H.M. Aamir Yaseen

ivinnykov
Posts: 473
Joined: Tue Jan 03, 2006 11:57 am
Location: Kharkiv, Ukraine

Postby ivinnykov » Fri Jul 28, 2006 12:49 pm

Dear Aamir,

Yes, I will be glad to review your changes and moreover it will be great to apply them to the source code in order to share with other users. So if you are not against it, please send patch to the mail list svnwebclient-users@polarion.org (see subscription instuctions here: http://www.polarion.org/index.php?page= ... nwebclient). We will include you to list of project contibutors.
Best regards,

Igor Vinnykov

Polarion Team

ayaseen
Posts: 12
Joined: Fri Jun 16, 2006 6:38 am
Contact:

Postby ayaseen » Mon Jul 31, 2006 12:49 pm

Dear ivinnykov,
I need some guidelines, how to make Patch for you people?
I have been working on Rel 2.5 source code (Yes I can update it for required version in a very short time), so shall I send u updated files only with a document mentioning my updations or their is some other way to send you update.
Kind Regards ~~~

H.M. Aamir Yaseen

ivinnykov
Posts: 473
Joined: Tue Jan 03, 2006 11:57 am
Location: Kharkiv, Ukraine

Postby ivinnykov » Mon Jul 31, 2006 1:36 pm

Dear Aamir,

Do you use our free project Subversive (http://www.polarion.org/index.php?page= ... subversive) for access to SVN from the Eclipse? If so, it's pretty simple to make a patch. Just make new location, which points to our SVN, checkout WebClient and apply your source code changes. Then you can click on Team > Create Patch... in project context menu and follow wizard.

Patch sending is preffered, because we can easily apply it to code.
Best regards,

Igor Vinnykov

Polarion Team

lrp
Posts: 5
Joined: Thu Sep 14, 2006 10:36 am
Location: Norway

Status on this?

Postby lrp » Thu Sep 14, 2006 10:44 am

Hey everyone.

I'm very interested in using this functionality, but I can't find it included in the (very recent) nightly build I checked out. Is it included in the main build (and if so, in what nightly build date), or do I have to download it separately somehow?

Lars-Remi Pettersen

lrp
Posts: 5
Joined: Thu Sep 14, 2006 10:36 am
Location: Norway

Postby lrp » Mon Oct 02, 2006 1:10 pm

No info on this one then? I guess it didn't get added to the code...?

swindle
Posts: 1
Joined: Thu Jul 05, 2007 3:54 pm
Location: Texas
Contact:

Postby swindle » Thu Jul 05, 2007 3:55 pm

ivinnykov wrote:Dear Aamir,

Thank you for sharing your thoughts about metadata management. I think that there is simpler and more natural solution. Metadata are relared with particular resource: either folder of file. Action panel should have additional button named as "Properties list", which should behave the same way as "Revisions list": i.e. when we click on it it opens new page, which represents revision list, applied for current resource (folder or file). In this view we can add, delete and change properties.

IMO this approach is more simpler and natural - we already have currently selected resource, so don't need to have a deal with resource selection, JavaScript and other things. All what we need - show "Properties list" button in the Actions panel. Rule when show it and when not will be the same as for "Revisions list".

I suggest you to follow this way. Please don't hesitate to discuss if some help from my side is required.


I agree with this approach.


Return to “Polarion SVN Web Client”

Who is online

Users browsing this forum: Google [Bot] and 15 guests