Example usage for org.apache.commons.lang ArrayUtils indexOf

List of usage examples for org.apache.commons.lang ArrayUtils indexOf

Introduction

In this page you can find the example usage for org.apache.commons.lang ArrayUtils indexOf.

Prototype

public static int indexOf(boolean[] array, boolean valueToFind) 

Source Link

Document

Finds the index of the given value in the array.

Usage

From source file:com.bstek.dorado.idesupport.initializer.CommonRuleTemplateInitializer.java

public void initRuleTemplate(RuleTemplate ruleTemplate, InitializerContext initializerContext)
        throws Exception {
    TypeInfo typeInfo = TypeInfo.parse(ruleTemplate.getType());
    if (typeInfo == null) {
        return;// www .  jav a 2  s.co  m
    }

    Class<?> type = typeInfo.getType();
    RuleTemplateManager ruleTemplateManager = initializerContext.getRuleTemplateManager();
    ruleTemplate.setAbstract(Modifier.isAbstract(type.getModifiers()));

    // ??SuperType?ParentTemplate
    Class<?> superType = type.getSuperclass();
    List<Class<?>> superTypes = new ArrayList<Class<?>>();
    while (superType != null && !superType.equals(Object.class)
            && !superType.equals(ClientEventSupportedObject.class)) {
        RuleTemplate parentRuleTemplate = ruleTemplateManager.getRuleTemplate(superType);
        if (parentRuleTemplate != null) {
            if (superTypes.isEmpty()) {
                ruleTemplate.setParents(new RuleTemplate[] { parentRuleTemplate });
            }
            break;
        }
        superTypes.add(superType);
        superType = superType.getSuperclass();
    }

    // ?AbstractParentTemplate
    RuleTemplate parentRuleTemplate = null;
    if (!superTypes.isEmpty()) {
        for (int i = superTypes.size() - 1; i >= 0; i--) {
            superType = superTypes.get(i);
            RuleTemplate newRuleTemplate = createRuleTemplate(ruleTemplateManager, superType,
                    parentRuleTemplate);
            parentRuleTemplate = newRuleTemplate;
        }
        if (parentRuleTemplate != null && ruleTemplate.getParents() == null) {
            ruleTemplate.setParents(new RuleTemplate[] { parentRuleTemplate });
        }
    }

    XmlNodeInfo xmlNodeInfo = getXmlNodeInfo(type);

    String scope = xmlNodeInfo.getScope();
    if (StringUtils.isEmpty(scope) && Component.class.isAssignableFrom(type)) {
        Widget widget = type.getAnnotation(Widget.class);
        boolean isDeclaredAnnotation = (widget != null
                && ArrayUtils.indexOf(type.getDeclaredAnnotations(), widget) >= 0);
        if (widget != null && !ruleTemplate.isAbstract()) {
            if (StringUtils.isNotEmpty(widget.name()) && !widget.name().equals(ruleTemplate.getName())
                    && (isDeclaredAnnotation || !AssembledComponent.class.isAssignableFrom(type))) {
                ruleTemplate.setLabel(widget.name());
            }
        }
        if (!(widget != null && isDeclaredAnnotation && !Modifier.isAbstract(type.getModifiers()))) {
            scope = "protected";
        }
    }
    if (StringUtils.isNotEmpty(scope) && StringUtils.isEmpty(ruleTemplate.getScope())) {
        ruleTemplate.setScope(scope);
    }

    String nodeName = xmlNodeInfo.getNodeName();
    if (StringUtils.isNotEmpty(nodeName)) {
        ruleTemplate.setNodeName(nodeName);
    }

    if (StringUtils.isEmpty(ruleTemplate.getLabel())) {
        String label = xmlNodeInfo.getLabel();
        if (StringUtils.isNotEmpty(label)) {
            ruleTemplate.setLabel(label);
        } else if (!ruleTemplate.isAbstract()) {
            ruleTemplate.setLabel(type.getSimpleName());
        }
    }

    if (StringUtils.isNotEmpty(xmlNodeInfo.getIcon())) {
        ruleTemplate.setIcon(xmlNodeInfo.getIcon());
    }

    int clientTypes = ClientType.parseClientTypes(xmlNodeInfo.getClientTypes());
    if (clientTypes > 0) {
        ruleTemplate.setClientTypes(clientTypes);
    } else if (Control.class.isAssignableFrom(type) && "public".equals(ruleTemplate.getScope())) {
        ruleTemplate.setClientTypes(ClientType.DESKTOP);
    }

    if (!ruleTemplate.isDeprecated() && xmlNodeInfo.isDeprecated()) {
        ruleTemplate.setDeprecated(true);
    }

    IdeObject ideObject = type.getAnnotation(IdeObject.class);
    if (ideObject != null && ArrayUtils.indexOf(type.getDeclaredAnnotations(), ideObject) >= 0) {
        if (StringUtils.isNotEmpty(ideObject.labelProperty())) {
            ruleTemplate.setLabelProperty(ideObject.labelProperty());
        }
        ruleTemplate.setVisible(ideObject.visible());
    }

    // search icon
    if (ruleTemplate.getIcon() == null) {
        String basePath = '/' + StringUtils.replaceChars(type.getName(), '.', '/'), iconPath;

        iconPath = basePath + ".png";
        if (getClass().getResource(iconPath) != null) {
            ruleTemplate.setIcon(iconPath);
        } else {
            iconPath = basePath + ".gif";
            if (getClass().getResource(iconPath) != null) {
                ruleTemplate.setIcon(iconPath);
            }
        }
    }

    if (Component.class.isAssignableFrom(type)) {
        Widget widget = type.getAnnotation(Widget.class);
        if (widget != null) {
            if (ArrayUtils.indexOf(type.getDeclaredAnnotations(), widget) >= 0) {
                if (StringUtils.isEmpty(ruleTemplate.getCategory())) {
                    ruleTemplate.setCategory(widget.category());
                }
                ruleTemplate.setAutoGenerateId(widget.autoGenerateId());
            }
        }
    }

    List<String> robots = null;
    Map<String, RobotInfo> robotMap = robotRegistry.getRobotMap();
    for (Map.Entry<String, RobotInfo> entry : robotMap.entrySet()) {
        RobotInfo robotInfo = entry.getValue();
        if (robotInfo != null) {
            String pattern = robotInfo.getViewObject();
            if (PathUtils.match(pattern, ruleTemplate.getName())) {
                if (robots == null) {
                    robots = new ArrayList<String>();
                }
                robots.add(robotInfo.getName() + '|' + robotInfo.getLabel());
            }
        }
    }

    if (robots != null) {
        ruleTemplate.setRobots(robots.toArray(new String[0]));
    }

    initProperties(ruleTemplate, typeInfo, xmlNodeInfo, initializerContext);
    initChildTemplates(ruleTemplate, typeInfo, xmlNodeInfo, initializerContext);
    initClientEvent(ruleTemplate, typeInfo, initializerContext);

    if (xmlNodeInfo != null && !xmlNodeInfo.getImplTypes().isEmpty()) {
        Set<Class<?>> implTypes = ClassUtils.findClassTypes(xmlNodeInfo.getImplTypes().toArray(new String[0]),
                type);
        for (Class<?> implType : implTypes) {
            if (implType.equals(type)) {
                continue;
            }

            if (ruleTemplateManager.getRuleTemplate(implType) == null) {
                // ?parentRuleTemplate??RuleTemplateinit?
                createRuleTemplate(ruleTemplateManager, implType, null);
            }
        }
    }
}

