Returns the direct properties of this resource in a map for a given locale.<p>

This is without "search", so it will not include inherited properties from the parent folders.<p>

@return the direct properties of this resource in a map for  a given locale
494871
public Map<String, Map<String, String>> getPropertyLocale() {

        if (m_propertiesLocale == null) {
            m_propertiesLocale = CmsCollectionsGenericWrapper.createLazyMap(
                new CmsLocalePropertyLoaderTransformer(getCmsObject(), this, false));
            // result may still be null
            return (m_propertiesLocale == null) ? Collections.EMPTY_MAP : m_propertiesLocale;
        }
        return m_propertiesLocale;
    }
997917
public Map getProperties() {
        if (tc.isEntryEnabled())
            SibTr.entry(this, tc, "getProperties");
        if (tc.isEntryEnabled())
            SibTr.exit(this, tc, "getProperties");
        return null;
    }
1132182
@SuppressWarnings({"unchecked"})
    public static <T extends LocalizableResource> T get(Class<T> cls, String locale) {
        Map<String, LocalizableResource> localeCache = getLocaleCache(cls);
        T m = (T) localeCache.get(locale);
        if (m != null) {
            return m;
        }
        synchronized (cache) {
            m = (T) localeCache.get(locale);
            if (m != null) {
                return m;
            }
            m = provider.create(cls, locale);
            put(cls, locale, m);
            return m;
        }
    }
69059
public ValueMap getProperties() {
    if (this.properties == null) {
      this.properties = new ValueMapDecorator(new HashMap<String, Object>());
    }
    return this.properties;
  }
1218015
Map<Class<? extends Annotation>, Set<Locale>> getAnnotationToLocaleMapping() {
        Map<Class<? extends Annotation>, Set<Locale>> res = new HashMap<Class<? extends Annotation>, Set<Locale>>();
        for (Entry<Class<? extends Annotation>, C10NAnnotationBinder> entry : annotationBinders.entrySet()) {
            Set<Locale> locales = getLocales(entry.getKey(), res);
            locales.add(entry.getValue().getLocale());
        }
        return res;
    }
1229806
public Map<String, String> getPropertySearch() {

        if (m_propertiesSearch == null) {
            try {
                List<CmsProperty> properties = m_cms.readPropertyObjects(this, true);
                m_propertiesSearch = CmsProperty.toMap(properties);
            } catch (CmsException e) {
                if (LOG.isDebugEnabled()) {
                    LOG.debug(e.getMessage(), e);
                }
            }
        }
        return m_propertiesSearch;
    }
906208
public String get(final String key) {
        return get(Keys.LANGUAGE, key, Locales.getLocale());
    }
1349276
public Resource getResource(String name, Locale locale) throws IOException {
        return getResource(name, locale, null);
    }
1006678
protected String getLocaleSpecificTitle(Locale locale) {

        String result = null;

        try {

            if (isDetailRequest()) {
                // this is a request to a detail page
                CmsResource res = getDetailContent();
                CmsFile file = m_cms.readFile(res);
                CmsXmlContent content = CmsXmlContentFactory.unmarshal(m_cms, file);
                result = content.getHandler().getTitleMapping(m_cms, content, m_cms.getRequestContext().getLocale());
                if (result == null) {
                    // title not found, maybe no mapping OR not available in the current locale
                    // read the title of the detail resource as fall back (may contain mapping from another locale)
                    result = m_cms.readPropertyObject(
                        res,
                        CmsPropertyDefinition.PROPERTY_TITLE,
                        false,
                        locale).getValue();
                }
            }
            if (result == null) {
                // read the title of the requested resource as fall back
                result = m_cms.readPropertyObject(
                    m_cms.getRequestContext().getUri(),
                    CmsPropertyDefinition.PROPERTY_TITLE,
                    true,
                    locale).getValue();
            }
        } catch (CmsException e) {
            LOG.debug(e.getLocalizedMessage(), e);
        }
        if (CmsStringUtil.isEmptyOrWhitespaceOnly(result)) {
            result = "";
        }

        return result;
    }
1052700
@Override
    public Enumeration<Locale> getLocales() {
        if (super.getSession(false) == null) {
            return super.getLocales();
        }

        final IUserInstance userInstance =
                this.userInstanceManager.getUserInstance(this.getWrappedRequest());
        final LocaleManager localeManager = userInstance.getLocaleManager();
        final List<Locale> locales = localeManager.getLocales();
        return Collections.enumeration(locales);
    }
1174537
private LinkedHashMap<String, String> getAvailableLocales(CmsResource resource) {

        LinkedHashMap<String, String> result = null;
        List<Locale> locales = null;
        try {
            if (CmsResourceTypeXmlPage.isXmlPage(resource)) {
                locales = CmsXmlPageFactory.unmarshal(getCmsObject(), resource, getRequest()).getLocales();
            } else if (CmsResourceTypeXmlContent.isXmlContent(resource)) {
                locales = CmsXmlContentFactory.unmarshal(getCmsObject(), resource, getRequest()).getLocales();
            } else if (CmsResourceTypeXmlContainerPage.isContainerPage(resource)) {
                locales = CmsXmlContainerPageFactory.unmarshal(getCmsObject(), resource).getLocales();
            }
        } catch (CmsException e) {
            LOG.warn(e.getLocalizedMessage(), e);
        }
        if (locales != null) {
            Locale wpLocale = OpenCms.getWorkplaceManager().getWorkplaceLocale(getCmsObject());
            result = new LinkedHashMap<String, String>();
            for (Locale locale : locales) {
                result.put(locale.toString(), locale.getDisplayName(wpLocale));
            }
        }
        return result;
    }
