RE: StringResourceModel labels within values

2008-03-13 Thread i ii

thank you for help! which way is better? my own component or srm model that 
gets from localizer?

 Date: Wed, 12 Mar 2008 13:57:10 -0700
 From: [EMAIL PROTECTED]
 To: users@wicket.apache.org
 Subject: Re: StringResourceModel labels within values
 
 but will that work recusively? :)
 
 -igor
 
 
 On Wed, Mar 12, 2008 at 1:44 PM, Johan Compagner [EMAIL PROTECTED] wrote:
  I think if you just give SRM a model that again gets the values from
   the localizer then it should work fine.
 
 
 
 
   On 3/12/08, i ii [EMAIL PROTECTED] wrote:
   
is there way to do something like:
   
.properties file:
   
some.label=Some Label
some.text=Some Text
some.key=This text will have ${some.label} and ${some.text}
   
 
   -
   To unsubscribe, e-mail: [EMAIL PROTECTED]
   For additional commands, e-mail: [EMAIL PROTECTED]
 
 
 
 -
 To unsubscribe, e-mail: [EMAIL PROTECTED]
 For additional commands, e-mail: [EMAIL PROTECTED]
 


Re: StringResourceModel labels within values

2008-03-13 Thread Johan Compagner
if you use again StringResourceModels in the model that you give to your
outer StringResourceModel :)

johan



On Wed, Mar 12, 2008 at 9:57 PM, Igor Vaynberg [EMAIL PROTECTED]
wrote:

 but will that work recusively? :)

 -igor


 On Wed, Mar 12, 2008 at 1:44 PM, Johan Compagner [EMAIL PROTECTED]
 wrote:
  I think if you just give SRM a model that again gets the values from
   the localizer then it should work fine.
 
 
 
 
   On 3/12/08, i ii [EMAIL PROTECTED] wrote:
   
is there way to do something like:
   
.properties file:
   
some.label=Some Label
some.text=Some Text
some.key=This text will have ${some.label} and ${some.text}
   
 
-
   To unsubscribe, e-mail: [EMAIL PROTECTED]
   For additional commands, e-mail: [EMAIL PROTECTED]
 
 

 -
 To unsubscribe, e-mail: [EMAIL PROTECTED]
 For additional commands, e-mail: [EMAIL PROTECTED]




Re: StringResourceModel labels within values

2008-03-13 Thread Sebastiaan van Erk
At one point I wanted to do interpolation in constant strings, so I just 
used the property interpolator directly:


PropertyVariableInterpolator.interpolate(value, modelObject);

You can use that to build a model that recursively interpolates until 
there are no more ${...} occurrences in the value.


Regards,
Sebastiaan

i ii wrote:

thank you for help! which way is better? my own component or srm model that 
gets from localizer?


Date: Wed, 12 Mar 2008 13:57:10 -0700
From: [EMAIL PROTECTED]
To: users@wicket.apache.org
Subject: Re: StringResourceModel labels within values

but will that work recusively? :)

-igor


On Wed, Mar 12, 2008 at 1:44 PM, Johan Compagner [EMAIL PROTECTED] wrote:

I think if you just give SRM a model that again gets the values from
 the localizer then it should work fine.




 On 3/12/08, i ii [EMAIL PROTECTED] wrote:
 
  is there way to do something like:
 
  .properties file:
 
  some.label=Some Label
  some.text=Some Text
  some.key=This text will have ${some.label} and ${some.text}
 

 -
 To unsubscribe, e-mail: [EMAIL PROTECTED]
 For additional commands, e-mail: [EMAIL PROTECTED]



-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]





smime.p7s
Description: S/MIME Cryptographic Signature


RE: StringResourceModel labels within values

2008-03-13 Thread i ii

how will this work with example i gave? i'm not sure how to get some.label and 
some.text back into some.key? would i use something like 

StringResourceModel srm = new StringResourceModel(some.key, this, null);
PropertyVariableInterpolator.interpolate(some.label, srm);

not sure that works :(

 Date: Thu, 13 Mar 2008 12:17:09 +0100
 From: [EMAIL PROTECTED]
 To: users@wicket.apache.org
 Subject: Re: StringResourceModel labels within values
 
 At one point I wanted to do interpolation in constant strings, so I just 
 used the property interpolator directly:
 
 PropertyVariableInterpolator.interpolate(value, modelObject);
 
 You can use that to build a model that recursively interpolates until 
 there are no more ${...} occurrences in the value.
 
 Regards,
 Sebastiaan
 
 i ii wrote:
  thank you for help! which way is better? my own component or srm model that 
  gets from localizer?
  
  Date: Wed, 12 Mar 2008 13:57:10 -0700
  From: [EMAIL PROTECTED]
  To: users@wicket.apache.org
  Subject: Re: StringResourceModel labels within values
 
  but will that work recusively? :)
 
  -igor
 
 
  On Wed, Mar 12, 2008 at 1:44 PM, Johan Compagner [EMAIL PROTECTED] wrote:
  I think if you just give SRM a model that again gets the values from
   the localizer then it should work fine.
 
 
 
 
   On 3/12/08, i ii [EMAIL PROTECTED] wrote:
   
is there way to do something like:
   
.properties file:
   
some.label=Some Label
some.text=Some Text
some.key=This text will have ${some.label} and ${some.text}
   
 
   -
   To unsubscribe, e-mail: [EMAIL PROTECTED]
   For additional commands, e-mail: [EMAIL PROTECTED]
 
 
  -
  To unsubscribe, e-mail: [EMAIL PROTECTED]
  For additional commands, e-mail: [EMAIL PROTECTED]
 
  


