+ /**
+ * Creates a new StringComponent object.
+ *
+ * @param aTracker DOCUMENT ME!
+ */
+ public StringComponent(EventTracker aTracker) {
+ this();
+ tracker = aTracker;
+ }
+
+ /**
+ * DOCUMENT ME!
+ *
+ * @param aPrefix DOCUMENT ME!
+ *
+ * @return DOCUMENT ME!
+ */
+ private static final ProvidedInterface[] provided(String aPrefix) {
+ return new ProvidedInterface[] {
+ new DefaultProvidedInterface(aPrefix + "datasource", String.class)
+ };
+ }
+
+ /**
+ * DOCUMENT ME!
+ *
+ * @return DOCUMENT ME!
+ */
+ public Integer getInteger() {
+ return 2;
+ }
+
+ /**
+ * DOCUMENT ME!
+ *
+ * @return DOCUMENT ME!
+ */
+ public String getString() {
+ return getName() + ".hello";
+ }
+
+ /**
+ * DOCUMENT ME!
+ *
+ * @param aScope DOCUMENT ME!
+ *
+ * @return DOCUMENT ME!
+ */
+ @Override
+ protected Object doStart(Scope aScope) {
+ addInterface(getProvidedInterfaces().get(0), getString(), aScope);
+ track("start." + getName());