Example usage for org.apache.commons.lang ClassUtils getShortClassName

List of usage examples for org.apache.commons.lang ClassUtils getShortClassName

Introduction

In this page you can find the example usage for org.apache.commons.lang ClassUtils getShortClassName.

Prototype

public static String getShortClassName(String className) 

Source Link

Document

Gets the class name minus the package name from a String.

The string passed in is assumed to be a class name - it is not checked.

Usage

From source file:org.eclipse.wb.internal.rcp.databinding.model.beans.observables.CollectionObservableInfo.java

@Override
public final String getPresentationText() throws Exception {
    String elementTypeName = m_elementType == null ? "?????" : ClassUtils.getShortClassName(m_elementType);
    return getPresentationPrefix() + "(" + getBindableObject().getPresentation().getTextForBinding() + ", "
            + elementTypeName + ".class)";
}

From source file:org.eclipse.wb.internal.rcp.databinding.model.beans.observables.DetailBeanObservableInfo.java

@Override
public String getPresentationText() throws Exception {
    String presentationProperty = StringUtils.defaultIfEmpty(m_detailPropertyReference, "?????");
    String presentationPropertyType = m_detailPropertyType == null ? "?????"
            : ClassUtils.getShortClassName(m_detailPropertyType);
    return m_masterObservable.getPresentationText() + ".detail" + getPresentationPrefix() + "("
            + presentationProperty + ", " + presentationPropertyType + ".class)";
}

From source file:org.eclipse.wb.internal.rcp.databinding.model.ControllerSupport.java

