<p><b>Used for finding element process (to generate xpath address)</b></p>

@param searchLabelTypes accepted values are: {@link SearchType}
@param <T>              the element which calls this method
@return this element
329435
@SuppressWarnings("unchecked")
    private <T extends XPathBuilder> T setSearchLabelType(SearchType... searchLabelTypes) {
        this.searchLabelType = new ArrayList<>();
        if (searchLabelTypes != null) {
            this.searchLabelType.addAll(0, Arrays.asList(searchLabelTypes));
        }
        this.searchLabelType = cleanUpSearchType(this.searchLabelType);
        return (T) this;
    }
861520
public String processInterfaceOperationType(TDefinitions descriptionType, String interfaceName, TOperation interfaceOperationType, boolean addAddress)
    {
        String name = interfaceOperationType.getName();
        TParam messageIn = null;
        TParam messageOut = null;
        TParam messageFault = null;
        
        for (Object nextElement : interfaceOperationType.getRest())
        {
            Object inputOrOutputType = null;
            if (nextElement instanceof JAXBElement)
                inputOrOutputType = ((JAXBElement)nextElement).getValue();
            if (inputOrOutputType instanceof TParam)
            {
                String strName = ((JAXBElement)nextElement).getName().getLocalPart();
                if ("Input".equalsIgnoreCase(strName))
                    messageIn = (TParam)inputOrOutputType;
                else if ("Output".equalsIgnoreCase(strName))
                    messageOut = (TParam)inputOrOutputType;
                else
                    messageFault = (TParam)inputOrOutputType;
            }
        }
        
        TBinding binding = this.getBindingFromInterfaceName(descriptionType, interfaceName);
        
        String address = this.getServiceEndpointFromInterfaceNBinding(descriptionType, name, binding);
        boolean bIsSafe = true;
        // Note: Here I should probably go through the types and find the type, but I just do the quick and dirty
        String element = this.getElementNameFromMessageName(descriptionType, messageIn);
        String elementOut = this.getElementNameFromMessageName(descriptionType, messageOut);
        
        this.updateMessageProcessInfo(element, elementOut, null, bIsSafe, addAddress ? address : null);
        
        return address;
    }
149520
public static <T> TypeChecker<List<? extends T>> tList(Class<? extends T> elementType) {
        return tList(tSimple(elementType));
    }
802239
public static SearchType parseSearchType(final String type) {
    if (type == null || type.isEmpty()) {
      throw new IllegalArgumentException("Type provided was null or empty");
    }
    
    if (type.toLowerCase().equals("tsmeta")) {
      return SearchType.TSMETA;
    } else if (type.toLowerCase().equals("tsmeta_summary")) {
      return SearchType.TSMETA_SUMMARY;
    } else if (type.toLowerCase().equals("tsuids")) {
      return SearchType.TSUIDS;
    } else if (type.toLowerCase().equals("uidmeta")) {
      return SearchType.UIDMETA;
    } else if (type.toLowerCase().equals("annotation")) {
      return SearchType.ANNOTATION;
    } else if (type.toLowerCase().equals("lookup")) {
      return SearchType.LOOKUP;
    } else {
      throw new IllegalArgumentException("Unknown type: " + type);
    }
  }
105718
public SearchResponse searchAll(boolean isSetExplain, String[] indices,
            String[] types, QueryBuilder filterQueryBuilder) {
        return searchAll(isSetExplain, indices, types,
                filterQueryBuilder, null);
    }
83474
public String createClassSignature(TypeElement type) {
    if (!hasGenericSignature(type)) {
      return null;
    }
    StringBuilder sb = new StringBuilder();
    genClassSignature(type, sb);
    return sb.toString();
  }
451412
public Type elemtype(Type t) {
        switch (t.getTag()) {
        case WILDCARD:
            return elemtype(wildUpperBound(t));
        case ARRAY:
            t = t.unannotatedType();
            return ((ArrayType)t).elemtype;
        case FORALL:
            return elemtype(((ForAll)t).qtype);
        case ERROR:
            return t;
        default:
            return null;
        }
    }
33386
private String getTypeKey(I_CmsXmlSchemaType value) {

        StringBuffer result = new StringBuffer(64);
        result.append(value.getContentDefinition().getInnerName());
        result.append('.');
        result.append(value.getName());
        return result.toString();
    }
184798
public String processInterfaceTypes(TDefinitions descriptionType, boolean addAddress)
    {
        String allAddress = DBConstants.BLANK;
        
        for (TDocumented nextElement : descriptionType.getAnyTopLevelOptionalElement())
        {
            // Create the service type
            if (nextElement instanceof TPortType)
            {
                String address = this.processPortType(descriptionType, (TPortType)nextElement, addAddress);
                if (allAddress != null)
                {
                    if (allAddress == DBConstants.BLANK)
                        allAddress = address;
                    else if (!allAddress.equalsIgnoreCase(address))
                        allAddress = null;  // null = not all address are the same
                }
            }
        }
        
        return allAddress;
    }
244648
@Nullable
    protected String getBitFlagDescription(final int tagType, @NotNull final Object... labels)
    {
        Integer value = _directory.getInteger(tagType);

        if (value == null)
            return null;

        List<String> parts = new ArrayList<String>();

        int bitIndex = 0;
        while (labels.length > bitIndex) {
            Object labelObj = labels[bitIndex];
            if (labelObj != null) {
                boolean isBitSet = (value & 1) == 1;
                if (labelObj instanceof String[]) {
                    String[] labelPair = (String[])labelObj;
                    assert(labelPair.length == 2);
                    parts.add(labelPair[isBitSet ? 1 : 0]);
                } else if (isBitSet && labelObj instanceof String) {
                    parts.add((String)labelObj);
                }
            }
            value >>= 1;
            bitIndex++;
        }

        return StringUtil.join(parts, ", ");
    }
