You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ambari.apache.org by ol...@apache.org on 2016/09/28 09:41:50 UTC
[23/52] [abbrv] ambari git commit: AMBARI-18253. Fix LogSearch
utility classes (Miklos Gergely via oleewere)
http://git-wip-us.apache.org/repos/asf/ambari/blob/c69016d4/ambari-logsearch/ambari-logsearch-portal/src/main/java/org/apache/ambari/logsearch/util/FileUtil.java
----------------------------------------------------------------------
diff --git a/ambari-logsearch/ambari-logsearch-portal/src/main/java/org/apache/ambari/logsearch/util/FileUtil.java b/ambari-logsearch/ambari-logsearch-portal/src/main/java/org/apache/ambari/logsearch/util/FileUtil.java
index e3c2063..505b74d 100644
--- a/ambari-logsearch/ambari-logsearch-portal/src/main/java/org/apache/ambari/logsearch/util/FileUtil.java
+++ b/ambari-logsearch/ambari-logsearch-portal/src/main/java/org/apache/ambari/logsearch/util/FileUtil.java
@@ -33,18 +33,15 @@ import org.apache.ambari.logsearch.common.MessageEnums;
import org.apache.ambari.logsearch.view.VHost;
import org.apache.ambari.logsearch.view.VSummary;
import org.apache.log4j.Logger;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.stereotype.Component;
-@Component
public class FileUtil {
-
private static final Logger logger = Logger.getLogger(FileUtil.class);
- @Autowired
- private RESTErrorUtil restErrorUtil;
-
- public Response saveToFile(String text, String fileName, VSummary vsummary) {
+ private FileUtil() {
+ throw new UnsupportedOperationException();
+ }
+
+ public static Response saveToFile(String text, String fileName, VSummary vsummary) {
String mainExportedFile = "";
FileOutputStream fis = null;
try {
@@ -107,7 +104,7 @@ public class FileUtil {
.build();
} catch (Exception e) {
logger.error(e.getMessage());
- throw restErrorUtil.createRESTException(e.getMessage(), MessageEnums.ERROR_SYSTEM);
+ throw RESTErrorUtil.createRESTException(e.getMessage(), MessageEnums.ERROR_SYSTEM);
} finally {
if (fis != null) {
try {
@@ -118,7 +115,7 @@ public class FileUtil {
}
}
- public File getFileFromClasspath(String filename) {
+ public static File getFileFromClasspath(String filename) {
URL fileCompleteUrl = Thread.currentThread().getContextClassLoader().getResource(filename);
logger.debug("File Complete URI :" + fileCompleteUrl);
File file = null;
http://git-wip-us.apache.org/repos/asf/ambari/blob/c69016d4/ambari-logsearch/ambari-logsearch-portal/src/main/java/org/apache/ambari/logsearch/util/JSONUtil.java
----------------------------------------------------------------------
diff --git a/ambari-logsearch/ambari-logsearch-portal/src/main/java/org/apache/ambari/logsearch/util/JSONUtil.java b/ambari-logsearch/ambari-logsearch-portal/src/main/java/org/apache/ambari/logsearch/util/JSONUtil.java
index 5332d18..d08c0f4 100644
--- a/ambari-logsearch/ambari-logsearch-portal/src/main/java/org/apache/ambari/logsearch/util/JSONUtil.java
+++ b/ambari-logsearch/ambari-logsearch-portal/src/main/java/org/apache/ambari/logsearch/util/JSONUtil.java
@@ -37,25 +37,22 @@ import org.codehaus.jackson.type.TypeReference;
import org.codehaus.jettison.json.JSONArray;
import org.codehaus.jettison.json.JSONException;
import org.codehaus.jettison.json.JSONObject;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.stereotype.Component;
import com.google.gson.Gson;
import com.google.gson.GsonBuilder;
-@Component
public class JSONUtil {
-
private static final Logger logger = Logger.getLogger(JSONUtil.class);
- @Autowired
- private RESTErrorUtil restErrorUtil;
-
private static final String DATE_FORMAT = "yyyy-MM-dd HH:mm:ss.SSS";
- private Gson gson = new GsonBuilder().setDateFormat(DATE_FORMAT).create();
+ private static final Gson gson = new GsonBuilder().setDateFormat(DATE_FORMAT).create();
+ private JSONUtil() {
+ throw new UnsupportedOperationException();
+ }
+
@SuppressWarnings("unchecked")
- public HashMap<String, Object> jsonToMapObject(String jsonStr) {
+ public static HashMap<String, Object> jsonToMapObject(String jsonStr) {
if (StringUtils.isBlank(jsonStr)) {
logger.info("jsonString is empty, cannot conver to map");
return null;
@@ -66,17 +63,17 @@ public class JSONUtil {
return (HashMap<String, Object>) tempObject;
} catch (JsonParseException e) {
- throw restErrorUtil.createRESTException("Invalid input data: " + e.getMessage(), MessageEnums.INVALID_INPUT_DATA);
+ throw RESTErrorUtil.createRESTException("Invalid input data: " + e.getMessage(), MessageEnums.INVALID_INPUT_DATA);
} catch (JsonMappingException e) {
- throw restErrorUtil.createRESTException("Invalid input data: " + e.getMessage(), MessageEnums.INVALID_INPUT_DATA);
+ throw RESTErrorUtil.createRESTException("Invalid input data: " + e.getMessage(), MessageEnums.INVALID_INPUT_DATA);
} catch (IOException e) {
- throw restErrorUtil.createRESTException("Invalid input data: " + e.getMessage(), MessageEnums.INVALID_INPUT_DATA);
+ throw RESTErrorUtil.createRESTException("Invalid input data: " + e.getMessage(), MessageEnums.INVALID_INPUT_DATA);
}
}
@SuppressWarnings("unchecked")
- public List<HashMap<String, Object>> jsonToMapObjectList(String jsonStr) {
+ public static List<HashMap<String, Object>> jsonToMapObjectList(String jsonStr) {
if (StringUtils.isBlank(jsonStr)) {
return null;
}
@@ -86,16 +83,16 @@ public class JSONUtil {
return (List<HashMap<String, Object>>) tempObject;
} catch (JsonParseException e) {
- throw restErrorUtil.createRESTException("Invalid input data: " + e.getMessage(), MessageEnums.INVALID_INPUT_DATA);
+ throw RESTErrorUtil.createRESTException("Invalid input data: " + e.getMessage(), MessageEnums.INVALID_INPUT_DATA);
} catch (JsonMappingException e) {
- throw restErrorUtil.createRESTException("Invalid input data: " + e.getMessage(), MessageEnums.INVALID_INPUT_DATA);
+ throw RESTErrorUtil.createRESTException("Invalid input data: " + e.getMessage(), MessageEnums.INVALID_INPUT_DATA);
} catch (IOException e) {
- throw restErrorUtil.createRESTException("Invalid input data: " + e.getMessage(), MessageEnums.INVALID_INPUT_DATA);
+ throw RESTErrorUtil.createRESTException("Invalid input data: " + e.getMessage(), MessageEnums.INVALID_INPUT_DATA);
}
}
- public boolean isJSONValid(String jsonString) {
+ public static boolean isJSONValid(String jsonString) {
try {
new JSONObject(jsonString);
} catch (JSONException ex) {
@@ -108,7 +105,7 @@ public class JSONUtil {
return true;
}
- public HashMap<String, Object> readJsonFromFile(File jsonFile) {
+ public static HashMap<String, Object> readJsonFromFile(File jsonFile) {
ObjectMapper mapper = new ObjectMapper();
try {
HashMap<String, Object> jsonmap = mapper.readValue(jsonFile, new TypeReference<HashMap<String, Object>>() {});
@@ -119,7 +116,7 @@ public class JSONUtil {
return new HashMap<String, Object>();
}
- public String mapToJSON(Map<String, Object> map) {
+ public static String mapToJSON(Map<String, Object> map) {
ObjectMapper om = new ObjectMapper();
try {
String json = om.writeValueAsString(map);
@@ -134,7 +131,7 @@ public class JSONUtil {
/**
* WRITE JOSN IN FILE ( Delete existing file and create new file)
*/
- public synchronized void writeJSONInFile(String jsonStr, File outputFile, boolean beautify) {
+ public static synchronized void writeJSONInFile(String jsonStr, File outputFile, boolean beautify) {
FileWriter fileWriter = null;
if (outputFile == null) {
logger.error("user_pass json file can't be null.");
@@ -170,11 +167,11 @@ public class JSONUtil {
}
}
- public String objToJson(Object obj) {
+ public static String objToJson(Object obj) {
return gson.toJson(obj);
}
- public Object jsonToObj(String json, Class<?> klass) {
+ public static Object jsonToObj(String json, Class<?> klass) {
return gson.fromJson(json, klass);
}
http://git-wip-us.apache.org/repos/asf/ambari/blob/c69016d4/ambari-logsearch/ambari-logsearch-portal/src/main/java/org/apache/ambari/logsearch/util/PropertiesUtil.java
----------------------------------------------------------------------
diff --git a/ambari-logsearch/ambari-logsearch-portal/src/main/java/org/apache/ambari/logsearch/util/PropertiesUtil.java b/ambari-logsearch/ambari-logsearch-portal/src/main/java/org/apache/ambari/logsearch/util/PropertiesUtil.java
deleted file mode 100644
index 59f0296..0000000
--- a/ambari-logsearch/ambari-logsearch-portal/src/main/java/org/apache/ambari/logsearch/util/PropertiesUtil.java
+++ /dev/null
@@ -1,182 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-package org.apache.ambari.logsearch.util;
-
-import java.io.File;
-import java.io.FileInputStream;
-import java.io.IOException;
-import java.net.URISyntaxException;
-import java.net.URL;
-import java.util.HashMap;
-import java.util.Map;
-import java.util.Properties;
-import java.util.Set;
-
-import org.apache.log4j.Logger;
-import org.springframework.beans.BeansException;
-import org.springframework.beans.factory.config.ConfigurableListableBeanFactory;
-import org.springframework.beans.factory.config.PropertyPlaceholderConfigurer;
-
-public class PropertiesUtil extends PropertyPlaceholderConfigurer {
- private static final Logger logger = Logger.getLogger(PropertiesUtil.class);
-
- private static final String LOGSEARCH_PROP_FILE="logsearch.properties";
-
- private static Map<String, String> propertiesMap;
-
- private PropertiesUtil() {
-
- }
-
- static {
- propertiesMap = new HashMap<String, String>();
- Properties properties = new Properties();
- URL fileCompleteUrl = Thread.currentThread().getContextClassLoader().getResource(LOGSEARCH_PROP_FILE);
- FileInputStream fileInputStream = null;
- try {
- File file = new File(fileCompleteUrl.toURI());
- fileInputStream = new FileInputStream(file.getAbsoluteFile());
- properties.load(fileInputStream);
- } catch (IOException | URISyntaxException e) {
- logger.error("error loading prop for protocol config",e);
- } finally {
- if (fileInputStream != null) {
- try {
- fileInputStream.close();
- } catch (IOException e) {
- }
- }
- }
- for (String key : properties.stringPropertyNames()) {
- String value = properties.getProperty(key);
- propertiesMap.put(key, value);
- }
- }
-
- @Override
- protected void processProperties(ConfigurableListableBeanFactory beanFactory, Properties props) throws BeansException {
- super.processProperties(beanFactory, props);
-
- propertiesMap = new HashMap<String, String>();
-
- // First add the system properties
- Set<Object> keySet = System.getProperties().keySet();
- for (Object key : keySet) {
- String keyStr = key.toString();
- propertiesMap.put(keyStr, System.getProperties().getProperty(keyStr).trim());
- }
-
- // add our properties now
- keySet = props.keySet();
- for (Object key : keySet) {
- String keyStr = key.toString();
- propertiesMap.put(keyStr, props.getProperty(keyStr).trim());
- }
- }
-
- public static String getProperty(String key, String defaultValue) {
- if (key == null) {
- return null;
- }
- String rtrnVal = propertiesMap.get(key);
- if (rtrnVal == null) {
- rtrnVal = defaultValue;
- }
- return rtrnVal;
- }
-
- public static String getProperty(String key) {
- if (key == null) {
- return null;
- }
- return propertiesMap.get(key);
- }
-
- public static String[] getPropertyStringList(String key) {
- if (key == null) {
- return null;
- }
- String value = propertiesMap.get(key);
- if (value == null || value.trim().equals("")) {
- return new String[0];
- } else {
- String[] splitValues = value.split(",");
- String[] returnValues = new String[splitValues.length];
- for (int i = 0; i < splitValues.length; i++) {
- returnValues[i] = splitValues[i].trim();
- }
- return returnValues;
- }
- }
-
- public static Integer getIntProperty(String key, int defaultValue) {
- if (key == null) {
- return null;
- }
- String rtrnVal = propertiesMap.get(key);
- if (rtrnVal == null) {
- return defaultValue;
- }
- return Integer.valueOf(rtrnVal);
- }
-
- public static Integer getIntProperty(String key) {
- if (key == null) {
- return null;
- }
- String rtrnVal = propertiesMap.get(key);
- if (rtrnVal == null) {
- return null;
- }
- return Integer.valueOf(rtrnVal);
- }
-
- public static Long getLongProperty(String key, long defaultValue) {
- if (key == null) {
- return null;
- }
- String rtrnVal = propertiesMap.get(key);
- if (rtrnVal == null) {
- return defaultValue;
- }
- return Long.valueOf(rtrnVal);
- }
-
- public static Long getLongProperty(String key) {
- if (key == null) {
- return null;
- }
- String rtrnVal = propertiesMap.get(key);
- if (rtrnVal == null) {
- return null;
- }
- return Long.valueOf(rtrnVal);
- }
-
- public static boolean getBooleanProperty(String key, boolean defaultValue) {
- if (key == null) {
- return defaultValue;
- }
- String value = getProperty(key);
- if (value == null) {
- return defaultValue;
- }
- return Boolean.parseBoolean(value);
- }
-}
http://git-wip-us.apache.org/repos/asf/ambari/blob/c69016d4/ambari-logsearch/ambari-logsearch-portal/src/main/java/org/apache/ambari/logsearch/util/QueryBase.java
----------------------------------------------------------------------
diff --git a/ambari-logsearch/ambari-logsearch-portal/src/main/java/org/apache/ambari/logsearch/util/QueryBase.java b/ambari-logsearch/ambari-logsearch-portal/src/main/java/org/apache/ambari/logsearch/util/QueryBase.java
deleted file mode 100644
index 5961cff..0000000
--- a/ambari-logsearch/ambari-logsearch-portal/src/main/java/org/apache/ambari/logsearch/util/QueryBase.java
+++ /dev/null
@@ -1,132 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-package org.apache.ambari.logsearch.util;
-
-import org.apache.ambari.logsearch.common.LogSearchConstants;
-import org.apache.commons.lang.StringUtils;
-import org.apache.solr.client.solrj.SolrQuery;
-
-public class QueryBase {
-
- //Solr Facet Methods
- public void setFacetField(SolrQuery solrQuery, String facetField) {
- solrQuery.setFacet(true);
- setRowCount(solrQuery, 0);
- solrQuery.set(LogSearchConstants.FACET_FIELD, facetField);
- setFacetLimit(solrQuery, -1);
- }
-
- public void setJSONFacet(SolrQuery solrQuery, String jsonQuery) {
- solrQuery.setFacet(true);
- setRowCount(solrQuery, 0);
- solrQuery.set(LogSearchConstants.FACET_JSON_FIELD, jsonQuery);
- setFacetLimit(solrQuery, -1);
- }
-
- public void setFacetSort(SolrQuery solrQuery, String sortType) {
- solrQuery.setFacet(true);
- solrQuery.setFacetSort(sortType);
- }
-
- public void setFacetPivot(SolrQuery solrQuery, int mincount, String... hirarchy) {
- solrQuery.setFacet(true);
- setRowCount(solrQuery, 0);
- solrQuery.set(LogSearchConstants.FACET_PIVOT, hirarchy);
- solrQuery.set(LogSearchConstants.FACET_PIVOT_MINCOUNT, mincount);
- setFacetLimit(solrQuery, -1);
- }
-
- public void setFacetDate(SolrQuery solrQuery, String facetField, String from, String to, String unit) {
- solrQuery.setFacet(true);
- setRowCount(solrQuery, 0);
- solrQuery.set(LogSearchConstants.FACET_DATE, facetField);
- solrQuery.set(LogSearchConstants.FACET_DATE_START, from);
- solrQuery.set(LogSearchConstants.FACET_DATE_END, to);
- solrQuery.set(LogSearchConstants.FACET_DATE_GAP, unit);
- solrQuery.set(LogSearchConstants.FACET_MINCOUNT, 0);
- setFacetLimit(solrQuery, -1);
- }
-
- public void setFacetRange(SolrQuery solrQuery, String facetField, String from, String to, String unit) {
- solrQuery.setFacet(true);
- setRowCount(solrQuery, 0);
- solrQuery.set(LogSearchConstants.FACET_RANGE, facetField);
- solrQuery.set(LogSearchConstants.FACET_RANGE_START, from);
- solrQuery.set(LogSearchConstants.FACET_RANGE_END, to);
- solrQuery.set(LogSearchConstants.FACET_RANGE_GAP, unit);
- solrQuery.set(LogSearchConstants.FACET_MINCOUNT, 0);
- setFacetLimit(solrQuery, -1);
- }
-
- public void setFacetLimit(SolrQuery solrQuery, int limit) {
- solrQuery.set("facet.limit", limit);
- }
-
- //Solr Group Mehtods
- public void setGroupField(SolrQuery solrQuery, String groupField, int rows) {
- solrQuery.set(LogSearchConstants.FACET_GROUP, true);
- solrQuery.set(LogSearchConstants.FACET_GROUP_FIELD, groupField);
- solrQuery.set(LogSearchConstants.FACET_GROUP_MAIN, true);
- setRowCount(solrQuery, rows);
- }
-
- //Main Query
- public void setMainQuery(SolrQuery solrQuery, String query) {
- String defalultQuery = "*:*";
- if (StringUtils.isBlank(query)){
- solrQuery.setQuery(defalultQuery);
- }else{
- solrQuery.setQuery(query);
- }
- }
-
- public void setStart(SolrQuery solrQuery, int start) {
- int defaultStart = 0;
- if (start > defaultStart) {
- solrQuery.setStart(start);
- } else {
- solrQuery.setStart(defaultStart);
- }
- }
-
- //Set Number of Rows
- public void setRowCount(SolrQuery solrQuery, int rows) {
- if (rows > 0) {
- solrQuery.setRows(rows);
- } else {
- solrQuery.setRows(0);
- solrQuery.remove(LogSearchConstants.SORT);
- }
- }
-
- //Solr Facet Methods
- public void setFacetFieldWithMincount(SolrQuery solrQuery, String facetField, int minCount) {
- solrQuery.setFacet(true);
- setRowCount(solrQuery, 0);
- solrQuery.set(LogSearchConstants.FACET_FIELD, facetField);
- solrQuery.set(LogSearchConstants.FACET_MINCOUNT, minCount);
- setFacetLimit(solrQuery, -1);
- }
-
- public void setFl(SolrQuery solrQuery,String field){
- solrQuery.set(LogSearchConstants.FL, field);
- }
-
-}
http://git-wip-us.apache.org/repos/asf/ambari/blob/c69016d4/ambari-logsearch/ambari-logsearch-portal/src/main/java/org/apache/ambari/logsearch/util/RESTErrorUtil.java
----------------------------------------------------------------------
diff --git a/ambari-logsearch/ambari-logsearch-portal/src/main/java/org/apache/ambari/logsearch/util/RESTErrorUtil.java b/ambari-logsearch/ambari-logsearch-portal/src/main/java/org/apache/ambari/logsearch/util/RESTErrorUtil.java
index 6df5b05..88fb0d5 100644
--- a/ambari-logsearch/ambari-logsearch-portal/src/main/java/org/apache/ambari/logsearch/util/RESTErrorUtil.java
+++ b/ambari-logsearch/ambari-logsearch-portal/src/main/java/org/apache/ambari/logsearch/util/RESTErrorUtil.java
@@ -29,19 +29,19 @@ import org.apache.ambari.logsearch.common.MessageEnums;
import org.apache.ambari.logsearch.view.VMessage;
import org.apache.ambari.logsearch.view.VResponse;
import org.apache.log4j.Logger;
-import org.springframework.stereotype.Component;
-@Component
public class RESTErrorUtil {
+ private static final Logger logger = Logger.getLogger(RESTErrorUtil.class);
- private static Logger logger = Logger.getLogger(RESTErrorUtil.class);
-
- public WebApplicationException createRESTException(VResponse response) {
+ private RESTErrorUtil() {
+ throw new UnsupportedOperationException();
+ }
+
+ public static WebApplicationException createRESTException(VResponse response) {
return createRESTException(response, HttpServletResponse.SC_BAD_REQUEST);
}
- public WebApplicationException createRESTException(String errorMessage,
- MessageEnums messageEnum) {
+ public static WebApplicationException createRESTException(String errorMessage, MessageEnums messageEnum) {
List<VMessage> messageList = new ArrayList<VMessage>();
messageList.add(messageEnum.getMessage());
@@ -54,7 +54,7 @@ public class RESTErrorUtil {
return webAppEx;
}
- private WebApplicationException createRESTException(VResponse response, int sc) {
+ private static WebApplicationException createRESTException(VResponse response, int sc) {
Response errorResponse = Response.status(sc).entity(response).build();
WebApplicationException restException = new WebApplicationException(errorResponse);
restException.fillInStackTrace();
http://git-wip-us.apache.org/repos/asf/ambari/blob/c69016d4/ambari-logsearch/ambari-logsearch-portal/src/main/java/org/apache/ambari/logsearch/util/SolrUtil.java
----------------------------------------------------------------------
diff --git a/ambari-logsearch/ambari-logsearch-portal/src/main/java/org/apache/ambari/logsearch/util/SolrUtil.java b/ambari-logsearch/ambari-logsearch-portal/src/main/java/org/apache/ambari/logsearch/util/SolrUtil.java
index bcf9605..33262f3 100644
--- a/ambari-logsearch/ambari-logsearch-portal/src/main/java/org/apache/ambari/logsearch/util/SolrUtil.java
+++ b/ambari-logsearch/ambari-logsearch-portal/src/main/java/org/apache/ambari/logsearch/util/SolrUtil.java
@@ -25,30 +25,28 @@ import java.util.Locale;
import org.apache.ambari.logsearch.common.LogSearchConstants;
import org.apache.ambari.logsearch.dao.SolrDaoBase;
+import org.apache.solr.client.solrj.SolrQuery;
import org.apache.solr.schema.TrieDoubleField;
import org.apache.solr.schema.TrieFloatField;
import org.apache.solr.schema.TrieIntField;
import org.apache.solr.schema.TrieLongField;
-import org.springframework.beans.factory.annotation.Autowired;
import org.apache.commons.lang.ArrayUtils;
import org.apache.commons.lang.StringUtils;
-import org.springframework.stereotype.Component;
import org.springframework.util.CollectionUtils;
-@Component
public class SolrUtil {
-
- @Autowired
- private JSONUtil jsonUtil;
-
- public String setField(String fieldName, String value) {
+ private SolrUtil() {
+ throw new UnsupportedOperationException();
+ }
+
+ public static String setField(String fieldName, String value) {
if (value == null || value.trim().length() == 0) {
return "";
}
return fieldName + ":" + value.trim().toLowerCase(Locale.ENGLISH);
}
- public String inList(String fieldName, int[] values) {
+ public static String inList(String fieldName, int[] values) {
if (ArrayUtils.isEmpty(values)) {
return "";
}
@@ -64,7 +62,7 @@ public class SolrUtil {
}
}
- public String inList(Collection<Long> values) {
+ public static String inList(Collection<Long> values) {
if (CollectionUtils.isEmpty(values)) {
return "";
}
@@ -81,7 +79,7 @@ public class SolrUtil {
}
- public String orList(String fieldName, String[] valueList, String wildCard) {
+ public static String orList(String fieldName, String[] valueList, String wildCard) {
if (ArrayUtils.isEmpty(valueList)) {
return "";
}
@@ -109,7 +107,7 @@ public class SolrUtil {
}
- public String andList(String fieldName, String[] valueList, String wildCard) {
+ public static String andList(String fieldName, String[] valueList, String wildCard) {
if (ArrayUtils.isEmpty(valueList)) {
return "";
}
@@ -140,7 +138,7 @@ public class SolrUtil {
/**
* Copied from Solr ClientUtils.escapeQueryChars and removed escaping *
*/
- public String escapeQueryChars(String s) {
+ public static String escapeQueryChars(String s) {
StringBuilder sb = new StringBuilder();
int prev = 0;
if (s != null) {
@@ -169,7 +167,7 @@ public class SolrUtil {
return sb.toString();
}
- private String escapeForWhiteSpaceTokenizer(String search) {
+ private static String escapeForWhiteSpaceTokenizer(String search) {
if (search == null) {
return null;
}
@@ -188,7 +186,7 @@ public class SolrUtil {
return newSearch;
}
- public String escapeForStandardTokenizer(String search) {
+ public static String escapeForStandardTokenizer(String search) {
if (search == null) {
return null;
}
@@ -207,7 +205,7 @@ public class SolrUtil {
return newSearch;
}
- private String escapeForKeyTokenizer(String search) {
+ private static String escapeForKeyTokenizer(String search) {
if (search.startsWith("*") && search.endsWith("*") && !StringUtils.isBlank(search)) {
// Remove the * from both the sides
if (search.length() > 1) {
@@ -226,7 +224,7 @@ public class SolrUtil {
* This is a special case scenario to handle log_message for wild card
* scenarios
*/
- public String escapeForLogMessage(String field, String search) {
+ public static String escapeForLogMessage(String field, String search) {
if (search.startsWith("*") && search.endsWith("*")) {
field = LogSearchConstants.SOLR_KEY_LOG_MESSAGE;
search = escapeForKeyTokenizer(search);
@@ -238,7 +236,7 @@ public class SolrUtil {
return field + ":" + search;
}
- public String makeSolrSearchString(String search) {
+ public static String makeSolrSearchString(String search) {
String newString = search.trim();
String newSearch = newString.replaceAll("(?=[]\\[+&|!(){},:\"^~/=$@%?:.\\\\])", "\\\\");
newSearch = newSearch.replace("\n", "*");
@@ -249,7 +247,7 @@ public class SolrUtil {
return "*" + newSearch + "*";
}
- public String makeSolrSearchStringWithoutAsterisk(String search) {
+ public static String makeSolrSearchStringWithoutAsterisk(String search) {
String newString = search.trim();
String newSearch = newString.replaceAll("(?=[]\\[+&|!(){}^\"~=/$@%?:.\\\\])", "\\\\");
newSearch = newSearch.replace("\n", "*");
@@ -261,7 +259,7 @@ public class SolrUtil {
return newSearch;
}
- public String makeSearcableString(String search) {
+ public static String makeSearcableString(String search) {
if (StringUtils.isBlank(search)) {
return "";
}
@@ -272,7 +270,7 @@ public class SolrUtil {
}
- public boolean isSolrFieldNumber(String fieldType,SolrDaoBase solrDaoBase) {
+ public static boolean isSolrFieldNumber(String fieldType,SolrDaoBase solrDaoBase) {
if (StringUtils.isBlank(fieldType)) {
return false;
} else {
@@ -281,30 +279,25 @@ public class SolrUtil {
return false;
}
String fieldTypeClassName = (String) typeInfoMap.get("class");
- if (fieldTypeClassName.equalsIgnoreCase(TrieIntField.class
- .getSimpleName())) {
+ if (fieldTypeClassName.equalsIgnoreCase(TrieIntField.class.getSimpleName())) {
return true;
}
- if (fieldTypeClassName.equalsIgnoreCase(TrieDoubleField.class
- .getSimpleName())) {
+ if (fieldTypeClassName.equalsIgnoreCase(TrieDoubleField.class.getSimpleName())) {
return true;
}
- if (fieldTypeClassName.equalsIgnoreCase(TrieFloatField.class
- .getSimpleName())) {
+ if (fieldTypeClassName.equalsIgnoreCase(TrieFloatField.class.getSimpleName())) {
return true;
}
- if (fieldTypeClassName.equalsIgnoreCase(TrieLongField.class
- .getSimpleName())) {
+ if (fieldTypeClassName.equalsIgnoreCase(TrieLongField.class.getSimpleName())) {
return true;
}
return false;
}
}
- public HashMap<String, Object> getFieldTypeInfoMap(String fieldType,SolrDaoBase solrDaoBase) {
+ public static HashMap<String, Object> getFieldTypeInfoMap(String fieldType,SolrDaoBase solrDaoBase) {
String fieldTypeMetaData = solrDaoBase.schemaFieldTypeMap.get(fieldType);
- HashMap<String, Object> fieldTypeMap = jsonUtil
- .jsonToMapObject(fieldTypeMetaData);
+ HashMap<String, Object> fieldTypeMap = JSONUtil.jsonToMapObject(fieldTypeMetaData);
if (fieldTypeMap == null) {
return new HashMap<String, Object>();
}
@@ -315,4 +308,111 @@ public class SolrUtil {
}
return fieldTypeMap;
}
+
+ //=============================================================================================================
+
+ //Solr Facet Methods
+ public static void setFacetField(SolrQuery solrQuery, String facetField) {
+ solrQuery.setFacet(true);
+ setRowCount(solrQuery, 0);
+ solrQuery.set(LogSearchConstants.FACET_FIELD, facetField);
+ setFacetLimit(solrQuery, -1);
+ }
+
+ public static void setJSONFacet(SolrQuery solrQuery, String jsonQuery) {
+ solrQuery.setFacet(true);
+ setRowCount(solrQuery, 0);
+ solrQuery.set(LogSearchConstants.FACET_JSON_FIELD, jsonQuery);
+ setFacetLimit(solrQuery, -1);
+ }
+
+ public static void setFacetSort(SolrQuery solrQuery, String sortType) {
+ solrQuery.setFacet(true);
+ solrQuery.setFacetSort(sortType);
+ }
+
+ public static void setFacetPivot(SolrQuery solrQuery, int mincount, String... hirarchy) {
+ solrQuery.setFacet(true);
+ setRowCount(solrQuery, 0);
+ solrQuery.set(LogSearchConstants.FACET_PIVOT, hirarchy);
+ solrQuery.set(LogSearchConstants.FACET_PIVOT_MINCOUNT, mincount);
+ setFacetLimit(solrQuery, -1);
+ }
+
+ public static void setFacetDate(SolrQuery solrQuery, String facetField, String from, String to, String unit) {
+ solrQuery.setFacet(true);
+ setRowCount(solrQuery, 0);
+ solrQuery.set(LogSearchConstants.FACET_DATE, facetField);
+ solrQuery.set(LogSearchConstants.FACET_DATE_START, from);
+ solrQuery.set(LogSearchConstants.FACET_DATE_END, to);
+ solrQuery.set(LogSearchConstants.FACET_DATE_GAP, unit);
+ solrQuery.set(LogSearchConstants.FACET_MINCOUNT, 0);
+ setFacetLimit(solrQuery, -1);
+ }
+
+ public static void setFacetRange(SolrQuery solrQuery, String facetField, String from, String to, String unit) {
+ solrQuery.setFacet(true);
+ setRowCount(solrQuery, 0);
+ solrQuery.set(LogSearchConstants.FACET_RANGE, facetField);
+ solrQuery.set(LogSearchConstants.FACET_RANGE_START, from);
+ solrQuery.set(LogSearchConstants.FACET_RANGE_END, to);
+ solrQuery.set(LogSearchConstants.FACET_RANGE_GAP, unit);
+ solrQuery.set(LogSearchConstants.FACET_MINCOUNT, 0);
+ setFacetLimit(solrQuery, -1);
+ }
+
+ public static void setFacetLimit(SolrQuery solrQuery, int limit) {
+ solrQuery.set("facet.limit", limit);
+ }
+
+ //Solr Group Mehtods
+ public static void setGroupField(SolrQuery solrQuery, String groupField, int rows) {
+ solrQuery.set(LogSearchConstants.FACET_GROUP, true);
+ solrQuery.set(LogSearchConstants.FACET_GROUP_FIELD, groupField);
+ solrQuery.set(LogSearchConstants.FACET_GROUP_MAIN, true);
+ setRowCount(solrQuery, rows);
+ }
+
+ //Main Query
+ public static void setMainQuery(SolrQuery solrQuery, String query) {
+ String defalultQuery = "*:*";
+ if (StringUtils.isBlank(query)){
+ solrQuery.setQuery(defalultQuery);
+ }else{
+ solrQuery.setQuery(query);
+ }
+ }
+
+ public static void setStart(SolrQuery solrQuery, int start) {
+ int defaultStart = 0;
+ if (start > defaultStart) {
+ solrQuery.setStart(start);
+ } else {
+ solrQuery.setStart(defaultStart);
+ }
+ }
+
+ //Set Number of Rows
+ public static void setRowCount(SolrQuery solrQuery, int rows) {
+ if (rows > 0) {
+ solrQuery.setRows(rows);
+ } else {
+ solrQuery.setRows(0);
+ solrQuery.remove(LogSearchConstants.SORT);
+ }
+ }
+
+ //Solr Facet Methods
+ public static void setFacetFieldWithMincount(SolrQuery solrQuery, String facetField, int minCount) {
+ solrQuery.setFacet(true);
+ setRowCount(solrQuery, 0);
+ solrQuery.set(LogSearchConstants.FACET_FIELD, facetField);
+ solrQuery.set(LogSearchConstants.FACET_MINCOUNT, minCount);
+ setFacetLimit(solrQuery, -1);
+ }
+
+ public static void setFl(SolrQuery solrQuery,String field){
+ solrQuery.set(LogSearchConstants.FL, field);
+ }
+
}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/ambari/blob/c69016d4/ambari-logsearch/ambari-logsearch-portal/src/main/java/org/apache/ambari/logsearch/util/XMLPropertiesUtil.java
----------------------------------------------------------------------
diff --git a/ambari-logsearch/ambari-logsearch-portal/src/main/java/org/apache/ambari/logsearch/util/XMLPropertiesUtil.java b/ambari-logsearch/ambari-logsearch-portal/src/main/java/org/apache/ambari/logsearch/util/XMLPropertiesUtil.java
deleted file mode 100644
index ff80e73..0000000
--- a/ambari-logsearch/ambari-logsearch-portal/src/main/java/org/apache/ambari/logsearch/util/XMLPropertiesUtil.java
+++ /dev/null
@@ -1,85 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-package org.apache.ambari.logsearch.util;
-
-import java.io.IOException;
-import java.io.InputStream;
-import java.util.Properties;
-
-import javax.xml.parsers.DocumentBuilder;
-import javax.xml.parsers.DocumentBuilderFactory;
-
-import org.apache.log4j.Logger;
-import org.springframework.util.DefaultPropertiesPersister;
-import org.w3c.dom.Document;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-import org.w3c.dom.NodeList;
-
-public class XMLPropertiesUtil extends DefaultPropertiesPersister {
- private static Logger logger = Logger.getLogger(XMLPropertiesUtil.class);
-
- public XMLPropertiesUtil() {
- }
-
- @Override
- public void loadFromXml(Properties properties, InputStream inputStream)
- throws IOException {
- try {
- DocumentBuilderFactory xmlDocumentBuilderFactory = DocumentBuilderFactory
- .newInstance();
- xmlDocumentBuilderFactory.setIgnoringComments(true);
- xmlDocumentBuilderFactory.setNamespaceAware(true);
- DocumentBuilder xmlDocumentBuilder = xmlDocumentBuilderFactory
- .newDocumentBuilder();
- Document xmlDocument = xmlDocumentBuilder.parse(inputStream);
- if (xmlDocument != null) {
- xmlDocument.getDocumentElement().normalize();
- NodeList nList = xmlDocument.getElementsByTagName("property");
- if (nList != null) {
- for (int temp = 0; temp < nList.getLength(); temp++) {
- Node nNode = nList.item(temp);
- if (nNode.getNodeType() == Node.ELEMENT_NODE) {
- Element eElement = (Element) nNode;
- String propertyName = "";
- String propertyValue = "";
- if (eElement.getElementsByTagName("name") != null
- && eElement.getElementsByTagName("name").item(0) != null) {
- propertyName = eElement.getElementsByTagName("name").item(0)
- .getTextContent().trim();
- }
- if (eElement.getElementsByTagName("value") != null
- && eElement.getElementsByTagName("value").item(0) != null) {
- propertyValue = eElement.getElementsByTagName("value").item(0)
- .getTextContent().trim();
- }
- if (propertyName != null && !propertyName.isEmpty()) {
- properties.put(propertyName, propertyValue);
- }
- }
- }
- }
- }
- } catch (Exception e) {
- logger.error("Error loading xml properties ", e);
- }
- }
-
-}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/ambari/blob/c69016d4/ambari-logsearch/ambari-logsearch-portal/src/main/java/org/apache/ambari/logsearch/web/authenticate/LogsearchAuthFailureHandler.java
----------------------------------------------------------------------
diff --git a/ambari-logsearch/ambari-logsearch-portal/src/main/java/org/apache/ambari/logsearch/web/authenticate/LogsearchAuthFailureHandler.java b/ambari-logsearch/ambari-logsearch-portal/src/main/java/org/apache/ambari/logsearch/web/authenticate/LogsearchAuthFailureHandler.java
index d706beb..fdec8d3 100644
--- a/ambari-logsearch/ambari-logsearch-portal/src/main/java/org/apache/ambari/logsearch/web/authenticate/LogsearchAuthFailureHandler.java
+++ b/ambari-logsearch/ambari-logsearch-portal/src/main/java/org/apache/ambari/logsearch/web/authenticate/LogsearchAuthFailureHandler.java
@@ -24,27 +24,20 @@ import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
-import org.apache.ambari.logsearch.util.RESTErrorUtil;
import org.apache.log4j.Logger;
-import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.core.AuthenticationException;
import org.springframework.security.web.authentication.ExceptionMappingAuthenticationFailureHandler;
public class LogsearchAuthFailureHandler extends ExceptionMappingAuthenticationFailureHandler {
-
private static final Logger logger = Logger.getLogger(LogsearchAuthFailureHandler.class);
- @Autowired
- RESTErrorUtil restErrorUtil;
-
- public void onAuthenticationFailure(HttpServletRequest request, HttpServletResponse response,
- AuthenticationException exception) throws IOException, ServletException {
+ public void onAuthenticationFailure(HttpServletRequest request, HttpServletResponse response, AuthenticationException exception)
+ throws IOException, ServletException {
logger.debug(" AuthFailureHandler + onAuthenticationFailure");
// TODO UI side handle status and redirect to login page with proper
response.setContentType("application/json");
response.setStatus(HttpServletResponse.SC_UNAUTHORIZED);
response.getOutputStream().println("{ \"error\": \"" + "login failed !!" + "\" }");
-
}
}
http://git-wip-us.apache.org/repos/asf/ambari/blob/c69016d4/ambari-logsearch/ambari-logsearch-portal/src/main/java/org/apache/ambari/logsearch/web/filters/LogsearchAuthenticationEntryPoint.java
----------------------------------------------------------------------
diff --git a/ambari-logsearch/ambari-logsearch-portal/src/main/java/org/apache/ambari/logsearch/web/filters/LogsearchAuthenticationEntryPoint.java b/ambari-logsearch/ambari-logsearch-portal/src/main/java/org/apache/ambari/logsearch/web/filters/LogsearchAuthenticationEntryPoint.java
index 62f762c..1b24c06 100644
--- a/ambari-logsearch/ambari-logsearch-portal/src/main/java/org/apache/ambari/logsearch/web/filters/LogsearchAuthenticationEntryPoint.java
+++ b/ambari-logsearch/ambari-logsearch-portal/src/main/java/org/apache/ambari/logsearch/web/filters/LogsearchAuthenticationEntryPoint.java
@@ -24,23 +24,17 @@ import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
-import org.apache.ambari.logsearch.util.RESTErrorUtil;
import org.apache.log4j.Logger;
-import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.core.AuthenticationException;
import org.springframework.security.web.authentication.LoginUrlAuthenticationEntryPoint;
class LogsearchAuthenticationEntryPoint extends LoginUrlAuthenticationEntryPoint {
-
- @Autowired
- RESTErrorUtil restErrorUtil;
+ private static final Logger logger = Logger.getLogger(LogsearchAuthenticationEntryPoint.class);
public LogsearchAuthenticationEntryPoint(String loginFormUrl) {
super(loginFormUrl);
}
- private static final Logger logger = Logger.getLogger(LogsearchAuthenticationEntryPoint.class);
-
@Override
public void commence(HttpServletRequest request, HttpServletResponse response, AuthenticationException authException)
throws IOException, ServletException {
http://git-wip-us.apache.org/repos/asf/ambari/blob/c69016d4/ambari-logsearch/ambari-logsearch-portal/src/main/java/org/apache/ambari/logsearch/web/filters/LogsearchKRBAuthenticationFilter.java
----------------------------------------------------------------------
diff --git a/ambari-logsearch/ambari-logsearch-portal/src/main/java/org/apache/ambari/logsearch/web/filters/LogsearchKRBAuthenticationFilter.java b/ambari-logsearch/ambari-logsearch-portal/src/main/java/org/apache/ambari/logsearch/web/filters/LogsearchKRBAuthenticationFilter.java
index 6443d62..29fd5b2 100644
--- a/ambari-logsearch/ambari-logsearch-portal/src/main/java/org/apache/ambari/logsearch/web/filters/LogsearchKRBAuthenticationFilter.java
+++ b/ambari-logsearch/ambari-logsearch-portal/src/main/java/org/apache/ambari/logsearch/web/filters/LogsearchKRBAuthenticationFilter.java
@@ -40,7 +40,6 @@ import javax.servlet.http.Cookie;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
-import org.apache.ambari.logsearch.util.PropertiesUtil;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.security.authentication.AbstractAuthenticationToken;
@@ -54,6 +53,7 @@ import org.springframework.security.core.context.SecurityContextHolder;
import org.springframework.security.core.context.SecurityContextImpl;
import org.springframework.security.core.userdetails.User;
import org.springframework.security.core.userdetails.UserDetails;
+import org.apache.ambari.logsearch.common.PropertiesHelper;
import org.apache.commons.collections.iterators.IteratorEnumeration;
import org.apache.commons.lang.StringEscapeUtils;
import org.apache.commons.lang.StringUtils;
@@ -102,18 +102,18 @@ public class LogsearchKRBAuthenticationFilter extends LogsearchKrbFilter {
@Override
public void init(FilterConfig conf) throws ServletException {
final FilterConfig globalConf = conf;
- String hostName = PropertiesUtil.getProperty(HOST_NAME, "localhost");
+ String hostName = PropertiesHelper.getProperty(HOST_NAME, "localhost");
final Map<String, String> params = new HashMap<String, String>();
if (spnegoEnable) {
authType = KerberosAuthenticationHandler.TYPE;
}
params.put(AUTH_TYPE,authType);
- params.put(NAME_RULES_PARAM,PropertiesUtil.getProperty(NAME_RULES, "DEFAULT"));
- params.put(TOKEN_VALID_PARAM, PropertiesUtil.getProperty(TOKEN_VALID, "30"));
- params.put(COOKIE_DOMAIN_PARAM, PropertiesUtil.getProperty(COOKIE_DOMAIN, hostName));
- params.put(COOKIE_PATH_PARAM, PropertiesUtil.getProperty(COOKIE_PATH, "/"));
- params.put(PRINCIPAL_PARAM,PropertiesUtil.getProperty(PRINCIPAL,""));
- params.put(KEYTAB_PARAM,PropertiesUtil.getProperty(KEYTAB,""));
+ params.put(NAME_RULES_PARAM,PropertiesHelper.getProperty(NAME_RULES, "DEFAULT"));
+ params.put(TOKEN_VALID_PARAM, PropertiesHelper.getProperty(TOKEN_VALID, "30"));
+ params.put(COOKIE_DOMAIN_PARAM, PropertiesHelper.getProperty(COOKIE_DOMAIN, hostName));
+ params.put(COOKIE_PATH_PARAM, PropertiesHelper.getProperty(COOKIE_PATH, "/"));
+ params.put(PRINCIPAL_PARAM,PropertiesHelper.getProperty(PRINCIPAL,""));
+ params.put(KEYTAB_PARAM,PropertiesHelper.getProperty(KEYTAB,""));
FilterConfig myConf = new FilterConfig() {
@Override
public ServletContext getServletContext() {
@@ -196,7 +196,7 @@ public class LogsearchKRBAuthenticationFilter extends LogsearchKrbFilter {
}
if (!isLoginRequest(httpRequest) && spnegoEnable
&& (existingAuth == null || !existingAuth.isAuthenticated())) {
- KerberosName.setRules(PropertiesUtil.getProperty(NAME_RULES, "DEFAULT"));
+ KerberosName.setRules(PropertiesHelper.getProperty(NAME_RULES, "DEFAULT"));
String userName = getUsernameFromRequest(httpRequest);
if ((existingAuth == null || !existingAuth.isAuthenticated())
&& (!StringUtils.isEmpty(userName))) {
@@ -230,12 +230,12 @@ public class LogsearchKRBAuthenticationFilter extends LogsearchKrbFilter {
}
private void isSpnegoEnable() {
- spnegoEnable = PropertiesUtil.getBooleanProperty(KERBEROS_ENABLE, false);
+ spnegoEnable = PropertiesHelper.getBooleanProperty(KERBEROS_ENABLE, false);
if (spnegoEnable) {
spnegoEnable = false;
- String keytab = PropertiesUtil.getProperty(KEYTAB);
- String principal = PropertiesUtil.getProperty(PRINCIPAL);
- String hostname = PropertiesUtil.getProperty(HOST_NAME);
+ String keytab = PropertiesHelper.getProperty(KEYTAB);
+ String principal = PropertiesHelper.getProperty(PRINCIPAL);
+ String hostname = PropertiesHelper.getProperty(HOST_NAME);
if (!StringUtils.isEmpty(keytab) && !StringUtils.isEmpty(principal)
&& !StringUtils.isEmpty(hostname)) {
spnegoEnable = true;
http://git-wip-us.apache.org/repos/asf/ambari/blob/c69016d4/ambari-logsearch/ambari-logsearch-portal/src/main/java/org/apache/ambari/logsearch/web/security/LdapUtil.java
----------------------------------------------------------------------
diff --git a/ambari-logsearch/ambari-logsearch-portal/src/main/java/org/apache/ambari/logsearch/web/security/LdapUtil.java b/ambari-logsearch/ambari-logsearch-portal/src/main/java/org/apache/ambari/logsearch/web/security/LdapUtil.java
index 99940df..6248e74 100644
--- a/ambari-logsearch/ambari-logsearch-portal/src/main/java/org/apache/ambari/logsearch/web/security/LdapUtil.java
+++ b/ambari-logsearch/ambari-logsearch-portal/src/main/java/org/apache/ambari/logsearch/web/security/LdapUtil.java
@@ -21,8 +21,8 @@ package org.apache.ambari.logsearch.web.security;
import java.io.IOException;
import java.util.Properties;
-import org.apache.ambari.logsearch.util.PropertiesUtil;
-import org.apache.ambari.logsearch.util.XMLPropertiesUtil;
+import org.apache.ambari.logsearch.common.PropertiesHelper;
+import org.apache.ambari.logsearch.common.XMLPropertiesHelper;
import org.apache.log4j.Logger;
import org.springframework.core.io.ClassPathResource;
@@ -94,13 +94,13 @@ public class LdapUtil {
*/
public static LdapProperties loadLdapProperties() {
LdapProperties ldapServerProperties = null;
- String ldapConfigFileName = PropertiesUtil.getProperty("logsearch.login.ldap.config", "logsearch-admin-site.xml");
+ String ldapConfigFileName = PropertiesHelper.getProperty("logsearch.login.ldap.config", "logsearch-admin-site.xml");
Properties props = null;
ClassPathResource resource = new ClassPathResource(ldapConfigFileName);
if (resource != null) {
try {
props = new Properties();
- new XMLPropertiesUtil().loadFromXml(props, resource.getInputStream());
+ new XMLPropertiesHelper().loadFromXml(props, resource.getInputStream());
ldapServerProperties = getLdapServerProperties(props);
} catch (IOException e) {
logger.error("Ldap configudation file loading failed : " + e.getMessage());
http://git-wip-us.apache.org/repos/asf/ambari/blob/c69016d4/ambari-logsearch/ambari-logsearch-portal/src/main/java/org/apache/ambari/logsearch/web/security/LogsearchAbstractAuthenticationProvider.java
----------------------------------------------------------------------
diff --git a/ambari-logsearch/ambari-logsearch-portal/src/main/java/org/apache/ambari/logsearch/web/security/LogsearchAbstractAuthenticationProvider.java b/ambari-logsearch/ambari-logsearch-portal/src/main/java/org/apache/ambari/logsearch/web/security/LogsearchAbstractAuthenticationProvider.java
index d82bf8e..0c102c3 100644
--- a/ambari-logsearch/ambari-logsearch-portal/src/main/java/org/apache/ambari/logsearch/web/security/LogsearchAbstractAuthenticationProvider.java
+++ b/ambari-logsearch/ambari-logsearch-portal/src/main/java/org/apache/ambari/logsearch/web/security/LogsearchAbstractAuthenticationProvider.java
@@ -21,7 +21,7 @@ package org.apache.ambari.logsearch.web.security;
import java.util.ArrayList;
import java.util.List;
-import org.apache.ambari.logsearch.util.PropertiesUtil;
+import org.apache.ambari.logsearch.common.PropertiesHelper;
import org.springframework.security.authentication.AuthenticationProvider;
import org.springframework.security.authentication.UsernamePasswordAuthenticationToken;
import org.springframework.security.core.GrantedAuthority;
@@ -61,7 +61,7 @@ public abstract class LogsearchAbstractAuthenticationProvider implements Authent
public boolean isEnable(AUTH_METHOD method) {
String methodName = method.name().toLowerCase();
String property = AUTH_METHOD_PROP_START_WITH + methodName + ".enable";
- boolean isEnable = PropertiesUtil.getBooleanProperty(property, false);
+ boolean isEnable = PropertiesHelper.getBooleanProperty(property, false);
return isEnable;
}
http://git-wip-us.apache.org/repos/asf/ambari/blob/c69016d4/ambari-logsearch/ambari-logsearch-portal/src/main/java/org/apache/ambari/logsearch/web/security/LogsearchAuthenticationProvider.java
----------------------------------------------------------------------
diff --git a/ambari-logsearch/ambari-logsearch-portal/src/main/java/org/apache/ambari/logsearch/web/security/LogsearchAuthenticationProvider.java b/ambari-logsearch/ambari-logsearch-portal/src/main/java/org/apache/ambari/logsearch/web/security/LogsearchAuthenticationProvider.java
index 8c69152..0f7377d 100644
--- a/ambari-logsearch/ambari-logsearch-portal/src/main/java/org/apache/ambari/logsearch/web/security/LogsearchAuthenticationProvider.java
+++ b/ambari-logsearch/ambari-logsearch-portal/src/main/java/org/apache/ambari/logsearch/web/security/LogsearchAuthenticationProvider.java
@@ -54,12 +54,6 @@ public class LogsearchAuthenticationProvider extends
@Autowired
LogsearchExternalServerAuthenticationProvider externalServerAuthenticationProvider;
- @Autowired
- JSONUtil jsonUtil;
-
- @Autowired
- private UserDetailsService userService;
-
@Override
public Authentication authenticate(Authentication authentication)
throws AuthenticationException {
@@ -117,7 +111,7 @@ public class LogsearchAuthenticationProvider extends
}
return authentication;
} finally {
- String jsonStr = jsonUtil.mapToJSON(auditRecord);
+ String jsonStr = JSONUtil.mapToJSON(auditRecord);
if (isSuccess) {
auditLogger.info(jsonStr);
} else {
@@ -126,11 +120,6 @@ public class LogsearchAuthenticationProvider extends
}
}
- /**
- * @param authentication
- * @param authMethod
- * @return
- */
public Authentication doAuth(Authentication authentication, AUTH_METHOD authMethod) {
if (authMethod.equals(AUTH_METHOD.LDAP)) {
authentication = ldapAuthenticationProvider.authenticate(authentication);
http://git-wip-us.apache.org/repos/asf/ambari/blob/c69016d4/ambari-logsearch/ambari-logsearch-portal/src/main/java/org/apache/ambari/logsearch/web/security/LogsearchExternalServerAuthenticationProvider.java
----------------------------------------------------------------------
diff --git a/ambari-logsearch/ambari-logsearch-portal/src/main/java/org/apache/ambari/logsearch/web/security/LogsearchExternalServerAuthenticationProvider.java b/ambari-logsearch/ambari-logsearch-portal/src/main/java/org/apache/ambari/logsearch/web/security/LogsearchExternalServerAuthenticationProvider.java
index 72ee60f..4eea3e1 100644
--- a/ambari-logsearch/ambari-logsearch-portal/src/main/java/org/apache/ambari/logsearch/web/security/LogsearchExternalServerAuthenticationProvider.java
+++ b/ambari-logsearch/ambari-logsearch-portal/src/main/java/org/apache/ambari/logsearch/web/security/LogsearchExternalServerAuthenticationProvider.java
@@ -23,9 +23,9 @@ import java.util.List;
import javax.annotation.PostConstruct;
-import org.apache.ambari.logsearch.util.ExternalServerClient;
+import org.apache.ambari.logsearch.common.ExternalServerClient;
+import org.apache.ambari.logsearch.common.PropertiesHelper;
import org.apache.ambari.logsearch.util.JSONUtil;
-import org.apache.ambari.logsearch.util.PropertiesUtil;
import org.apache.commons.lang.StringEscapeUtils;
import org.apache.commons.lang.StringUtils;
import org.apache.log4j.Logger;
@@ -98,14 +98,11 @@ public class LogsearchExternalServerAuthenticationProvider extends
@Autowired
ExternalServerClient externalServerClient;
- @Autowired
- JSONUtil jsonUtil;
-
private String loginAPIURL = "/api/v1/users/$USERNAME/privileges?fields=*";// default
@PostConstruct
public void initialization() {
- loginAPIURL = PropertiesUtil.getProperty(AUTH_METHOD_PROP_START_WITH
+ loginAPIURL = PropertiesHelper.getProperty(AUTH_METHOD_PROP_START_WITH
+ "external_auth.login_url", loginAPIURL);
}
@@ -160,11 +157,11 @@ public class LogsearchExternalServerAuthenticationProvider extends
*/
@SuppressWarnings("static-access")
private boolean isAllowedRole(String responseJson) {
- String allowedRoleList[] = PropertiesUtil
+ String allowedRoleList[] = PropertiesHelper
.getPropertyStringList(ALLOWED_ROLE_PROP);
List<String> values = new ArrayList<String>();
- jsonUtil.getValuesOfKey(responseJson,
+ JSONUtil.getValuesOfKey(responseJson,
PRIVILEGE_INFO.PERMISSION_NAME.toString(), values);
if (values.isEmpty())
return true;
http://git-wip-us.apache.org/repos/asf/ambari/blob/c69016d4/ambari-logsearch/ambari-logsearch-portal/src/main/webapp/META-INF/applicationContext.xml
----------------------------------------------------------------------
diff --git a/ambari-logsearch/ambari-logsearch-portal/src/main/webapp/META-INF/applicationContext.xml b/ambari-logsearch/ambari-logsearch-portal/src/main/webapp/META-INF/applicationContext.xml
index f334e67..b457a1d 100644
--- a/ambari-logsearch/ambari-logsearch-portal/src/main/webapp/META-INF/applicationContext.xml
+++ b/ambari-logsearch/ambari-logsearch-portal/src/main/webapp/META-INF/applicationContext.xml
@@ -37,9 +37,9 @@ http://www.springframework.org/schema/util/spring-util.xsd">
<context:component-scan base-package="org.apache.ambari.logsearch" />
<task:annotation-driven />
- <bean id="xmlPropertyConfigurer" class="org.apache.ambari.logsearch.util.XMLPropertiesUtil" />
+ <bean id="xmlPropertyConfigurer" class="org.apache.ambari.logsearch.common.XMLPropertiesHelper" />
- <bean id="propertyConfigurer" class="org.apache.ambari.logsearch.util.PropertiesUtil">
+ <bean id="propertyConfigurer" class="org.apache.ambari.logsearch.common.PropertiesHelper">
<property name="locations">
<list>
<value>classpath:default.properties</value>
http://git-wip-us.apache.org/repos/asf/ambari/blob/c69016d4/ambari-logsearch/ambari-logsearch-portal/src/test/java/org/apache/ambari/logsearch/dao/SolrDaoBaseTest.java
----------------------------------------------------------------------
diff --git a/ambari-logsearch/ambari-logsearch-portal/src/test/java/org/apache/ambari/logsearch/dao/SolrDaoBaseTest.java b/ambari-logsearch/ambari-logsearch-portal/src/test/java/org/apache/ambari/logsearch/dao/SolrDaoBaseTest.java
index 0ded95d..ba5b074 100644
--- a/ambari-logsearch/ambari-logsearch-portal/src/test/java/org/apache/ambari/logsearch/dao/SolrDaoBaseTest.java
+++ b/ambari-logsearch/ambari-logsearch-portal/src/test/java/org/apache/ambari/logsearch/dao/SolrDaoBaseTest.java
@@ -232,7 +232,6 @@ public class SolrDaoBaseTest {
expectedException.expect(WebApplicationException.class);
SolrDaoBase dao = new SolrDaoBase(LogType.SERVICE) {};
- dao.restErrorUtil = new RESTErrorUtil();
dao.process(new SolrQuery());
}
http://git-wip-us.apache.org/repos/asf/ambari/blob/c69016d4/ambari-logsearch/ambari-logsearch-portal/src/test/java/org/apache/ambari/logsearch/dao/UserConfigSolrDaoTest.java
----------------------------------------------------------------------
diff --git a/ambari-logsearch/ambari-logsearch-portal/src/test/java/org/apache/ambari/logsearch/dao/UserConfigSolrDaoTest.java b/ambari-logsearch/ambari-logsearch-portal/src/test/java/org/apache/ambari/logsearch/dao/UserConfigSolrDaoTest.java
index 5ef286f..dddbf31 100644
--- a/ambari-logsearch/ambari-logsearch-portal/src/test/java/org/apache/ambari/logsearch/dao/UserConfigSolrDaoTest.java
+++ b/ambari-logsearch/ambari-logsearch-portal/src/test/java/org/apache/ambari/logsearch/dao/UserConfigSolrDaoTest.java
@@ -33,20 +33,11 @@ import org.easymock.Capture;
import org.easymock.CaptureType;
import org.easymock.EasyMock;
import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.test.context.ContextConfiguration;
-import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
import junit.framework.Assert;
-@RunWith(SpringJUnit4ClassRunner.class)
-@ContextConfiguration(locations = { "/applicationContext.xml" })
public class UserConfigSolrDaoTest {
- @Autowired
- private UserConfigSolrDao dao;
-
@Test
public void testUserConfigDaoPostConstructor() throws Exception {
SolrClient mockSolrClient = EasyMock.strictMock(SolrClient.class);
@@ -78,6 +69,8 @@ public class UserConfigSolrDaoTest {
EasyMock.expect(mockSolrClient.commit()).andReturn(updateResponse);
EasyMock.replay(mockSolrClient);
+ UserConfigSolrDao dao = new UserConfigSolrDao();
+ dao.postConstructor();
dao.solrClient = mockSolrClient;
dao.isZkConnectString = true;
@@ -119,6 +112,8 @@ public class UserConfigSolrDaoTest {
EasyMock.expect(mockSolrClient.commit()).andReturn(updateResponse);
EasyMock.replay(mockSolrClient);
+ UserConfigSolrDao dao = new UserConfigSolrDao();
+ dao.postConstructor();
dao.solrClient = mockSolrClient;
dao.isZkConnectString = true;
http://git-wip-us.apache.org/repos/asf/ambari/blob/c69016d4/ambari-logsearch/ambari-logsearch-portal/src/test/resources/applicationContext.xml
----------------------------------------------------------------------
diff --git a/ambari-logsearch/ambari-logsearch-portal/src/test/resources/applicationContext.xml b/ambari-logsearch/ambari-logsearch-portal/src/test/resources/applicationContext.xml
index 5e24d88..38437a4 100644
--- a/ambari-logsearch/ambari-logsearch-portal/src/test/resources/applicationContext.xml
+++ b/ambari-logsearch/ambari-logsearch-portal/src/test/resources/applicationContext.xml
@@ -37,9 +37,9 @@ http://www.springframework.org/schema/util/spring-util.xsd">
<context:component-scan base-package="org.apache.ambari.logsearch" />
<task:annotation-driven />
- <bean id="xmlPropertyConfigurer" class="org.apache.ambari.logsearch.util.XMLPropertiesUtil" />
+ <bean id="xmlPropertyConfigurer" class="org.apache.ambari.logsearch.common.XMLPropertiesHelper" />
- <bean id="propertyConfigurer" class="org.apache.ambari.logsearch.util.PropertiesUtil">
+ <bean id="propertyConfigurer" class="org.apache.ambari.logsearch.common.PropertiesHelper">
<property name="locations">
<list>
<value>classpath:default.properties</value>
http://git-wip-us.apache.org/repos/asf/ambari/blob/c69016d4/ambari-logsearch/ambari-logsearch-portal/src/test/resources/applicationContext_testManagers.xml
----------------------------------------------------------------------
diff --git a/ambari-logsearch/ambari-logsearch-portal/src/test/resources/applicationContext_testManagers.xml b/ambari-logsearch/ambari-logsearch-portal/src/test/resources/applicationContext_testManagers.xml
deleted file mode 100644
index f1d1dbe..0000000
--- a/ambari-logsearch/ambari-logsearch-portal/src/test/resources/applicationContext_testManagers.xml
+++ /dev/null
@@ -1,53 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- Licensed to the Apache Software Foundation (ASF) under one or more
- contributor license agreements. See the NOTICE file distributed with
- this work for additional information regarding copyright ownership.
- The ASF licenses this file to You under the Apache License, Version 2.0
- (the "License"); you may not use this file except in compliance with
- the License. You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
--->
-<beans xmlns="http://www.springframework.org/schema/beans"
-xmlns:aop="http://www.springframework.org/schema/aop" xmlns:jee="http://www.springframework.org/schema/jee"
-xmlns:tx="http://www.springframework.org/schema/tx" xmlns:context="http://www.springframework.org/schema/context"
-xmlns:task="http://www.springframework.org/schema/task" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-xmlns:util="http://www.springframework.org/schema/util"
-xsi:schemaLocation="http://www.springframework.org/schema/aop
-http://www.springframework.org/schema/aop/spring-aop-4.2.xsd
-http://www.springframework.org/schema/beans
-http://www.springframework.org/schema/beans/spring-beans-4.2.xsd
-http://www.springframework.org/schema/context
-http://www.springframework.org/schema/context/spring-context-4.2.xsd
-http://www.springframework.org/schema/jee
-http://www.springframework.org/schema/jee/spring-jee-4.2.xsd
-http://www.springframework.org/schema/tx
-http://www.springframework.org/schema/tx/spring-tx-4.2.xsd
-http://www.springframework.org/schema/task
-http://www.springframework.org/schema/task/spring-task-4.2.xsd
-http://www.springframework.org/schema/util
-http://www.springframework.org/schema/util/spring-util.xsd">
-
- <context:component-scan base-package="org.apache.ambari.logsearch.manager.dao, org.apache.ambari.logsearch.util" />
- <task:annotation-driven />
- <bean id="xmlPropertyConfigurer" class="org.apache.ambari.logsearch.util.XMLPropertiesUtil" />
-
- <bean id="propertyConfigurer" class="org.apache.ambari.logsearch.util.PropertiesUtil">
- <property name="locations">
- <list>
- <value>classpath:default.properties</value>
- <value>classpath:logsearch.properties</value>
- <value>classpath:logsearch-admin-site.xml</value>
- </list>
- </property>
- <property name="propertiesPersister" ref="xmlPropertyConfigurer" />
- </bean>
-
-</beans>