Re: StringResourceModel labels within values

2008-03-13 Thread Sebastiaan van Erk

How's this:

public class RecursiveStringResourceModel extends AbstractReadOnlyModel {

private final String resourceKey;

private final Component component;

	public RecursiveStringResourceModel(final String resourceKey, final 
Component component) {

this.resourceKey = resourceKey;
this.component = component;
}

@Override
public Object getObject() {
		return new StringResourceModel(resourceKey, component, new 
CompoundPropertyModel(new AbstractMap() {

@Override
public Object get(Object key) {
return new RecursiveStringResourceModel((String) key, 
component).getObject();

}

@Override
public Setjava.util.Map.EntryString, String 
entrySet() {
return null;
}
})).getObject();
}

}

I'm sure it can be done more efficiently (i.e., less model creation), 
but hey, it works! ;-)


Regards,
Sebastiaan

i ii wrote:
how will this work with example i gave? i'm not sure how to get some.label and some.text back into some.key? would i use something like 


StringResourceModel srm = new StringResourceModel(some.key, this, null);
PropertyVariableInterpolator.interpolate(some.label, srm);

not sure that works :(


Date: Thu, 13 Mar 2008 12:17:09 +0100
From: [EMAIL PROTECTED]
To: users@wicket.apache.org
Subject: Re: StringResourceModel labels within values

At one point I wanted to do interpolation in constant strings, so I just 
used the property interpolator directly:


PropertyVariableInterpolator.interpolate(value, modelObject);

You can use that to build a model that recursively interpolates until 
there are no more ${...} occurrences in the value.


Regards,
Sebastiaan

i ii wrote:

thank you for help! which way is better? my own component or srm model that 
gets from localizer?


Date: Wed, 12 Mar 2008 13:57:10 -0700
From: [EMAIL PROTECTED]
To: users@wicket.apache.org
Subject: Re: StringResourceModel labels within values

but will that work recusively? :)

-igor


On Wed, Mar 12, 2008 at 1:44 PM, Johan Compagner [EMAIL PROTECTED] wrote:

I think if you just give SRM a model that again gets the values from
 the localizer then it should work fine.




 On 3/12/08, i ii [EMAIL PROTECTED] wrote:
 
  is there way to do something like:
 
  .properties file:
 
  some.label=Some Label
  some.text=Some Text
  some.key=This text will have ${some.label} and ${some.text}
 

 -
 To unsubscribe, e-mail: [EMAIL PROTECTED]
 For additional commands, e-mail: [EMAIL PROTECTED]



-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]





smime.p7s
Description: S/MIME Cryptographic Signature


Re: StringResourceModel labels within values

2008-03-13 Thread Sebastiaan van Erk

Sebastiaan van Erk wrote:

How's this:

public class RecursiveStringResourceModel extends AbstractReadOnlyModel {

private final String resourceKey;

private final Component component;

public RecursiveStringResourceModel(final String resourceKey, final 
Component component) {

this.resourceKey = resourceKey;
this.component = component;
}

@Override

public Object getObject() {
return new StringResourceModel(resourceKey, component, new 
CompoundPropertyModel(new AbstractMap() {

@Override
public Object get(Object key) {
return new RecursiveStringResourceModel((String) key, 
component).getObject();

}

@Override
public Setjava.util.Map.EntryString, String entrySet() {
return null;
}
})).getObject();
}

}

I'm sure it can be done more efficiently (i.e., less model creation), 
but hey, it works! ;-)


For starters, it's much better to subclass LoadableDetachableModel and 
move the getOjbect() to load(). :-)


Regards,
Sebastiaan


smime.p7s
Description: S/MIME Cryptographic Signature


StringResourceModel labels within values

2008-03-12 Thread i ii

is there way to do something like:

.properties file:

some.label=Some Label
some.text=Some Text
some.key=This text will have ${some.label} and ${some.text}


Re: StringResourceModel labels within values

2008-03-12 Thread Igor Vaynberg
you can roll your own model...

-igor


On Wed, Mar 12, 2008 at 8:20 AM, i ii [EMAIL PROTECTED] wrote:

  is there way to do something like:

  .properties file:

  some.label=Some Label
  some.text=Some Text
  some.key=This text will have ${some.label} and ${some.text}


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: StringResourceModel labels within values

2008-03-12 Thread Johan Compagner
I think if you just give SRM a model that again gets the values from
the localizer then it should work fine.


On 3/12/08, i ii [EMAIL PROTECTED] wrote:

 is there way to do something like:

 .properties file:

 some.label=Some Label
 some.text=Some Text
 some.key=This text will have ${some.label} and ${some.text}


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: StringResourceModel labels within values

2008-03-12 Thread Igor Vaynberg
but will that work recusively? :)

-igor


On Wed, Mar 12, 2008 at 1:44 PM, Johan Compagner [EMAIL PROTECTED] wrote:
 I think if you just give SRM a model that again gets the values from
  the localizer then it should work fine.




  On 3/12/08, i ii [EMAIL PROTECTED] wrote:
  
   is there way to do something like:
  
   .properties file:
  
   some.label=Some Label
   some.text=Some Text
   some.key=This text will have ${some.label} and ${some.text}
  

  -
  To unsubscribe, e-mail: [EMAIL PROTECTED]
  For additional commands, e-mail: [EMAIL PROTECTED]



-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]