815597
public static <T> TypeChecker<Queue<? extends T>> tQueue(Class<? extends T> elementType) {
        return tQueue(tSimple(elementType));
    }
37922
void search() {

        CmsSearchReplaceSettings settings = new CmsSearchReplaceSettings();
        settings.setSiteRoot((String)m_siteSelect.getValue());
        settings.setType((SearchType)m_searchType.getValue());
        settings.setPaths(Collections.singletonList(m_searchRoot.getValue()));
        settings.setIgnoreSubSites(m_ignoreSubSites.getValue().booleanValue());
        I_CmsResourceType type = (I_CmsResourceType)m_resourceType.getValue();
        if (type != null) {
            settings.setTypes(type.getTypeName());
        }
        if (SearchType.resourcetype.equals(m_searchType.getValue())
            | SearchType.renameContainer.equals(m_searchType.getValue())) {
            settings.setTypes(
                CmsResourceTypeXmlContainerPage.getStaticTypeName()
                    + ","
                    + CmsResourceTypeXmlContainerPage.MODEL_GROUP_TYPE_NAME);
        }

        if (SearchType.renameContainer.equals(m_searchType.getValue())) {
            try {
                CmsObject cms = OpenCms.initCmsObject(A_CmsUI.getCmsObject());
                cms.getRequestContext().setSiteRoot("");
                CmsResource element = cms.readResource(m_resourceSearch.getValue());
                settings.setElementResource(element);
            } catch (CmsException e) {
                LOG.error("Can not read resource", e);
            }
        }

        if (m_replace.getValue().booleanValue()) {
            try {
                CmsProject workProject = A_CmsUI.getCmsObject().readProject((CmsUUID)m_workProject.getValue());
                settings.setProject(workProject.getName());
            } catch (CmsException e) {
                // ignore
            }
            if (SearchType.resourcetype.equals(m_searchType.getValue())) {
                try {
                    CmsObject cms = OpenCms.initCmsObject(A_CmsUI.getCmsObject());
                    cms.getRequestContext().setSiteRoot("");
                    CmsResource resource = cms.readResource(m_replaceResource.getValue());
                    settings.setReplacepattern(CmsSearchReplaceSettings.replaceElementInPagePattern(resource));
                } catch (CmsException e) {
                    LOG.error("Unable to read resource.", e);
                }
            } else if (SearchType.renameContainer.equals(m_searchType.getValue())) {
                settings.setReplacepattern(m_oldName.getValue() + ";" + m_newName.getValue());
            } else {

                settings.setReplacepattern(m_replacePattern.getValue());
            }

        }

        if (SearchType.resourcetype.equals(m_searchType.getValue())
            | SearchType.renameContainer.equals(m_searchType.getValue())) {
            try {
                CmsObject cms = OpenCms.initCmsObject(A_CmsUI.getCmsObject());
                cms.getRequestContext().setSiteRoot("");
                CmsResource resource = cms.readResource(m_resourceSearch.getValue());
                settings.setSearchpattern(CmsSearchReplaceSettings.searchElementInPagePattern(resource));
            } catch (CmsException e) {
                LOG.error("Unable to read resource.", e);
            }
        } else {

            settings.setSearchpattern(m_searchPattern.getValue());
        }
        if (settings.getType().isContentValuesOnly()) {
            if (m_locale.getValue() != null) {
                settings.setLocale(m_locale.getValue().toString());
            }
            settings.setXpath(m_xPath.getValue());
        }
        if (settings.getType().isSolrSearch()) {
            settings.setQuery(m_solrQuery.getValue());
            settings.setSource((String)m_searchIndex.getValue());
        }

        if (settings.getType().isPropertySearch()) {
            settings.setProperty((CmsPropertyDefinition)m_property.getValue());
            settings.setForceReplace(m_replace.getValue().booleanValue());
        }

        m_app.search(settings, true);
    }
1352872
public static TypeSignature ofContainer(String containerTypeName, TypeSignature... elementTypeSignatures) {
        requireNonNull(elementTypeSignatures, "elementTypeSignatures");
        return ofContainer(containerTypeName, ImmutableList.copyOf(elementTypeSignatures));
    }
746115
public static <T extends ParameterDescription> ElementMatcher.Junction<T> hasGenericType(ElementMatcher<? super TypeDescription.Generic> matcher) {
        return new MethodParameterTypeMatcher<T>(matcher);
    }
630212
public List<CmsResourceTypeBean> getSearchTypes() {

        if (m_searchTypes != null) {
            return m_searchTypes;
        }
        m_searchTypes = Lists.newArrayList();
        for (CmsResourceTypeBean type : m_dialogBean.getTypes()) {
            if (type.getVisibility() != TypeVisibility.hidden) {
                m_searchTypes.add(type);
            }
        }
        return m_searchTypes;
    }
41995
def _search_in_bases(type_):
    """"""
    found = False
    for base_type in type_.declaration.bases:
        try:
            found = internal_type_traits.get_by_name(
                base_type.related_class, "element_type")
        except runtime_errors.declaration_not_found_t:
            pass
        if found:
            return found
    raise RuntimeError(
        ("Unable to find 'element_type' declaration '%s'"
         "in type '%s'.") % type_.decl_string)
177910
public SearchRequestBuilder getSearchRequestBuilder(boolean isSetExplain,
            String[] indices, String[] types) {
        return getSearchRequestBuilder(isSetExplain, indices, types, null);
    }