From source file:net.mumie.coursecreator.graph.cells.SubComponentConstants.java

public boolean isSubElementCategory(int cat) {
    int lower = ArrayUtils.indexOf(categories, CAT_TEST);

    return (cat <= lower);
}

From source file:com.aionemu.gameserver.services.toypet.PetFeedCalculator.java

public static PetFeedResult getReward(int fullCount, PetRewards rewardGroup, PetFeedProgress progress,
        int playerLevel) {
    if (progress.getHungryLevel() != PetHungryLevel.FULL || rewardGroup.getResults().size() == 0) {
        return null;
    }//from ww  w  .ja  v a 2 s . c  o m

    int pointsIndex = ArrayUtils.indexOf(fullCounts, (short) fullCount);
    if (pointsIndex == ArrayUtils.INDEX_NOT_FOUND) {
        return null;
    }

    if (progress.isLovedFeeded()) { // for cash feed
        if (rewardGroup.getResults().size() == 1) {
            return rewardGroup.getResults().get(0);
        }
        List<PetFeedResult> validRewards = new ArrayList<PetFeedResult>();
        int maxLevel = 0;
        for (PetFeedResult result : rewardGroup.getResults()) {
            int resultLevel = DataManager.ITEM_DATA.getItemTemplate(result.getItem()).getLevel();
            if (resultLevel > playerLevel) {
                continue;
            }
            if (resultLevel > maxLevel) {
                maxLevel = resultLevel;
                validRewards.clear();
            }
            validRewards.add(result);
        }
        if (validRewards.size() == 0) {
            return null;
        }
        if (validRewards.size() == 1) {
            return validRewards.get(0);
        }
        return validRewards.get(Rnd.get(validRewards.size()));
    }

    int rewardIndex = 0;
    int totalRewards = rewardGroup.getResults().size();
    for (int row = 1; row < pointValues.length; row++) {
        int[] points = pointValues[row];
        if (points[pointsIndex] <= progress.getTotalPoints()) {
            rewardIndex = Math.round((float) totalRewards / (pointValues.length - 1) * row) - 1;
        }
    }

    // Fix rounding discrepancy
    if (rewardIndex < 0) {
        rewardIndex = 0;
    } else if (rewardIndex > rewardGroup.getResults().size() - 1) {
        rewardIndex = rewardGroup.getResults().size() - 1;
    }

    return rewardGroup.getResults().get(rewardIndex);
}

