/* * Copyright 2001-2013 Geert Bevin (gbevin[remove] at uwyn dot com) * Licensed under the Apache License, Version 2.0 (the "License") */ package com.uwyn.rife.tools; /** * This class makes it possible to always keep a localized string up-to-date. * By providing it with a lookup key instead of the final text, it is able to * always provide a text representation according to the active default * localization settings. * * @author Geert Bevin (gbevin[remove] at uwyn dot com) * @since 1.0 */ public class LocalizedString implements CharSequence { private String key = null; /** * Instantiates a new <code>LocalizedString</code> instance. * * @param key the key that will be used to look up the localized string * @since 1.0 */ public LocalizedString(String key) { if (null == key) throw new IllegalArgumentException("key can't be null."); this.key = key; } public char charAt(int index) { return toString().charAt(index); } public CharSequence subSequence(int start, int end) { return toString().subSequence(start, end); } public int length() { return toString().length(); } public String toString() { return Localization.getString(key); } }