@@ -0,0 +1,2495 @@
+package org.musetest.selenium.values;%0A%0Aimport org.musetest.builtins.value.*;%0Aimport org.musetest.core.*;%0Aimport org.musetest.core.events.*;%0Aimport org.musetest.core.resource.*;%0Aimport org.musetest.core.values.*;%0Aimport org.musetest.core.values.descriptor.*;%0Aimport org.musetest.selenium.*;%0Aimport org.openqa.selenium.*;%0A%0A/**%0A * @author Christopher L Merrill (see LICENSE.txt for license details)%0A */%0A@MuseTypeId(%22element-value%22)%0A@MuseValueSourceName(%22Element Value%22)%0A@MuseValueSourceTypeGroup(%22Element.Value%22)%0A@MuseValueSourceShortDescription(%22Returns the value of the input element%22)%0A@MuseValueSourceLongDescription(%22Resolves the supplied element source, then returns the value the input element (if any).%22)%0A@MuseStringExpressionSupportImplementation(ElementValue.StringExpressionSupport.class)%0A@MuseSubsourceDescriptor(displayName = %22Element%22, description = %22The element to get value from%22, type = SubsourceDescriptor.Type.Single)%0A@SuppressWarnings(%22unused%22)  // instantiated via reflection%0Apublic class ElementValue extends BaseElementValueSource%0A    %7B%0A    @SuppressWarnings(%22unused%22)  // used via reflection%0A    public ElementValue(ValueSourceConfiguration config, MuseProject project) throws MuseInstantiationException%0A        %7B%0A        super(config, project);%0A        %7D%0A%0A    @Override%0A    public String resolveValue(MuseExecutionContext context) throws ValueSourceResolutionError%0A        %7B%0A        WebElement element = resolveElementSource(context, true);%0A        String value = element.getAttribute(%22value%22);%0A        context.raiseEvent(ValueSourceResolvedEventType.create(getDescription(), value));%0A        return value;%0A        %7D%0A%0A    @Override%0A    public String getDescription()%0A        %7B%0A        return %22elementValue(%22 + getElementSource().getDescription() + %22)%22;%0A        %7D%0A%0A    public final static String TYPE_ID = ElementValue.class.getAnnotation(MuseTypeId.class).value();%0A%0A    public static class StringExpressionSupport extends BaseArgumentedValueSourceStringSupport%0A        %7B%0A        @Override%0A        public String getName()%0A            %7B%0A            return %22elementValue%22;%0A            %7D%0A%0A        @Override%0A        protected int getNumberArguments()%0A            %7B%0A            return 1;%0A            %7D%0A%0A        @Override%0A        protected String getTypeId()%0A            %7B%0A            return ElementValue.TYPE_ID;%0A            %7D%0A%0A        @Override%0A        protected boolean storeSingleArgumentAsSingleSubsource()%0A            %7B%0A            return true;%0A            %7D%0A        %7D%0A    %7D%0A

add elementValue() source