From source file:gda.gui.beans.EnumPositionerComboBean.java

/**
 * {@inheritDoc} Updates the displayed information. This MUST only be called from the Swing Thread via the
 * updateDisplay method.//from ww w .  java  2  s .  c o m
 * 
 * @see java.lang.Runnable#run()
 */
@Override
public void run() {
    synchronized (this) {
        try {
            String currentPosition = (String) enumPositioner.getPosition();
            if (enumPositioner instanceof NamedEnumPositioner) {
                currentPosition = ((NamedEnumPositioner) enumPositioner).getPositionName();
            }
            int location = ArrayUtils.indexOf(commandPositions, currentPosition);
            //MXGDA-1057 do not select the position again if it's already at the correct position
            if (cmbChoices.getSelectedIndex() != location) {
                cmbChoices.setSelectedIndex(location);
            }
        } catch (DeviceException e) {
            logger.error("Exception while trying to observe " + enumPositionerName + ": " + e.getMessage());
        } finally {
            updateLock = false;
        }
    }
}

From source file:com.autonomy.aci.client.transport.impl.AbstractEncryptionCodec.java

/**
 * Base64 decodes the supplied string and strips the encrypted length and separator, for example <tt>.52|</tt>, from
 * the front of the byte array./*from   ww  w .  j  a  va 2s . co m*/
 * @param bytes The Base64 encoded byte array to decode
 * @return The decoded byte array
 * @throws EncryptionCodecException If an error occurred during processing
 */
protected byte[] decodeInternal(final byte[] bytes) throws EncryptionCodecException {
    LOGGER.trace("decodeInternal() called...");
    LOGGER.debug("Decoding Base64 encoded input...");

    // Decode the input string in preparation for stripping encrypted length and separator...
    final byte[] decoded = Base64.decodeBase64(bytes);

    // We now need to strip off the length of the encrypted section and it's separator...
    final int index = ArrayUtils.indexOf(decoded, (byte) 0x7C);

    if (index == -1) {
        throw new EncryptionCodecException("Incorrect decoded input, no length and separator found.");
    }

    // This is the length of the encrypted portion...
    final int encryptedLength = decoded.length - (index + 1);

    // This will hold the encrypted bytes, minus the length and separator...
    final byte[] stripped = new byte[encryptedLength];

    LOGGER.debug("Stripping length and separator from decoded input...");

    // Strip the length and separator...
    System.arraycopy(decoded, (index + 1), stripped, 0, encryptedLength);

    LOGGER.debug("Returning encrypted portion of the input...");

    // Return the decoded content...
    return stripped;
}