public static String automaticWizardPerformSubstitutions(AutomaticDatabindingFirstPage firstWizardPage,
        String code, ImportsManager imports, IJavaProject javaProject, ClassLoader classLoader,
        Class<?> beanClass, List<PropertyAdapter> properties,
        Map<PropertyAdapter, AbstractDescriptor[]> propertyToEditor) throws Exception {
    InputStream controllerStream = Activator.getFile("templates/Controller.jvt");
    String controllerCode = IOUtils.toString(controllerStream);
    IOUtils.closeQuietly(controllerStream);
    ///*from   w  w w. jav  a2s .  c  o m*/
    String hostClassName = ClassUtils.getShortClassName(firstWizardPage.getTypeName());
    String hostVariable = StringUtils.uncapitalize(hostClassName);
    String hostField = "m_" + hostVariable;
    //
    controllerCode = StringUtils.replace(controllerCode, "%HostClass%", hostClassName);
    controllerCode = StringUtils.replace(controllerCode, "%HostVariable%", hostVariable);
    controllerCode = StringUtils.replace(controllerCode, "%HostField%", hostField);
    //
    String begin = "";
    String end = "\t\t";
    String widgetStart = "";
    boolean blockMode = SwtDatabindingProvider.useBlockMode();
    if (blockMode) {
        begin = "\t\t{\r\n";
        end = "\t\t}";
        widgetStart = "\t";
    }
    // prepare imports
    Collection<String> hostImportList = Sets.newHashSet();
    hostImportList.add(SWT.class.getName());
    hostImportList.add("org.eclipse.swt.widgets.Label");
    hostImportList.add("org.eclipse.swt.layout.GridLayout");
    hostImportList.add("org.eclipse.swt.layout.GridData");
    //
    Collection<String> controllerImportList = Sets.newHashSet();
    controllerImportList.add(SWT.class.getName());
    controllerImportList.add("org.eclipse.jface.databinding.swt.SWTObservables");
    controllerImportList.add("org.eclipse.core.databinding.observable.value.IObservableValue");
    controllerImportList.add("org.eclipse.core.databinding.UpdateValueStrategy");
    //
    DataBindingsCodeUtils.ensureDBLibraries(javaProject);
    //
    IAutomaticWizardStub automaticWizardStub = GlobalFactoryHelper.automaticWizardCreateStub(javaProject,
            classLoader, beanClass);
    //
    String observeMethod = null;
    if (automaticWizardStub == null) {
        if (ObservableInfo.isPojoBean(beanClass)) {
            String pojoClassName = DataBindingsCodeUtils.getPojoObservablesClass();
            observeMethod = "ObserveValue = " + ClassUtils.getShortClassName(pojoClassName) + ".observeValue(";
            controllerImportList.add(pojoClassName);
        } else {
            observeMethod = "ObserveValue = BeansObservables.observeValue(";
            controllerImportList.add("org.eclipse.core.databinding.beans.BeansObservables");
        }
    } else {
        automaticWizardStub.addImports(controllerImportList);
    }
    // prepare bean
    String beanClassName = CoreUtils.getClassName(beanClass);
    String beanClassShortName = ClassUtils.getShortClassName(beanClassName);
    String fieldPrefix = JavaCore.getOption(JavaCore.CODEASSIST_FIELD_PREFIXES);
    String fieldName = fieldPrefix + StringUtils.uncapitalize(beanClassShortName);
    controllerCode = StringUtils.replace(controllerCode, "%BeanClass%", beanClassName);
    //
    if (ReflectionUtils.getConstructorBySignature(beanClass, "<init>()") == null) {
        controllerCode = StringUtils.replace(controllerCode, "%BeanField%", fieldName);
    } else {
        controllerCode = StringUtils.replace(controllerCode, "%BeanField%",
                fieldName + " = new " + beanClassName + "()");
    }
    //
    IPreferenceStore preferences = ToolkitProvider.DESCRIPTION.getPreferences();
    String accessPrefix = preferences.getBoolean(FieldUniqueVariableSupport.P_PREFIX_THIS) ? "this." : "";
    controllerCode = StringUtils.replace(controllerCode, "%BeanFieldAccess%", accessPrefix + fieldName);
    //
    controllerCode = StringUtils.replace(controllerCode, "%BeanName%",
            StringUtils.capitalize(beanClassShortName));
    // prepare code
    StringBuffer widgetFields = new StringBuffer();
    StringBuffer widgets = new StringBuffer();
    String swtContainer = StringUtils.substringBetween(code, "%Widgets%", "%");
    String swtContainerWithDot = "this".equals(swtContainer) ? "" : swtContainer + ".";
    //
    StringBuffer observables = new StringBuffer();
    StringBuffer bindings = new StringBuffer();
    StringBuffer widgetGetters = new StringBuffer();
    //
    hostImportList.add(GridLayout.class.getName());
    widgets.append("\t\t" + swtContainerWithDot + "setLayout(new GridLayout(2, false));\r\n");
    if (!blockMode) {
        widgets.append("\t\t\r\n");
    }
    //
    for (Iterator<PropertyAdapter> I = properties.iterator(); I.hasNext();) {
        PropertyAdapter property = I.next();
        Object[] editorData = propertyToEditor.get(property);
        SwtWidgetDescriptor widgetDescriptor = (SwtWidgetDescriptor) editorData[0];
        JFaceBindingStrategyDescriptor strategyDescriptor = (JFaceBindingStrategyDescriptor) editorData[1];
        //
        String propertyName = property.getName();
        String widgetClassName = widgetDescriptor.getClassName();
        String widgetFieldName = fieldPrefix + propertyName + widgetClassName;
        String widgetFieldAccess = accessPrefix + widgetFieldName;
        String widgetAccessor = "get" + StringUtils.capitalize(propertyName) + widgetClassName + "()";
        String widgetControllerAccessor = hostField + "." + widgetAccessor;
        // getter
        widgetGetters.append("method\n\tpublic " + widgetClassName + " " + widgetAccessor + " {\n\t\treturn "
                + widgetFieldName + ";\n\t}\n\n");
        // field
        widgetFields.append("\r\nfield\r\n\tprivate " + widgetClassName + " " + widgetFieldName + ";");
        // widget
        widgets.append(begin);
        widgets.append(widgetStart + "\t\tnew Label(" + swtContainer + ", SWT.NONE).setText(\""
                + StringUtils.capitalize(propertyName) + ":\");\r\n");
        widgets.append(end + "\r\n");
        //
        widgets.append(begin);
        widgets.append(
                "\t\t" + widgetFieldAccess + " = " + widgetDescriptor.getCreateCode(swtContainer) + ";\r\n");
        widgets.append(widgetStart + "\t\t" + widgetFieldAccess
                + ".setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false));\r\n");
        widgets.append(end);
        // observables
        observables.append("\t\tIObservableValue " + propertyName + "ObserveWidget = "
                + widgetDescriptor.getBindingCode(widgetControllerAccessor) + ";\r\n");
        if (automaticWizardStub == null) {
            observables.append("\t\tIObservableValue " + propertyName + observeMethod + fieldName + ", \""
                    + propertyName + "\");");
        } else {
            observables.append(automaticWizardStub.createSourceCode(fieldName, propertyName));
        }
        // bindings
        bindings.append("\t\tbindingContext.bindValue(" + propertyName + "ObserveWidget, " + propertyName
                + "ObserveValue, " + strategyDescriptor.getTargetStrategyCode() + ", "
                + strategyDescriptor.getModelStrategyCode() + ");");
        //
        if (I.hasNext()) {
            widgetFields.append("\r\n");
            widgets.append("\r\n");
            observables.append("\r\n");
            bindings.append("\r\n");
        }
        //
        hostImportList.add(widgetDescriptor.getFullClassName());
    }
    // replace template patterns
    String controllerClass = hostClassName + "Controller";
    code = StringUtils.replace(code, "%ControllerClass%", controllerClass);
    code = StringUtils.replace(code, "%WidgetFields%", widgetFields.toString());
    code = StringUtils.replace(code, "%Widgets%" + swtContainer + "%", widgets.toString());
    code = StringUtils.replace(code, "%WidgetGetters%", widgetGetters.toString());
    //
    controllerCode = StringUtils.replace(controllerCode, "%Observables%", observables.toString());
    controllerCode = StringUtils.replace(controllerCode, "%Bindings%", bindings.toString());
    // add imports
    for (String qualifiedTypeName : hostImportList) {
        imports.addImport(qualifiedTypeName);
    }
    StringBuffer controllerImportString = new StringBuffer();
    for (String controllerImport : controllerImportList) {
        controllerImportString.append("import " + controllerImport + ";\n");
    }
    controllerCode = StringUtils.replace(controllerCode, "%imports%", controllerImportString.toString());
    //
    IPackageFragment packageFragment = firstWizardPage.getPackageFragment();
    //
    String packageString = packageFragment.getElementName();
    if (packageString.length() > 0) {
        packageString = "package " + packageString + ";";
    }
    controllerCode = StringUtils.replace(controllerCode, "%package%", packageString);
    //
    IPath packagePath = packageFragment.getPath().removeFirstSegments(1);
    IFile controllerFile = javaProject.getProject().getFile(packagePath.append(controllerClass + ".java"));
    IOUtils2.setFileContents(controllerFile, controllerCode);
    //
    return code;
}

