[jira] [Created] (ISIS-477) Update JDO/DataNucleus objectstore to DN 3.2.6
Dan Haywood created ISIS-477: Summary: Update JDO/DataNucleus objectstore to DN 3.2.6 Key: ISIS-477 URL: https://issues.apache.org/jira/browse/ISIS-477 Project: Isis Issue Type: Task Components: Objectstore: JDO Affects Versions: objectstore-jdo-1.1.0 Reporter: Dan Haywood Assignee: Dan Haywood Priority: Minor Fix For: objectstore-jdo-1.2.0 NB:[ http://issues.datanucleus.org/browse/NUCCORE-1037?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=21144#action_21144 ] Andy Jefferson commented on NUCCORE-1037: - Note that in datanucleus-core 3.2.6 RDBMS will default to using ReferentialJDOStateManager and non-RDBMS datastores will default to using JDOStateManager as per NUCCORE-675, so if you have extended an existing DN StateManager you may need to update this -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (ISIS-469) Provide implementations of certain layout facets that read from a common Xxx.layout config file.
[ https://issues.apache.org/jira/browse/ISIS-469?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13718011#comment-13718011 ] ASF subversion and git services commented on ISIS-469: -- Commit f38fdb92941172eabb12e0943509f239e6d5925f in branch refs/heads/master from [~danhaywood] [ https://git-wip-us.apache.org/repos/asf?p=isis.git;h=f38fdb9 ] ISIS-468,ISIS-469: change to @MemberGroupLayout, downloading of layouts - @MemberGroupLayout#columnSpans is now a simple int[] - changes suffix from isis.properties to layout.properties - changed suffix from isis.json to layout.json - added guard in case @MemberGroupLayout refers to non-existent groups - fixed download code of zip of xxx.layout.json (and put into directories following package of each class) Provide implementations of certain layout facets that read from a common Xxx.layout config file. -- Key: ISIS-469 URL: https://issues.apache.org/jira/browse/ISIS-469 Project: Isis Issue Type: New Feature Components: Core Affects Versions: core-1.2.0 Reporter: Dan Haywood Assignee: Dan Haywood Priority: Minor Fix For: core-1.3.0 Specifically: MemberOrderFacet and MemberGroupLayoutFacet (see ISIS-468). The format of the file is (using ToDoItem.layout as an example): ### # MemberGroupLayout ### memberGroupLayout.columnSpans=_3_4_0_5 memberGroupLayout.left=General memberGroupLayout.middle=Detail memberGroupLayout.right= ### # MemberOrder ### # Properties memberOrder.description.sequence=1 memberOrder.category.sequence=2 memberOrder.complete.sequence=3 # Properties (Detail) memberOrder.dueBy.name=Detail memberOrder.cost.name=Detail memberOrder.notes.name=Detail memberOrder.attachment.name=Detail memberOrder.dueBy.sequence=1 memberOrder.cost.sequence=2 memberOrder.notes.sequence=3 memberOrder.attachment.sequence=4 # Properties (Misc) memberOrder.versionSequence.name=Misc memberOrder.versionSequence.sequence=99 #Collections memberOrder.dependencies.sequence=1 memberOrder.similarItems.sequence=2 #Actions (freestanding) memberOrder.delete.sequence=1 memberOrder.duplicate.sequence=2 #Actions (associated with properties) memberOrder.completed.name=complete memberOrder.notYetCompleted.name=complete memberOrder.completed.sequence=1 memberOrder.notYetCompleted.sequence=2 memberOrder.updateCost.name=cost #Actions (associated with collections) memberOrder.add.name=dependencies memberOrder.remove.name=dependencies -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (ISIS-468) Provide better layout management of pages in the Wicket viewer.
[ https://issues.apache.org/jira/browse/ISIS-468?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13718010#comment-13718010 ] ASF subversion and git services commented on ISIS-468: -- Commit f38fdb92941172eabb12e0943509f239e6d5925f in branch refs/heads/master from [~danhaywood] [ https://git-wip-us.apache.org/repos/asf?p=isis.git;h=f38fdb9 ] ISIS-468,ISIS-469: change to @MemberGroupLayout, downloading of layouts - @MemberGroupLayout#columnSpans is now a simple int[] - changes suffix from isis.properties to layout.properties - changed suffix from isis.json to layout.json - added guard in case @MemberGroupLayout refers to non-existent groups - fixed download code of zip of xxx.layout.json (and put into directories following package of each class) Provide better layout management of pages in the Wicket viewer. --- Key: ISIS-468 URL: https://issues.apache.org/jira/browse/ISIS-468 Project: Isis Issue Type: New Feature Components: Core, Viewer: Wicket Affects Versions: viewer-wicket-1.2.0, core-1.2.0 Reporter: Dan Haywood Assignee: Dan Haywood Priority: Minor Fix For: viewer-wicket-1.3.0, core-1.3.0 In the Wicket viewer, it can be difficult to distinguish different types of entities, moreover for some entities (with more properties than collections) there is a lot of real-estate wasted. This ticket is to provide the ability for laying the properties out over up to three columns, and optionally suppressing the collections column. Moreover it should be able to specify the relative width of those columns, and, ideally, the website should be responsive. ~~~ In the applib, introduce a new @MemberGroupLayout annotation, replacing the current @MemberGroups annotation, allowing this information to be specified, eg: @MemberGroupLayout( columnSpans=ColumnSpans._3_3_0_6, left={General, Dates} middle={Notes} } would place the properties in two columns taking up half the page, and collections (fourth column) to the far right. taking up the remaining 50%. eg: @MemberGroupLayout( columnSpans=ColumnSpans._4_4_4_0, left={General, Dates} middle={Notes}, right={Other} } would suppress the collections. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (ISIS-475) Dynamic layout using JSON
[ https://issues.apache.org/jira/browse/ISIS-475?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13718013#comment-13718013 ] ASF subversion and git services commented on ISIS-475: -- Commit a5ad5dcf4502e94cdb0e6931d04cd3c01ade19c3 in branch refs/heads/master from [~danhaywood] [ https://git-wip-us.apache.org/repos/asf?p=isis.git;h=a5ad5dc ] ISIS-475: dynamic layouts from JSON - new LayoutMetadataReader interface - new impls for properties and for json - new classes representing LayoutMetadata (serializable to JSON) - FacetedMethodsBuilder now uses the new LayoutMetadataReader interface - searches for json impl, then properties impl - utility classes/methods (ObjectAssociations, ObjectSpecifications, EntityActionUtil.memberOrderOf) moved from viewer-wicket to core-metamodel - example layout for ToDoItem converted to *.isis.json - DeveloperUtilitiesService allows ability to download layout - factored out MemberOrderFacetComparator from MemberOrderComparator, so can reuse. also: - ArrayUtils and ArrayUtil classes removed - combined Resources utility class with ResourceUtil utility class, unused methods removed - unused methods in PropertyUtil removed also: - little bit of CSS cosmetic change in table td left borders Dynamic layout using JSON - Key: ISIS-475 URL: https://issues.apache.org/jira/browse/ISIS-475 Project: Isis Issue Type: New Feature Components: Archetypes, Core, Examples, Viewer: Wicket Affects Versions: archetype-wrj-1.0.3, viewer-wicket-1.2.0, core-1.2.0 Reporter: Dan Haywood Assignee: Dan Haywood Fix For: archetype-wrj-1.0.4, viewer-wicket-1.3.0, core-1.3.0 Load layout metadata from a .isis.json file. Allow .isis.json file to be downloaded (using DeveloperUtilitiesService). Dynamically reload metadata; log any errors if does not parse etc. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Resolved] (ISIS-470) Provide the ability to rebuild the metamodel for individual classes, thus allowing dynamic layout capability...
[ https://issues.apache.org/jira/browse/ISIS-470?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Dan Haywood resolved ISIS-470. -- Resolution: Fixed Provide the ability to rebuild the metamodel for individual classes, thus allowing dynamic layout capability... --- Key: ISIS-470 URL: https://issues.apache.org/jira/browse/ISIS-470 Project: Isis Issue Type: New Feature Components: Core Affects Versions: core-1.2.0 Reporter: Dan Haywood Assignee: Dan Haywood Priority: Minor Fix For: core-1.3.0 ... when used in conjunction with ISIS-469. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Resolved] (ISIS-475) Dynamic layout using JSON
[ https://issues.apache.org/jira/browse/ISIS-475?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Dan Haywood resolved ISIS-475. -- Resolution: Fixed Dynamic layout using JSON - Key: ISIS-475 URL: https://issues.apache.org/jira/browse/ISIS-475 Project: Isis Issue Type: New Feature Components: Archetypes, Core, Examples, Viewer: Wicket Affects Versions: archetype-wrj-1.0.3, viewer-wicket-1.2.0, core-1.2.0 Reporter: Dan Haywood Assignee: Dan Haywood Fix For: archetype-wrj-1.0.4, viewer-wicket-1.3.0, core-1.3.0 Load layout metadata from a .isis.json file. Allow .isis.json file to be downloaded (using DeveloperUtilitiesService). Dynamically reload metadata; log any errors if does not parse etc. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Updated] (ISIS-469) Provide implementations of certain layout facets that read from a common Xxx.layout.properties or Xxx.layout.json file
[ https://issues.apache.org/jira/browse/ISIS-469?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Dan Haywood updated ISIS-469: - Summary: Provide implementations of certain layout facets that read from a common Xxx.layout.properties or Xxx.layout.json file (was: Provide implementations of certain layout facets that read from a common Xxx.layout config file.) Provide implementations of certain layout facets that read from a common Xxx.layout.properties or Xxx.layout.json file -- Key: ISIS-469 URL: https://issues.apache.org/jira/browse/ISIS-469 Project: Isis Issue Type: New Feature Components: Core Affects Versions: core-1.2.0 Reporter: Dan Haywood Assignee: Dan Haywood Priority: Minor Fix For: core-1.3.0 Specifically: MemberOrderFacet and MemberGroupLayoutFacet (see ISIS-468). The format of the file is (using ToDoItem.layout as an example): ### # MemberGroupLayout ### memberGroupLayout.columnSpans=_3_4_0_5 memberGroupLayout.left=General memberGroupLayout.middle=Detail memberGroupLayout.right= ### # MemberOrder ### # Properties memberOrder.description.sequence=1 memberOrder.category.sequence=2 memberOrder.complete.sequence=3 # Properties (Detail) memberOrder.dueBy.name=Detail memberOrder.cost.name=Detail memberOrder.notes.name=Detail memberOrder.attachment.name=Detail memberOrder.dueBy.sequence=1 memberOrder.cost.sequence=2 memberOrder.notes.sequence=3 memberOrder.attachment.sequence=4 # Properties (Misc) memberOrder.versionSequence.name=Misc memberOrder.versionSequence.sequence=99 #Collections memberOrder.dependencies.sequence=1 memberOrder.similarItems.sequence=2 #Actions (freestanding) memberOrder.delete.sequence=1 memberOrder.duplicate.sequence=2 #Actions (associated with properties) memberOrder.completed.name=complete memberOrder.notYetCompleted.name=complete memberOrder.completed.sequence=1 memberOrder.notYetCompleted.sequence=2 memberOrder.updateCost.name=cost #Actions (associated with collections) memberOrder.add.name=dependencies memberOrder.remove.name=dependencies -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Updated] (ISIS-469) Provide implementations of certain layout facets that read from a common Xxx.layout.properties or Xxx.layout.json file
[ https://issues.apache.org/jira/browse/ISIS-469?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Dan Haywood updated ISIS-469: - Description: Specifically, the two layout facets to capture are MemberOrderFacet and MemberGroupLayoutFacet (see ISIS-468). The idea of this ticket is that information is pulled in from a separate file, sitting alongside the domain class. This makes it easier to see this layout information in one place. And, in conjunction with ISIS-470, this would allow dynamic updates to the layout, without a recompile/redeploy. ~~~ Two file formats are defined: a Xxx.layout.json file and an Xxx.layout.properties file. The former is preferred (ie the .properties file might end up being deprecated at some point in the future). The format of the json file (eg for ToDoItem example class) is: { columns: [ { span: 3, memberGroups: { General: { members: { description: {}, category: {}, complete: { actions: { completed: {}, notYetCompleted: {} } } } }, Misc: { members: { versionSequence: {} } } } }, { span: 4, memberGroups: { Detail: { members: { dueBy: {}, cost: { actions: { updateCost:{} } }, notes: {}, attachment: {} } } } }, { span: 0 }, { span: 5, collections: { dependencies: { actions: { add:{}, delete: {} } }, similarItems: {} } } ], actions: { delete: {}, duplicate: {} } } If specified using a property file (Xxx.layout.properties) then the format of the file is: ### # MemberGroupLayout ### memberGroupLayout.columnSpans=3,4,0,5 memberGroupLayout.left=General memberGroupLayout.middle=Detail memberGroupLayout.right= ### # MemberOrder ### # Properties memberOrder.description.sequence=1 memberOrder.category.sequence=2 memberOrder.complete.sequence=3 # Properties (Detail) memberOrder.dueBy.name=Detail memberOrder.cost.name=Detail memberOrder.notes.name=Detail memberOrder.attachment.name=Detail memberOrder.dueBy.sequence=1 memberOrder.cost.sequence=2 memberOrder.notes.sequence=3 memberOrder.attachment.sequence=4 # Properties (Misc) memberOrder.versionSequence.name=Misc memberOrder.versionSequence.sequence=99 #Collections memberOrder.dependencies.sequence=1 memberOrder.similarItems.sequence=2 #Actions (freestanding) memberOrder.delete.sequence=1 memberOrder.duplicate.sequence=2 #Actions (associated with properties) memberOrder.completed.name=complete memberOrder.notYetCompleted.name=complete memberOrder.completed.sequence=1 memberOrder.notYetCompleted.sequence=2 memberOrder.updateCost.name=cost #Actions (associated with collections) memberOrder.add.name=dependencies memberOrder.remove.name=dependencies was: Specifically: MemberOrderFacet and MemberGroupLayoutFacet (see ISIS-468). The format of the file is (using ToDoItem.layout as an example): ### # MemberGroupLayout ### memberGroupLayout.columnSpans=_3_4_0_5 memberGroupLayout.left=General memberGroupLayout.middle=Detail memberGroupLayout.right= ### # MemberOrder ### # Properties memberOrder.description.sequence=1 memberOrder.category.sequence=2 memberOrder.complete.sequence=3 # Properties (Detail) memberOrder.dueBy.name=Detail memberOrder.cost.name=Detail memberOrder.notes.name=Detail memberOrder.attachment.name=Detail memberOrder.dueBy.sequence=1 memberOrder.cost.sequence=2 memberOrder.notes.sequence=3 memberOrder.attachment.sequence=4 # Properties (Misc) memberOrder.versionSequence.name=Misc memberOrder.versionSequence.sequence=99 #Collections memberOrder.dependencies.sequence=1 memberOrder.similarItems.sequence=2 #Actions (freestanding) memberOrder.delete.sequence=1 memberOrder.duplicate.sequence=2 #Actions (associated with properties) memberOrder.completed.name=complete memberOrder.notYetCompleted.name=complete memberOrder.completed.sequence=1 memberOrder.notYetCompleted.sequence=2
[jira] [Updated] (ISIS-469) Provide implementations of certain layout facets that read from a Xxx.layout.properties file
[ https://issues.apache.org/jira/browse/ISIS-469?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Dan Haywood updated ISIS-469: - Summary: Provide implementations of certain layout facets that read from a Xxx.layout.properties file (was: Provide implementations of certain layout facets that read from a common Xxx.layout.properties or Xxx.layout.json file) Provide implementations of certain layout facets that read from a Xxx.layout.properties file -- Key: ISIS-469 URL: https://issues.apache.org/jira/browse/ISIS-469 Project: Isis Issue Type: New Feature Components: Core Affects Versions: core-1.2.0 Reporter: Dan Haywood Assignee: Dan Haywood Priority: Minor Fix For: core-1.3.0 Specifically, the two layout facets to capture are MemberOrderFacet and MemberGroupLayoutFacet (see ISIS-468). The idea of this ticket is that information is pulled in from a separate file, sitting alongside the domain class. This makes it easier to see this layout information in one place. And, in conjunction with ISIS-470, this would allow dynamic updates to the layout, without a recompile/redeploy. ~~~ Two file formats are defined: a Xxx.layout.json file and an Xxx.layout.properties file. The former is preferred (ie the .properties file might end up being deprecated at some point in the future). There also should be the ability to The format of the json file (eg for ToDoItem example class) is: { columns: [ { span: 3, memberGroups: { General: { members: { description: {}, category: {}, complete: { actions: { completed: {}, notYetCompleted: {} } } } }, Misc: { members: { versionSequence: {} } } } }, { span: 4, memberGroups: { Detail: { members: { dueBy: {}, cost: { actions: { updateCost:{} } }, notes: {}, attachment: {} } } } }, { span: 0 }, { span: 5, collections: { dependencies: { actions: { add:{}, delete: {} } }, similarItems: {} } } ], actions: { delete: {}, duplicate: {} } } If specified using a property file (Xxx.layout.properties) then the format of the file is: ### # MemberGroupLayout ### memberGroupLayout.columnSpans=3,4,0,5 memberGroupLayout.left=General memberGroupLayout.middle=Detail memberGroupLayout.right= ### # MemberOrder ### # Properties memberOrder.description.sequence=1 memberOrder.category.sequence=2 memberOrder.complete.sequence=3 # Properties (Detail) memberOrder.dueBy.name=Detail memberOrder.cost.name=Detail memberOrder.notes.name=Detail memberOrder.attachment.name=Detail memberOrder.dueBy.sequence=1 memberOrder.cost.sequence=2 memberOrder.notes.sequence=3 memberOrder.attachment.sequence=4 # Properties (Misc) memberOrder.versionSequence.name=Misc memberOrder.versionSequence.sequence=99 #Collections memberOrder.dependencies.sequence=1 memberOrder.similarItems.sequence=2 #Actions (freestanding) memberOrder.delete.sequence=1 memberOrder.duplicate.sequence=2 #Actions (associated with properties) memberOrder.completed.name=complete memberOrder.notYetCompleted.name=complete memberOrder.completed.sequence=1 memberOrder.notYetCompleted.sequence=2 memberOrder.updateCost.name=cost #Actions (associated with collections) memberOrder.add.name=dependencies memberOrder.remove.name=dependencies -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Updated] (ISIS-469) Provide implementations of certain layout facets that read from a common Xxx.layout.properties or Xxx.layout.json file
[ https://issues.apache.org/jira/browse/ISIS-469?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Dan Haywood updated ISIS-469: - Description: Specifically, the two layout facets to capture are MemberOrderFacet and MemberGroupLayoutFacet (see ISIS-468). The idea of this ticket is that information is pulled in from a separate file, sitting alongside the domain class. This makes it easier to see this layout information in one place. And, in conjunction with ISIS-470, this would allow dynamic updates to the layout, without a recompile/redeploy. ~~~ Two file formats are defined: a Xxx.layout.json file and an Xxx.layout.properties file. The former is preferred (ie the .properties file might end up being deprecated at some point in the future). There also should be the ability to The format of the json file (eg for ToDoItem example class) is: { columns: [ { span: 3, memberGroups: { General: { members: { description: {}, category: {}, complete: { actions: { completed: {}, notYetCompleted: {} } } } }, Misc: { members: { versionSequence: {} } } } }, { span: 4, memberGroups: { Detail: { members: { dueBy: {}, cost: { actions: { updateCost:{} } }, notes: {}, attachment: {} } } } }, { span: 0 }, { span: 5, collections: { dependencies: { actions: { add:{}, delete: {} } }, similarItems: {} } } ], actions: { delete: {}, duplicate: {} } } If specified using a property file (Xxx.layout.properties) then the format of the file is: ### # MemberGroupLayout ### memberGroupLayout.columnSpans=3,4,0,5 memberGroupLayout.left=General memberGroupLayout.middle=Detail memberGroupLayout.right= ### # MemberOrder ### # Properties memberOrder.description.sequence=1 memberOrder.category.sequence=2 memberOrder.complete.sequence=3 # Properties (Detail) memberOrder.dueBy.name=Detail memberOrder.cost.name=Detail memberOrder.notes.name=Detail memberOrder.attachment.name=Detail memberOrder.dueBy.sequence=1 memberOrder.cost.sequence=2 memberOrder.notes.sequence=3 memberOrder.attachment.sequence=4 # Properties (Misc) memberOrder.versionSequence.name=Misc memberOrder.versionSequence.sequence=99 #Collections memberOrder.dependencies.sequence=1 memberOrder.similarItems.sequence=2 #Actions (freestanding) memberOrder.delete.sequence=1 memberOrder.duplicate.sequence=2 #Actions (associated with properties) memberOrder.completed.name=complete memberOrder.notYetCompleted.name=complete memberOrder.completed.sequence=1 memberOrder.notYetCompleted.sequence=2 memberOrder.updateCost.name=cost #Actions (associated with collections) memberOrder.add.name=dependencies memberOrder.remove.name=dependencies was: Specifically, the two layout facets to capture are MemberOrderFacet and MemberGroupLayoutFacet (see ISIS-468). The idea of this ticket is that information is pulled in from a separate file, sitting alongside the domain class. This makes it easier to see this layout information in one place. And, in conjunction with ISIS-470, this would allow dynamic updates to the layout, without a recompile/redeploy. ~~~ Two file formats are defined: a Xxx.layout.json file and an Xxx.layout.properties file. The former is preferred (ie the .properties file might end up being deprecated at some point in the future). The format of the json file (eg for ToDoItem example class) is: { columns: [ { span: 3, memberGroups: { General: { members: { description: {}, category: {}, complete: { actions: { completed: {}, notYetCompleted: {} } } } }, Misc: { members: { versionSequence: {} } } } }, { span: 4, memberGroups: { Detail: {
[jira] [Updated] (ISIS-475) Dynamic layout using JSON, using an Xxx.layout.json file
[ https://issues.apache.org/jira/browse/ISIS-475?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Dan Haywood updated ISIS-475: - Summary: Dynamic layout using JSON, using an Xxx.layout.json file (was: Dynamic layout using JSON) Dynamic layout using JSON, using an Xxx.layout.json file Key: ISIS-475 URL: https://issues.apache.org/jira/browse/ISIS-475 Project: Isis Issue Type: New Feature Components: Archetypes, Core, Examples, Viewer: Wicket Affects Versions: archetype-wrj-1.0.3, viewer-wicket-1.2.0, core-1.2.0 Reporter: Dan Haywood Assignee: Dan Haywood Fix For: archetype-wrj-1.0.4, viewer-wicket-1.3.0, core-1.3.0 Load layout metadata from a .isis.json file. Allow .isis.json file to be downloaded (using DeveloperUtilitiesService). Dynamically reload metadata; log any errors if does not parse etc. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Resolved] (ISIS-469) Provide implementations of certain layout facets that read from a Xxx.layout.properties file
[ https://issues.apache.org/jira/browse/ISIS-469?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Dan Haywood resolved ISIS-469. -- Resolution: Fixed Provide implementations of certain layout facets that read from a Xxx.layout.properties file -- Key: ISIS-469 URL: https://issues.apache.org/jira/browse/ISIS-469 Project: Isis Issue Type: New Feature Components: Core Affects Versions: core-1.2.0 Reporter: Dan Haywood Assignee: Dan Haywood Priority: Minor Fix For: core-1.3.0 Specifically, the two layout facets to capture are MemberOrderFacet and MemberGroupLayoutFacet (see ISIS-468). The idea of this ticket is that information is pulled in from a separate file, sitting alongside the domain class. This makes it easier to see this layout information in one place. And, in conjunction with ISIS-470, this would allow dynamic updates to the layout, without a recompile/redeploy. This ticket defines the metadata informatino in an Xxx.layout.properties file. (Note that ISIS-475 takes this idea further and specifies a JSON file. This latter idea is probably to be preferred in most cases). The format of the property file (Xxx.layout.properties) is: ### # MemberGroupLayout ### memberGroupLayout.columnSpans=3,4,0,5 memberGroupLayout.left=General memberGroupLayout.middle=Detail memberGroupLayout.right= ### # MemberOrder ### # Properties memberOrder.description.sequence=1 memberOrder.category.sequence=2 memberOrder.complete.sequence=3 # Properties (Detail) memberOrder.dueBy.name=Detail memberOrder.cost.name=Detail memberOrder.notes.name=Detail memberOrder.attachment.name=Detail memberOrder.dueBy.sequence=1 memberOrder.cost.sequence=2 memberOrder.notes.sequence=3 memberOrder.attachment.sequence=4 # Properties (Misc) memberOrder.versionSequence.name=Misc memberOrder.versionSequence.sequence=99 #Collections memberOrder.dependencies.sequence=1 memberOrder.similarItems.sequence=2 #Actions (freestanding) memberOrder.delete.sequence=1 memberOrder.duplicate.sequence=2 #Actions (associated with properties) memberOrder.completed.name=complete memberOrder.notYetCompleted.name=complete memberOrder.completed.sequence=1 memberOrder.notYetCompleted.sequence=2 memberOrder.updateCost.name=cost #Actions (associated with collections) memberOrder.add.name=dependencies memberOrder.remove.name=dependencies -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Updated] (ISIS-475) Dynamic layout using JSON, using an Xxx.layout.json file
[ https://issues.apache.org/jira/browse/ISIS-475?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Dan Haywood updated ISIS-475: - Description: Load layout metadata from a .layout.json file (this is a successor to ISIS-469) Also allow this .layout.json file to be downloaded (using DeveloperUtilitiesService), either for an individual class, or a zip of all the classes in the metamodel Dynamically reload metadata; log any errors if does not parse etc. ~~~ The format of the Xxx.layout.json file (eg for ToDoItem example class) is: { columns: [ { span: 3, memberGroups: { General: { members: { description: {}, category: {}, complete: { actions: { completed: {}, notYetCompleted: {} } } } }, Misc: { members: { versionSequence: {} } } } }, { span: 4, memberGroups: { Detail: { members: { dueBy: {}, cost: { actions: { updateCost:{} } }, notes: {}, attachment: {} } } } }, { span: 0 }, { span: 5, collections: { dependencies: { actions: { add:{}, delete: {} } }, similarItems: {} } } ], actions: { delete: {}, duplicate: {} } } was: Load layout metadata from a .isis.json file. Allow .isis.json file to be downloaded (using DeveloperUtilitiesService). Dynamically reload metadata; log any errors if does not parse etc. Dynamic layout using JSON, using an Xxx.layout.json file Key: ISIS-475 URL: https://issues.apache.org/jira/browse/ISIS-475 Project: Isis Issue Type: New Feature Components: Archetypes, Core, Examples, Viewer: Wicket Affects Versions: archetype-wrj-1.0.3, viewer-wicket-1.2.0, core-1.2.0 Reporter: Dan Haywood Assignee: Dan Haywood Fix For: archetype-wrj-1.0.4, viewer-wicket-1.3.0, core-1.3.0 Load layout metadata from a .layout.json file (this is a successor to ISIS-469) Also allow this .layout.json file to be downloaded (using DeveloperUtilitiesService), either for an individual class, or a zip of all the classes in the metamodel Dynamically reload metadata; log any errors if does not parse etc. ~~~ The format of the Xxx.layout.json file (eg for ToDoItem example class) is: { columns: [ { span: 3, memberGroups: { General: { members: { description: {}, category: {}, complete: { actions: { completed: {}, notYetCompleted: {} } } } }, Misc: { members: { versionSequence: {} } } } }, { span: 4, memberGroups: { Detail: { members: { dueBy: {}, cost: { actions: { updateCost:{} } }, notes: {}, attachment: {} } } } }, { span: 0 }, { span: 5, collections: { dependencies: { actions: { add:{}, delete: {} } }, similarItems: {} } } ], actions: { delete: {}, duplicate: {} } } -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Updated] (ISIS-469) Provide implementations of certain layout facets that read from a Xxx.layout.properties file
[ https://issues.apache.org/jira/browse/ISIS-469?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Dan Haywood updated ISIS-469: - Description: Specifically, the two layout facets to capture are MemberOrderFacet and MemberGroupLayoutFacet (see ISIS-468). The idea of this ticket is that information is pulled in from a separate file, sitting alongside the domain class. This makes it easier to see this layout information in one place. And, in conjunction with ISIS-470, this would allow dynamic updates to the layout, without a recompile/redeploy. This ticket defines the metadata informatino in an Xxx.layout.properties file. (Note that ISIS-475 takes this idea further and specifies a JSON file. This latter idea is probably to be preferred in most cases). The format of the property file (Xxx.layout.properties) is: ### # MemberGroupLayout ### memberGroupLayout.columnSpans=3,4,0,5 memberGroupLayout.left=General memberGroupLayout.middle=Detail memberGroupLayout.right= ### # MemberOrder ### # Properties memberOrder.description.sequence=1 memberOrder.category.sequence=2 memberOrder.complete.sequence=3 # Properties (Detail) memberOrder.dueBy.name=Detail memberOrder.cost.name=Detail memberOrder.notes.name=Detail memberOrder.attachment.name=Detail memberOrder.dueBy.sequence=1 memberOrder.cost.sequence=2 memberOrder.notes.sequence=3 memberOrder.attachment.sequence=4 # Properties (Misc) memberOrder.versionSequence.name=Misc memberOrder.versionSequence.sequence=99 #Collections memberOrder.dependencies.sequence=1 memberOrder.similarItems.sequence=2 #Actions (freestanding) memberOrder.delete.sequence=1 memberOrder.duplicate.sequence=2 #Actions (associated with properties) memberOrder.completed.name=complete memberOrder.notYetCompleted.name=complete memberOrder.completed.sequence=1 memberOrder.notYetCompleted.sequence=2 memberOrder.updateCost.name=cost #Actions (associated with collections) memberOrder.add.name=dependencies memberOrder.remove.name=dependencies was: Specifically, the two layout facets to capture are MemberOrderFacet and MemberGroupLayoutFacet (see ISIS-468). The idea of this ticket is that information is pulled in from a separate file, sitting alongside the domain class. This makes it easier to see this layout information in one place. And, in conjunction with ISIS-470, this would allow dynamic updates to the layout, without a recompile/redeploy. ~~~ Two file formats are defined: a Xxx.layout.json file and an Xxx.layout.properties file. The former is preferred (ie the .properties file might end up being deprecated at some point in the future). There also should be the ability to The format of the json file (eg for ToDoItem example class) is: { columns: [ { span: 3, memberGroups: { General: { members: { description: {}, category: {}, complete: { actions: { completed: {}, notYetCompleted: {} } } } }, Misc: { members: { versionSequence: {} } } } }, { span: 4, memberGroups: { Detail: { members: { dueBy: {}, cost: { actions: { updateCost:{} } }, notes: {}, attachment: {} } } } }, { span: 0 }, { span: 5, collections: { dependencies: { actions: { add:{}, delete: {} } }, similarItems: {} } } ], actions: { delete: {}, duplicate: {} } } If specified using a property file (Xxx.layout.properties) then the format of the file is: ### # MemberGroupLayout ### memberGroupLayout.columnSpans=3,4,0,5 memberGroupLayout.left=General memberGroupLayout.middle=Detail memberGroupLayout.right= ### # MemberOrder ### # Properties memberOrder.description.sequence=1 memberOrder.category.sequence=2 memberOrder.complete.sequence=3 # Properties (Detail) memberOrder.dueBy.name=Detail memberOrder.cost.name=Detail memberOrder.notes.name=Detail memberOrder.attachment.name=Detail