From source file:com.htmlhifive.tools.jslint.view.DescriptionGroupComposite.java

/**
 * ??.//from  w  w w  .jav  a  2 s.c  o m
 * 
 * @param comp ?
 */
private void createTable(Composite comp) {

    // ??
    tableViewer = CheckboxTableViewer.newCheckList(comp,
            SWT.FULL_SELECTION | SWT.H_SCROLL | SWT.V_SCROLL | SWT.SINGLE | SWT.CHECK);
    tableViewer.getTable().setLayoutData(new GridData(GridData.FILL_BOTH));
    TableLayout layout = new TableLayout();
    layout.addColumnData(new ColumnPixelData(50));
    layout.addColumnData(new ColumnPixelData(300));
    layout.addColumnData(new ColumnPixelData(130));
    tableViewer.getTable().setLayout(layout);
    tableViewer.getTable().setHeaderVisible(true);
    tableViewer.getTable().setLinesVisible(true);

    TableViewerColumn columnState = new TableViewerColumn(tableViewer, SWT.CENTER);
    columnState.getColumn().setText(Messages.TC0000.getText());
    columnState.setLabelProvider(new ColumnLabelProvider() {
        @Override
        public String getText(Object element) {

            return "";
        }
    });

    TableViewerColumn columnRegex = new TableViewerColumn(tableViewer, SWT.LEFT);
    columnRegex.getColumn().setText(Messages.TC0004.getText());
    columnRegex.setLabelProvider(new ColumnLabelProvider() {
        @Override
        public String getText(Object element) {

            FilterBean bean = (FilterBean) element;
            return bean.getRegex();
        }
    });
    columnRegex.setEditingSupport(new EditingSupport(tableViewer) {

        @Override
        protected void setValue(Object element, Object value) {

            FilterBean bean = (FilterBean) element;
            bean.setRegex((String) value);
            updateVariable();
        }

        @Override
        protected Object getValue(Object element) {

            String regEx = ((FilterBean) element).getRegex();
            return regEx == null ? "" : regEx;
        }

        @Override
        protected CellEditor getCellEditor(Object element) {

            return new TextCellEditor(tableViewer.getTable());
        }

        @Override
        protected boolean canEdit(Object element) {

            return true;
        }
    });
    TableViewerColumn columnCombo = new TableViewerColumn(tableViewer, SWT.LEFT);
    columnCombo.getColumn().setText(Messages.TC0005.getText());
    columnCombo.setLabelProvider(new ColumnLabelProvider() {
        @Override
        public String getText(Object element) {

            FilterBean bean = (FilterBean) element;
            return bean.getRevel().getLabel();
        }
    });
    columnCombo.setEditingSupport(new EditingSupport(tableViewer) {

        @Override
        protected void setValue(Object element, Object value) {

            FilterBean bean = (FilterBean) element;
            Integer selectNum = (Integer) value;
            // TODO ???????
            bean.setLevel(FilterLevel.getRevelFromLabel(FilterLevel.getAllLabels()[selectNum]));
            updateVariable();
        }

        @Override
        protected Object getValue(Object element) {

            FilterBean bean = (FilterBean) element;
            return ArrayUtils.indexOf(FilterLevel.getAllLabels(), bean.getRevel().getLabel());
        }

        @Override
        protected CellEditor getCellEditor(Object element) {

            CellEditor cellEditor = new ComboBoxCellEditor(tableViewer.getTable(), FilterLevel.getAllLabels(),
                    SWT.READ_ONLY);
            cellEditor.getLayoutData().minimumWidth = 10;
            return cellEditor;
        }

        @Override
        protected boolean canEdit(Object element) {

            return true;
        }
    });

    tableViewer.setContentProvider(ArrayContentProvider.getInstance());
    tableViewer.addCheckStateListener(new ICheckStateListener() {

        @Override
        public void checkStateChanged(CheckStateChangedEvent event) {

            FilterBean bean = (FilterBean) event.getElement();
            bean.setState(event.getChecked());
            updateVariable();

        }
    });

    Composite composite = new Composite(baseComp, SWT.NONE);
    composite.setLayoutData(new GridData(SWT.FILL, SWT.FILL, false, false, 1, 1));
    composite.setLayout(new GridLayout(1, false));
    // ??
    btnAdd = new Button(composite, SWT.None);
    GridData gdBtnAdd = new GridData(SWT.LEFT, SWT.CENTER, false, false, 1, 1);
    gdBtnAdd.widthHint = 60;
    btnAdd.setLayoutData(gdBtnAdd);
    btnAdd.setText(Messages.B0002.getText());
    btnAdd.addSelectionListener(new SelectionAdapter() {
        @Override
        public void widgetSelected(SelectionEvent e) {

            tableElemList.add(new FilterBean());
            updateVariable();
        }
    });
    // ??
    btnDel = new Button(composite, SWT.None);
    GridData gdBtnDel = new GridData(SWT.LEFT, SWT.CENTER, false, false, 1, 1);
    gdBtnDel.widthHint = 60;
    btnDel.setLayoutData(gdBtnDel);
    btnDel.setText(Messages.B0003.getText());
    btnDel.addSelectionListener(new SelectionAdapter() {

        @Override
        public void widgetSelected(SelectionEvent e) {

            FilterBean bean = (FilterBean) ((IStructuredSelection) tableViewer.getSelection())
                    .getFirstElement();
            tableElemList.remove(bean);
            updateVariable();
        }
    });
}