From source file:org.eclipse.wb.internal.rcp.databinding.model.widgets.input.AbstractFactoryInfo.java

@Override
public String getClassName() {
    StringBuffer buffer = new StringBuffer();
    buffer.append("(");
    if (m_propertyName == null) {
        buffer.append("?????, ");
    } else {//  w w w  .  jav a  2s  .  co  m
        buffer.append(m_propertyName + ", ");
    }
    if (m_elementType == null) {
        buffer.append("?????");
    } else {
        buffer.append(ClassUtils.getShortClassName(m_elementType));
    }
    buffer.append(".class)");
    return m_method + buffer.toString();
}

From source file:org.eclipse.wb.internal.rcp.databinding.model.widgets.input.VirtualEditingSupportInfo.java

public String getCellEditorPresentationText() throws Exception {
    return isEmpty() ? ""
            : ClassUtils.getShortClassName(StringUtils.substringBefore(m_cellEditorClassName, "(")) + "."
                    + StringUtils.remove(m_cellEditorProperty, '"');
}

From source file:org.eclipse.wb.internal.rcp.databinding.model.widgets.input.VirtualEditingSupportInfo.java

public String getElementPropertyPresentationText() throws Exception {
    return isEmpty() ? ""
            : ClassUtils.getShortClassName(m_elementTypeProvider.getElementType()) + "."
                    + StringUtils.remove(m_elementProperty, '"');
}

From source file:org.eclipse.wb.internal.rcp.databinding.model.widgets.observables.CheckedElementsObservableInfo.java

@Override
public String getPresentationText() throws Exception {
    String presentationElementType = m_elementType == null ? "?????"
            : ClassUtils.getShortClassName(m_elementType);
    return getBindableObject().getPresentation().getTextForBinding() + ".checkedElements("
            + presentationElementType + ".class)";
}

From source file:org.eclipse.wb.internal.rcp.databinding.ui.contentproviders.ObservableDetailUiContentProvider.java