424390
public Map<String, String> getTitleLocale() {

        if (m_localeTitles == null) {
            m_localeTitles = CmsCollectionsGenericWrapper.createLazyMap(new Transformer() {

                public Object transform(Object inputLocale) {

                    Locale locale = null;
                    if (null != inputLocale) {
                        if (inputLocale instanceof Locale) {
                            locale = (Locale)inputLocale;
                        } else if (inputLocale instanceof String) {
                            try {
                                locale = LocaleUtils.toLocale((String)inputLocale);
                            } catch (IllegalArgumentException | NullPointerException e) {
                                // do nothing, just go on without locale
                            }
                        }
                    }
                    return getLocaleSpecificTitle(locale);
                }

            });
        }
        return m_localeTitles;
    }
819972
private Map<String, String> buildLocalesMap() {

        TreeMap<String, String> localesMap = new TreeMap<String, String>();
        Iterator<Locale> it = OpenCms.getLocaleManager().getAvailableLocales().iterator();
        while (it.hasNext()) {
            Locale locale = it.next();
            localesMap.put(locale.toString(), locale.getDisplayName(getWorkplaceLocale()));
        }
        return localesMap;
    }
773974
public HashMap<String, String> getProperties() {
        if (this.properties == null) {
            this.properties = new HashMap<String, String>();
        }
        return properties;
    }
407669
public static Properties getHeaderAsProperties() {
        Properties result = new Properties();

        if (customProps != null) {
            result.putAll(customProps);
        }

        result.put(ServerInstanceLogRecordList.HEADER_PROCESSID, processId);
        result.put(ServerInstanceLogRecordList.HEADER_SERVER_TIMEZONE, TimeZone.getDefault().getID());
        result.put(ServerInstanceLogRecordList.HEADER_SERVER_LOCALE_LANGUAGE, Locale.getDefault().getLanguage());
        result.put(ServerInstanceLogRecordList.HEADER_SERVER_LOCALE_COUNTRY, Locale.getDefault().getCountry());

        addSystemPropertyIfPresent(result, "java.fullversion");
        addSystemPropertyIfPresent(result, "java.version");
        addSystemPropertyIfPresent(result, "os.name");
        addSystemPropertyIfPresent(result, "os.version");
        addSystemPropertyIfPresent(result, "java.compiler");
        addSystemPropertyIfPresent(result, "java.vm.name");
//        addSystemPropertyIfPresent(result, "was.install.root"); // WAS specific
//        addSystemPropertyIfPresent(result, "user.install.root"); // WAS specific
        addSystemPropertyIfPresent(result, "java.home");
//        addSystemPropertyIfPresent(result, "ws.ext.dirs"); // WAS specific
        addSystemPropertyIfPresent(result, "java.class.path");
        addSystemPropertyIfPresent(result, "java.library.path");
        // Add property to know if server is configured to convert depricated
        // messages or not.
//        addSystemPropertyIfPresent(result, "com.ibm.websphere.logging.messageId.version");// WAS specific

        // Add CBE related values
        addSystemPropertyIfPresent(result, "os.arch");
        // try {
        // addIfPresent(result, ServerInstanceLogRecordList.HEADER_HOSTNAME,
        // getHostName());
        // } catch (Throwable t) {
        // // Ignore just don't put anything.
        // }
        addIfPresent(result, ServerInstanceLogRecordList.HEADER_ISZOS, isZOS ? "Y" : null);
        // addIfPresent(result, ServerInstanceLogRecordList.HEADER_ISSERVER,
        // RasHelper.isServer() ? "Y" : null);
        // addIfPresent(result, ServerInstanceLogRecordList.HEADER_ISTHINCLIENT,
        // ManagerAdmin.isThinClient() ? "Y" : null);
        // if (isZos) {
        // addIfPresent(result, ServerInstanceLogRecordList.HEADER_PROCESSNAME,
        // ZRasHelper.ProcessInfo.getPId());
        // addIfPresent(result,
        // ServerInstanceLogRecordList.HEADER_ADDRESSSPACEID,
        // ZRasHelper.ProcessInfo.getAddressSpaceId());
        // addIfPresent(result, ServerInstanceLogRecordList.HEADER_JOBNAME,
        // ZRasHelper.ProcessInfo.getJobName());
        // addIfPresent(result, ServerInstanceLogRecordList.HEADER_SERVER_NAME,
        // ZRasHelper.ProcessInfo.getServer());
        // addIfPresent(result, ServerInstanceLogRecordList.HEADER_JOBID,
        // ZRasHelper.ProcessInfo.getSystemJobId());
        // addIfPresent(result, ServerInstanceLogRecordList.HEADER_SYSTEMNAME,
        // ZRasHelper.ProcessInfo.getSystemName());
        // }

        return result;
    }
719516
protected Locale getLocale(String destination, List<CmsProperty> properties) {

        String localeName = CmsProperty.get(CmsPropertyDefinition.PROPERTY_LOCALE, properties).getValue();

        if (localeName != null) {
            // locale was already set on the files properties
            return OpenCms.getLocaleManager().getAvailableLocales(localeName).get(0);
        }
        // locale not set in properties, read default locales
        return OpenCms.getLocaleManager().getDefaultLocales(m_cms, CmsResource.getParentFolder(destination)).get(0);
    }
913176
public Map<String, Object> getProperties()
    {
        if (this.getRecord() != null)
            if (((this.getRecord().getDatabaseType() & DBConstants.MAPPED) != 0)
                || ((this.getRecord().getDatabaseType() & DBConstants.REMOTE_MEMORY) != 0))
        {
            if (m_properties == null)
                m_properties = new Hashtable<String,Object>();
            m_properties.put(RecordMessageConstants.TABLE_NAME, this.getRecord().getTableNames(false)); // Don't call setProperty since ClientTable does a remote call
        }
        return m_properties;
    }