From source file:com.kylinolap.metadata.model.cube.CubeDesc.java

public TblColRef findPKByFK(TblColRef fk) {
    assert isFactTable(fk.getTable());

    TblColRef candidate = null;//w w w.j  av  a 2  s. c  o m

    for (DimensionDesc dim : dimensions) {
        JoinDesc join = dim.getJoin();
        if (join == null)
            continue;

        int find = ArrayUtils.indexOf(join.getForeignKeyColumns(), fk);
        if (find >= 0) {
            candidate = join.getPrimaryKeyColumns()[find];
            if (join.getForeignKeyColumns().length == 1) { // is single
                                                           // column join?
                break;
            }
        }
    }
    return candidate;
}

From source file:com.opengamma.integration.coppclark.CoppClarkExchangeFileReader.java

private int[] findIndices(String[] headers) {
    int[] indices = new int[INDEX_NOTES + 1];
    indices[INDEX_MIC] = ArrayUtils.indexOf(headers, "MIC Code");
    indices[INDEX_NAME] = ArrayUtils.indexOf(headers, "Exchange");
    indices[INDEX_COUNTRY] = ArrayUtils.indexOf(headers, "ISO Code");
    indices[INDEX_ZONE_ID] = ArrayUtils.indexOf(headers, "Olson time zone");
    indices[INDEX_PRODUCT_GROUP] = ArrayUtils.indexOf(headers, "Group");
    indices[INDEX_PRODUCT_NAME] = ArrayUtils.indexOf(headers, "Product");
    indices[INDEX_PRODUCT_TYPE] = ArrayUtils.indexOf(headers, "Type");
    indices[INDEX_PRODUCT_CODE] = ArrayUtils.indexOf(headers, "Code");
    indices[INDEX_CALENDAR_START] = ArrayUtils.indexOf(headers, "Calendar Start");
    indices[INDEX_CALENDAR_END] = ArrayUtils.indexOf(headers, "Calendar End");
    indices[INDEX_DAY_START] = ArrayUtils.indexOf(headers, "Day Start");
    indices[INDEX_DAY_RANGE_TYPE] = ArrayUtils.indexOf(headers, "Range Type");
    indices[INDEX_DAY_END] = ArrayUtils.indexOf(headers, "Day End");
    indices[INDEX_PHASE_NAME] = ArrayUtils.indexOf(headers, "Phase");
    indices[INDEX_PHASE_TYPE] = ArrayUtils.indexOf(headers, "Phase Type");
    indices[INDEX_PHASE_START] = ArrayUtils.indexOf(headers, "Phase Starts");
    indices[INDEX_PHASE_END] = ArrayUtils.indexOf(headers, "Phase Ends");
    indices[INDEX_RANDOM_START_MIN] = ArrayUtils.indexOf(headers, "Random Start Min");
    indices[INDEX_RANDOM_START_MAX] = ArrayUtils.indexOf(headers, "Random Start Max");
    indices[INDEX_RANDOM_END_MIN] = ArrayUtils.indexOf(headers, "Random End Min");
    indices[INDEX_RANDOM_END_MAX] = ArrayUtils.indexOf(headers, "Random End Max");
    indices[INDEX_LAST_CONFIRMED] = ArrayUtils.indexOf(headers, "Last Confirmed");
    indices[INDEX_NOTES] = ArrayUtils.indexOf(headers, "Notes");
    if (ArrayUtils.contains(indices, -1)) {
        throw new OpenGammaRuntimeException(
                "Column not found in exchange file (column must have been renamed!)");
    }//w  w  w . j a  v a  2 s  . c o m
    return indices;
}