public void updateFromObject() throws Exception {
    String propertyReference = m_observable.getDetailPropertyReference();
    // sets property reference and type
    if (propertyReference == null) {
        // calculate type over viewer input element type
        if (m_observable.getMasterObservable() instanceof ViewerObservableInfo) {
            Class<?> elementType = AbstractViewerInputBindingInfo
                    .getViewerInutElementType(m_observable.getMasterObservable(), m_provider);
            if (elementType == null) {
                calculateFinish();//  w w w.j ava 2  s .  co m
            } else {
                setClassName(CoreUtils.getClassName(elementType));
            }
        } else {
            calculateFinish();
        }
    } else if (m_observable.getDetailBeanClass() == null) {
        // prepare property
        Class<?> propertyType = m_observable.getDetailPropertyType();
        String propertyName = StringUtils.substringBetween(propertyReference, "\"");
        BeanPropertyBindableInfo bindableProperty = new BeanPropertyBindableInfo(null, null, propertyName,
                propertyType, propertyName);
        bindableProperty.setProperties(Collections.<PropertyBindableInfo>emptyList());
        PropertyAdapter property = new ObservePropertyAdapter(null, bindableProperty);
        // prepare fake class name
        String className = "detail(" + propertyReference + ", " + ClassUtils.getShortClassName(propertyType)
                + ".class)";
        // sets class and property
        setClassNameAndProperty(className, property, false);
    } else {
        // set temporally None strategy for select detail property
        LoadedPropertiesCheckedStrategy strategy = m_configuration.getLoadedPropertiesCheckedStrategy();
        m_configuration.setLoadedPropertiesCheckedStrategy(LoadedPropertiesCheckedStrategy.None);
        // sets class and property
        setClassNameAndProperties(m_observable.getDetailBeanClass(), null,
                Lists.newArrayList(propertyReference));
        // restore strategy
        m_configuration.setLoadedPropertiesCheckedStrategy(strategy);
    }
}

From source file:org.eclipse.wb.internal.rcp.databinding.ui.contentproviders.TreeInputElementUiContentProvider.java

/**
 * Fill JFace page.//from   w  w  w .j a  v a  2  s.c  om
 */
private List<IUiContentProvider> createJFaceProviders() {
    List<IUiContentProvider> providers = Lists.newArrayList();
    //
    if (m_binding.isDesignerMode()) {
        // create fake objects
        // create factory
        ObservableFactoryInfo factory = new ObservableFactoryInfo("");
        m_defaultObjects.add(factory);
        factory.createContentProviders(providers, m_provider);
        // create advisor
        TreeStructureAdvisorInfo advisor = new TreeStructureAdvisorInfo("");
        m_defaultObjects.add(advisor);
        advisor.createContentProviders(providers, m_provider);
        // content provider always exist
        m_binding.getContentProvider().createContentProviders(providers, m_provider, false);
        // create label provider
        LabelProviderInfo labelProvider = new LabelProviderInfo("");
        m_defaultObjects.add(labelProvider);
        labelProvider.createContentProviders(providers, m_provider, false);
    } else {
        // add life objects
        createDefaultProviders(providers, false);
    }
    //
    final ObservableInfo inputObservable = m_binding.getInputObservable();
    if (inputObservable instanceof ListBeanObservableInfo || inputObservable instanceof SetBeanObservableInfo
            || inputObservable instanceof BeanFieldInputObservableInfo) {
        final ChooseClassUiContentProvider contentProviderJFaceEditor = (ChooseClassUiContentProvider) providers
                .get(0);
        //
        try {
            String factoryValue = inputObservable.getBindableProperty().getReference() + ", "
                    + ClassUtils.getShortClassName(inputObservable.getBindableObject().getObjectType())
                    + ".class)";
            //
            if (inputObservable instanceof ListBeanObservableInfo) {
                factoryValue = "listFactory(" + factoryValue;
                contentProviderJFaceEditor.getConfiguration().addDefaultStart(factoryValue);
                contentProviderJFaceEditor.addClassToCombo(factoryValue);
            } else if (inputObservable instanceof SetBeanObservableInfo) {
                factoryValue = "setFactory(" + factoryValue;
                contentProviderJFaceEditor.getConfiguration().addDefaultStart(factoryValue);
                contentProviderJFaceEditor.addClassToCombo(factoryValue);
            }
        } catch (Throwable e) {
        }
        //
        new ChooseClassRouter(contentProviderJFaceEditor, new Runnable() {
            public void run() {
                String className = contentProviderJFaceEditor.getClassName();
                if (className.startsWith("listFactory") || className.startsWith("setFactory")) {
                    m_elementTypeJFaceUIProvider.setClassName(
                            CoreUtils.getClassName(inputObservable.getBindableObject().getObjectType()));
                }
            }
        });
    }
    //
    m_labelProviderJFaceEditor = (ChooseClassUiContentProvider) providers.get(providers.size() - 1);
    new ChooseClassRouter(m_labelProviderJFaceEditor, new Runnable() {
        public void run() {
            m_elementTypeJFaceUIProvider.calculateFinish();
        }
    });
    //
    providers.add(m_elementTypeJFaceUIProvider);
    return providers;
}

From source file:org.eclipse.wb.internal.rcp.databinding.wizards.autobindings.SwtDatabindingProvider.java

public InputStream getTemplateFile(String superClassName) {
    String subName = m_firstPage.isCreateControlClass() ? "Controller" : "";
    return Activator.getFile("templates/" + ClassUtils.getShortClassName(superClassName) + subName + ".jvt");
}