Ticket #838 (closed defect: fixed)

Opened 8 years ago

Last modified 7 years ago

Better persistence behavior for unsupported object types

Reported by: curtis Owned by: curtis
Priority: major Milestone: imagej2-b2-bugfixes
Component: Plugin Framework Version:
Severity: serious Keywords:
Cc: Blocked By:
Blocking: #1051

Description

The persistence mechanism serializes object values using toString() and restores them by looking for a constructor that takes a single String parameter. Some types of objects may not comply with this assumption: e.g., imagej.data.Dataset. In this case, we should avoid persisting the object values at all.

A workaround is to label the parameter with "persist=false" but requiring that all the time will be highly unintuitive for users.

See ticket #810 for an example of this situation.

Change History

comment:1 Changed 8 years ago by curtis

  • Milestone changed from imagej-2.0-beta1 to imagej-2.0-beta2

comment:2 Changed 8 years ago by curtis

(In [4322]) Fix up parameter attributes.

Set visibility to private when possible. For ImageDisplay parameters,
set to required=true and persist=false, to avoid runtime exceptions.
For related tickets, see #838 and #856.

comment:3 Changed 8 years ago by curtis

  • Component changed from other to ij-ext
  • Blocking 11 added

comment:4 Changed 8 years ago by curtis

  • Blocking 1051 added; 11 removed

comment:5 Changed 7 years ago by curtis

  • Milestone changed from imagej-2.0.0-beta3 to imagej-2.0.0-beta2

Fixed in b59ded0bcb1480d39416d9bde11bcfd82e07a096.

comment:6 Changed 7 years ago by curtis

  • Status changed from new to closed
  • Resolution set to fixed
Note: See TracTickets for help on using tickets.