It's all about the answers!

Ask a question

help!, extending client UI questions, enhancement 153049


sam detweiler (12.4k6177201) | asked Feb 21 '11, 11:58 a.m.
are there any samples, documentation on extending, subclassing, modifying the RTC client and web UIs to support local business processes.

I have opened enhancement workitem 153049, which documents requirements to merge links and attachments together under a common UI, and provide support for exits below to manage symbolic links..

we cannot allow storage of huge blob files into the RTC relational DB. these files might be multi-gig to terabyte in size. (customer system or runtime environment dumps).

1. we cannot allow users to make the mistake of putting the file in the DB by selecting the wrong UI navigation.
2. we want to have a single navigation style regardless of file source location.
today RTC has a windows style file open navigation for attachments, but a plain entryfield for links. And these two objects are displayed in two separate areas.
3. in our environment, we have a shared SAN which all rtc and system users have file system access to. (but not always at the same drive letter for windows users).
we need to be able to hook the navigation 'save' operation, to replace the hard drive and path with a symbolic link. and on open replace that link with the actual hard linkage so that the default object open action works.
our synchronization repository manager will handle that for linkage between the systems.
4. adding this to the eclipse client seems easier, but this effectively destroys the web client effectiveness. so we really need to enhance both..

but, I need to find a way to develop a prototype, add a new tab to the workitem at minimum.

I see that I can disable access to attachments thru the project permissions.. but this leaves us with the no navigation link entry field usability.

and it may be that for files/attachments under 1 meg, I would leave them in RTC db.. so the exit needs to manage where the attachment goes..

sam

6 answers



permanent link
sam detweiler (12.4k6177201) | answered Mar 23 '11, 12:00 p.m.
In RTC V3 there is support for additional client workitem editor presentations and ui layouts..

I've fiddled with some, and can see who I would rework the UI with a plugin of my own to move support for attachments and links to my own tab, and provide the additional UI mechanisms we need..

so I'd like to start with something, but I sure can't find it in the source I have in the sdk.

I am looking in com.ibm.team.workitem.ide.rtc.feature.source
at package com\ibm\team\workitem\ide\ui\internal\editor\presentations

but I don't see anything obvious in the source..

I have been able to move the default presentations for these two object types to my own tab. Now I would like to provide my own presentation handler and place it on this tab section instead.

I looked thru the wiki, and there is something old on this, but it is unclear if it applies, and there seems (to me) to be some text missing
http://jazz.net/wiki/bin/view/Main/ContributingAttributePresentations

I am seeking pointers

sam

permanent link
sam detweiler (12.4k6177201) | answered Mar 25 '11, 12:59 p.m.
bump...

anybody?

sam

permanent link
sam detweiler (12.4k6177201) | answered Jul 15 '11, 9:40 a.m.
bump

Still need help here.. running 3.0.1

Do i have to create a new link type to replace the standard ones ?

Sam

permanent link
sam detweiler (12.4k6177201) | answered Aug 13 '11, 10:32 a.m.
well, I've made progress.. I can now do all the mapping required. I decided NOT to make my own type, and just change the code for standard Attachments.

I had to resort to stuffing the specially markedup filename INTO the file data that is saved at the server.. then read it in, check for the special string, and map that back to the right local volume id..

works nice..
I still have to determine the packaging and maintenance approaches.. as I have to change IBM provided classes, because there is no plugin extension point here. Three classes changed (for native client), and my special class added. reshipping the plugins ( one class per unfortunately) might be better than editing the IBM provided jar files.. still have to update every client tho..
(ugh).. web code still to be fixed.

now.. I want to configure the data this uses, to make it more flexible.
I want to save the parms at the server, so that my 4000 clients don't have to be modified if the network configuration changes, or based on performance tests we change the size of the file to be mapped this way..

I hear that I can add a config section to the ccm server config panel, and get access from my client side code..
(as an aside I will need this for the web side code as well, so its better at the server in one place, and away from where the users can muck with it.)

anyone have any pointers to how to add (contribute) my own section to the ccm advanced config screen, and access those from client code?

thx

Sam

permanent link
sam detweiler (12.4k6177201) | answered Aug 14 '11, 1:38 p.m.
well, the web client side of this is going to be very difficult now..
the browser no longer provides the full path filename of uploads.
FF/Safari/Chrome.. IE provides a fake path. now we can't tell if the file they are adding is local to the users machine, or off on our san disk.. (which our server doesn't have access to).

and it looks like you can't push back a filename for the browser to open either.

danged hackers really screw it up for the rest of us..

Sam

permanent link
sam detweiler (12.4k6177201) | answered Sep 09 '11, 10:09 p.m.
well, I've made progress.. I can now do all the mapping required. I decided NOT to make my own type, and just change the code for standard Attachments.

I had to resort to stuffing the specially markedup filename INTO the file data that is saved at the server.. then read it in, check for the special string, and map that back to the right local volume id..

works nice..
I still have to determine the packaging and maintenance approaches.. as I have to change IBM provided classes, because there is no plugin extension point here. Three classes changed (for native client), and my special class added. reshipping the plugins ( one class per unfortunately) might be better than editing the IBM provided jar files.. still have to update every client tho..
(ugh).. web code still to be fixed.

now.. I want to configure the data this uses, to make it more flexible.
I want to save the parms at the server, so that my 4000 clients don't have to be modified if the network configuration changes, or based on performance tests we change the size of the file to be mapped this way..

I hear that I can add a config section to the ccm server config panel, and get access from my client side code..
(as an aside I will need this for the web side code as well, so its better at the server in one place, and away from where the users can muck with it.)

anyone have any pointers to how to add (contribute) my own section to the ccm advanced config screen, and access those from client code?

thx

Sam


thanks to some additional help, I have solved the client side to server parameter packaging issue.. see https://jazz.net/forums/viewtopic.php?p=64382#64382

Sam

Your answer


Register or to post your answer.