Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [mylar-dev] Could not restore offline repository tasks file - connector core class not found

Rob,

thanks for the info. I have eliminated my own ...TaskData and use RepositoryTaskData and store all the needed
info in RepositoryTaskData Attributes. That fixed the problem (it took some time to refactor it properly 8-).

I think, that BugzillaTaskData are confusing and should be eliminated (and make RepositoryTaskData final as Eugene suggested),
so other connector developers are not tempted to do what I did.

Thanks for your help, Lubos

On 1/2/07, Robert Elves <rob.elves@xxxxxxxxxxx> wrote:
Lubos,

RepositoryTaskData is required to support rich editing, offline
editing, and synchronization. This functionality requires you
implement ITaskDataHandler:

getTaskData() - populate a RepositoryTaskData object with all the data
associated with the equivalent of a CodeBeamer 'task'

postTaskData() - submit the changes made to the RepositoryTaskData via
your AbstractRepositoryTaskEditor (see below) to the CodeBeamer server

getChangedSinceLastSync() - used for synchronization (in/out) in tasklist

...once you are using the RepositoryTaskData via this interface, the
actual persistence of this object and synchronization should be
handled for you.

The AbstractRepositoryTask is a virtual proxy for the 'task' or
'issue' on the repository. So just enough information to identify and
present that task within the task list is held by implementors of this
class. This information held in the tasklist.xml.zip file.

TaskRepository can hold arbitrary key/value pairs like additional
configuration information pertaining to connections.
WebRepositorySettingsPage.updateProperties () makes use of this.

Does this clear things up?

-Rob






On 1/2/07, Lubos and Alena Pochman <pochmans@xxxxxxxxx> wrote:
>
> So how do you pass around and persist data which are particular to the given
> connector?
> Maybe I misunderstood (from the rich connector development documentation,
> aka source code),
> what is the RepositoryTaskData for.
>
> Lubos
>
>
> On 1/2/07, Robert Elves < rob.elves@xxxxxxxxxxx> wrote:
> > Just to confirm, RepositoryTaskData (in tasks.core ) is to be used by
> > connectors for persisting data offline but not extended.  Currently
> > RepositoryTaskData is extended to form NewBugzillaTaskData but this
> > will be eliminated soon (and RepositoryTaskData made final as Eugene
> > suggests).
> >
> > See BugzillaClient.getTaskData () as an example starting point for
> > construction/population of RepositoryTaskData.
> >
> > Hope that helps!
> >
> > -Rob
> >
> > --
> > Robert Elves
> > Mylar committer, http://eclipse.org/mylar
> >
> >
> >
> > On 12/29/06, Eugene Kuleshov <eu@xxxxxxxx > wrote:
> > > Lubos and Alena Pochman wrote:
> > > > that was my conclusion too, but I am not sure how to avoid it. I
> > > > followed the other connectors,
> > > > mainly Trac and Bugzilla as templates and they also have their own
> > > > ...RepositoryTask and their ...RepositoryTaskData.
> > > >
> > > > So I am not sure what I did differently, because Bugzilla or Trac do
> > > > not have that problem.
> > > > Could it be that they use their own serialization somehow and I failed
> > > > to implement it?
> > >   As far as I can tell bugzilla is only using subclass of
> > > RepositoryTaskData for a new task wizard/editor. So, the one which is
> > > persistent is actually using RepositoryTaskData as a storage. Perhaps
> > > that class should be made final to remove any confusion.
> > >
> > >   regards,
> > >   Eugene
> > >
> > >
> > > > On 12/29/06, *Eugene Kuleshov* < eu@xxxxxxxx <mailto: eu@xxxxxxxx>>
> wrote:
> > > >
> > > >
> > > >       I guess the idea is not to use custom task data class, because
> > > >     TasksUiPlugin don't know about your connector at the startup time.
> > > >
> > > >       regards,
> > > >       Eugene
> > > >
> > > >
> > > >     Lubos and Alena Pochman wrote:
> > > >     > I am writing connector for CodeBeamer and when I create
> CodeBeamer
> > > >     > repository task, exit Eclipse and restart it I am getting error
> > > >     (info):
> > > >     >
> > > >     > Could not restore offline repository tasks file, creating new
> one,
> > > >     > likely cause is format update.
> > > >     >
> > > >     > Cased by class not found
> java.lang.ClassNotFoundException :
> > > >     >
> org.eclipse.mylar.internal.codebeamer.core.CodeBeamerTaskData
> > > >     >
> > > >     > The class is part of the connector core plugin and the path
> > > >     > org.eclipse.mylar.internal.codebeamer.core is
> exported.
> > > >     > It fails in
> > > >     >
> > > >
> org.eclipse.mylar.internal.tasks.core.TaskDataManager.readOfflineData ()
> > > >     >
> > > >     > Anybody has an idea why on offline report loading the connector
> > > >     > classes are not found, but they are found later on (connector
> > > >     works).
> > > >     >
> > > >     > Stack trace:
> > > >
> > >
> > > _______________________________________________
> > > mylar-dev mailing list
> > > mylar-dev@xxxxxxxxxxx
> > > https://dev.eclipse.org/mailman/listinfo/mylar-dev
> > >
> > _______________________________________________
> > mylar-dev mailing list
> > mylar-dev@xxxxxxxxxxx
> > https://dev.eclipse.org/mailman/listinfo/mylar-dev
> >
>
>
> _______________________________________________
> mylar-dev mailing list
> mylar-dev@xxxxxxxxxxx
> https://dev.eclipse.org/mailman/listinfo/mylar-dev
>
>
>


--
Robert Elves
Mylar committer, http://eclipse.org/mylar
_______________________________________________
mylar-dev mailing list
mylar-dev@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/mylar-dev


Back to the top