From source file:application.ReviewDocumentIndexer.java

private void setArgs(String[] args) throws RuntimeException {
    // Parse and process command line arguments
    for (String arg : args) {
        arg = arg.toLowerCase();//from  w ww. j av a  2  s.co m
    }

    if (args.length == 1 || ArrayUtils.contains(args, "--help"))
        throw new RuntimeException("Command line syntax error");

    if (ArrayUtils.contains(args, "--new")) {
        min_reviewid = 0;
        new_index = true;
    } else if (ArrayUtils.contains(args, "--resume")) {
        try {
            restoreState();
            min_reviewid = theReviewId.get();
        } catch (IOException e) {
            AppLogger.error.log(Level.SEVERE,
                    "Cannot restore indexer state. Some files are missing or are unreadable.");
        }
    } else if (ArrayUtils.contains(args, "--update")) {
        try {
            restoreState();
            min_reviewid = 0;
        } catch (IOException e) {
            AppLogger.error.log(Level.SEVERE,
                    "Cannot restore indexer state. Some files are missing or are unreadable.");
        }
    } else if (ArrayUtils.contains(args, "--restore")) {
        try {
            restoreIndex();
            restoreState();
            min_reviewid = theReviewId.get();
        } catch (IOException e) {
            AppLogger.error.log(Level.SEVERE,
                    "Cannot restore index from backup. Some files are missing or are unreadable.");
        }
    } else
        throw new RuntimeException("Command line syntax error");

    int pos = -1;
    try {
        if ((pos = ArrayUtils.indexOf(args, "--stop-after")) != ArrayUtils.INDEX_NOT_FOUND) {
            stop_after = min_reviewid + Integer.parseInt(args[pos + 1]);
        }
        if ((pos = ArrayUtils.indexOf(args, "--pause-every")) != ArrayUtils.INDEX_NOT_FOUND) {
            pause_every = Integer.parseInt(args[pos + 1]);
        }
    } catch (ArrayIndexOutOfBoundsException e) {
        throw new RuntimeException("Command line syntax error");
    }
}

From source file:com.blockwithme.hacktors.Chunk.java

/** Removes an item, using local coordinates. */
public void removeItemLocal(final int x, final int y, final Item item) {
    if (item == null) {
        throw new IllegalArgumentException("item is null");
    }//from   w ww.  j  av a2s  . co m
    final int index = index(x, y);
    final int where = ArrayUtils.indexOf(items[index], item);
    if (where < 0) {
        throw new IllegalArgumentException("item not found");
    }
    items[index] = (Item[]) ArrayUtils.remove(items[index], where);
}