[ 
https://issues.apache.org/jira/browse/ISIS-1695?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Dan Haywood updated ISIS-1695:
------------------------------
    Description: 
I would like to reintroduce value types as a first-class citizen, but without 
requiring the developer to have to write lots of code to teach DataNucleus, 
Wicket and the RO viewer about these.

I don't have a general solution in mind on how to do this.

However, for very simple value types that are just a type-safe wrapper around a 
single field (eg Password, or Money, or Temperature, or Email say), then 
perhaps there might be a way to support this, eg :

public class Temperature implements 
org.apache.isis.valuetypes.Value<BigDecimal> { ... }

or

@Value(underlying=BigDecimal.class)
public class Temperature { ... }


The idea here is that the framework would treat any instance of this custom 
value type as if it were the underlying type (BigDecimal in the case above).  
It would also be possible to apply validations to the value type that would 
apply everywhere it is used as a property/parameter.


  was:
I would like to reintroduce value types as a first-class citizen, but without 
requiring the developer to have to write lots of code to teach DataNucleus, 
Wicket and the RO viewer about these.

I don't have a general solution in mind on how to do this.

However, for very simple value types that are just a type-safe wrapper around a 
single field (eg Password, or Money, or Temperature, or Email say), then 
perhaps there might be a way to support this, eg :

public class Temperature implements 
org.apache.isis.valuetypes.Value<BigDecimal> { ... }

or

@Value(underlying=BigDecimal.class)
public class Temperature { ... }





> Support value types (simple ones at least) as a first-class citizen
> -------------------------------------------------------------------
>
>                 Key: ISIS-1695
>                 URL: https://issues.apache.org/jira/browse/ISIS-1695
>             Project: Isis
>          Issue Type: New Feature
>            Reporter: Dan Haywood
>            Priority: Minor
>             Fix For: 2.4.0
>
>
> I would like to reintroduce value types as a first-class citizen, but without 
> requiring the developer to have to write lots of code to teach DataNucleus, 
> Wicket and the RO viewer about these.
> I don't have a general solution in mind on how to do this.
> However, for very simple value types that are just a type-safe wrapper around 
> a single field (eg Password, or Money, or Temperature, or Email say), then 
> perhaps there might be a way to support this, eg :
> public class Temperature implements 
> org.apache.isis.valuetypes.Value<BigDecimal> { ... }
> or
> @Value(underlying=BigDecimal.class)
> public class Temperature { ... }
> The idea here is that the framework would treat any instance of this custom 
> value type as if it were the underlying type (BigDecimal in the case above).  
> It would also be possible to apply validations to the value type that would 
> apply everywhere it is used as a property/parameter.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Reply via email to