+
+ ]]>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/intelliJ/stackoverflow-plugin/resources/so-icon-16x16.png b/intelliJ/stackoverflow-plugin/resources/so-icon-16x16.png
new file mode 100644
index 0000000000..fddbb6b899
Binary files /dev/null and b/intelliJ/stackoverflow-plugin/resources/so-icon-16x16.png differ
diff --git a/intelliJ/stackoverflow-plugin/src/com/baeldung/intellij/stackoverflowplugin/AskQuestionAction.java b/intelliJ/stackoverflow-plugin/src/com/baeldung/intellij/stackoverflowplugin/AskQuestionAction.java
new file mode 100644
index 0000000000..ee122fc2d8
--- /dev/null
+++ b/intelliJ/stackoverflow-plugin/src/com/baeldung/intellij/stackoverflowplugin/AskQuestionAction.java
@@ -0,0 +1,14 @@
+package com.baeldung.intellij.stackoverflowplugin;
+
+import com.intellij.ide.BrowserUtil;
+import com.intellij.openapi.actionSystem.AnAction;
+import com.intellij.openapi.actionSystem.AnActionEvent;
+
+public class AskQuestionAction extends AnAction
+{
+ @Override
+ public void actionPerformed(AnActionEvent e)
+ {
+ BrowserUtil.browse("https://stackoverflow.com/questions/ask");
+ }
+}
diff --git a/intelliJ/stackoverflow-plugin/src/com/baeldung/intellij/stackoverflowplugin/SearchAction.java b/intelliJ/stackoverflow-plugin/src/com/baeldung/intellij/stackoverflowplugin/SearchAction.java
new file mode 100644
index 0000000000..c1f910c656
--- /dev/null
+++ b/intelliJ/stackoverflow-plugin/src/com/baeldung/intellij/stackoverflowplugin/SearchAction.java
@@ -0,0 +1,58 @@
+package com.baeldung.intellij.stackoverflowplugin;
+
+import com.intellij.ide.BrowserUtil;
+import com.intellij.lang.Language;
+import com.intellij.openapi.actionSystem.ActionManager;
+import com.intellij.openapi.actionSystem.AnAction;
+import com.intellij.openapi.actionSystem.AnActionEvent;
+import com.intellij.openapi.actionSystem.CommonDataKeys;
+import com.intellij.openapi.editor.CaretModel;
+import com.intellij.openapi.editor.Editor;
+import com.intellij.psi.PsiFile;
+
+public class SearchAction extends AnAction
+{
+ /**
+ * Convert selected text to a URL friendly string.
+ * @param e
+ */
+ @Override
+ public void actionPerformed(AnActionEvent e)
+ {
+ final Editor editor = e.getRequiredData(CommonDataKeys.EDITOR);
+ CaretModel caretModel = editor.getCaretModel();
+
+ // For searches from the editor, we should also get file type information
+ // to help add scope to the search using the Stack overflow search syntax.
+ //
+ // https://stackoverflow.com/help/searching
+
+ String languageTag = "";
+ PsiFile file = e.getData(CommonDataKeys.PSI_FILE);
+ if(file != null)
+ {
+ Language lang = e.getData(CommonDataKeys.PSI_FILE).getLanguage();
+ languageTag = "+[" + lang.getDisplayName().toLowerCase() + "]";
+ }
+
+ // The update method below is only called periodically so need
+ // to be careful to check for selected text
+ if(caretModel.getCurrentCaret().hasSelection())
+ {
+ String query = caretModel.getCurrentCaret().getSelectedText().replace(' ', '+') + languageTag;
+ BrowserUtil.browse("https://stackoverflow.com/search?q=" + query);
+ }
+ }
+
+ /**
+ * Only make this action visible when text is selected.
+ * @param e
+ */
+ @Override
+ public void update(AnActionEvent e)
+ {
+ final Editor editor = e.getRequiredData(CommonDataKeys.EDITOR);
+ CaretModel caretModel = editor.getCaretModel();
+ e.getPresentation().setEnabledAndVisible(caretModel.getCurrentCaret().hasSelection());
+ }
+}
diff --git a/out/production/generated-sources8/src.main.resources.reladomo.ReladomoClassList.xml.log b/out/production/generated-sources8/src.main.resources.reladomo.ReladomoClassList.xml.log
deleted file mode 100644
index 0bd4e29a45..0000000000
--- a/out/production/generated-sources8/src.main.resources.reladomo.ReladomoClassList.xml.log
+++ /dev/null
@@ -1,2 +0,0 @@
-f5a6ba3b942a82fcbfb72e61502d5c30
-9201deea
diff --git a/out/production/introduction/views/index.scala.html b/out/production/introduction/views/index.scala.html
deleted file mode 100644
index 4539f5a10b..0000000000
--- a/out/production/introduction/views/index.scala.html
+++ /dev/null
@@ -1,20 +0,0 @@
-@*
- * This template takes a single argument, a String containing a
- * message to display.
- *@
-@(message: String)
-
-@*
- * Call the `main` template with two arguments. The first
- * argument is a `String` with the title of the page, the second
- * argument is an `Html` object containing the body of the page.
- *@
-@main("Welcome to Play") {
-
- @*
- * Get an `Html` object by calling the built-in Play welcome
- * template and passing a `String` message.
- *@
- @play20.welcome(message, style = "Java")
-
-}
diff --git a/out/production/introduction/views/main.scala.html b/out/production/introduction/views/main.scala.html
deleted file mode 100644
index 9414f4be6e..0000000000
--- a/out/production/introduction/views/main.scala.html
+++ /dev/null
@@ -1,23 +0,0 @@
-@*
- * This template is called from the `index` template. This template
- * handles the rendering of the page header and body tags. It takes
- * two arguments, a `String` for the title of the page and an `Html`
- * object to insert into the body of the page.
- *@
-@(title: String)(content: Html)
-
-
-
-
- @* Here's where we render the page title `String`. *@
- @title
-
-
-
-
-
- @* And here's where we render the `Html` object containing
- * the page content. *@
- @content
-
-
diff --git a/out/production/main122/.gitignore b/out/production/main122/.gitignore
deleted file mode 100644
index 83c05e60c8..0000000000
--- a/out/production/main122/.gitignore
+++ /dev/null
@@ -1,13 +0,0 @@
-*.class
-
-#folders#
-/target
-/neoDb*
-/data
-/src/main/webapp/WEB-INF/classes
-*/META-INF/*
-
-# Packaged files #
-*.jar
-*.war
-*.ear
\ No newline at end of file
diff --git a/out/production/main151/com/baeldung/.gitignore b/out/production/main151/com/baeldung/.gitignore
deleted file mode 100644
index 83c05e60c8..0000000000
--- a/out/production/main151/com/baeldung/.gitignore
+++ /dev/null
@@ -1,13 +0,0 @@
-*.class
-
-#folders#
-/target
-/neoDb*
-/data
-/src/main/webapp/WEB-INF/classes
-*/META-INF/*
-
-# Packaged files #
-*.jar
-*.war
-*.ear
\ No newline at end of file
diff --git a/out/production/main151/com/baeldung/README.md b/out/production/main151/com/baeldung/README.md
deleted file mode 100644
index 51809b2882..0000000000
--- a/out/production/main151/com/baeldung/README.md
+++ /dev/null
@@ -1,2 +0,0 @@
-### Relevant Articles:
-- [SHA-256 Hashing in Java](http://www.baeldung.com/sha-256-hashing-java)
diff --git a/out/production/main155/com/baeldung/git/README.md b/out/production/main155/com/baeldung/git/README.md
deleted file mode 100644
index 7e6a597c28..0000000000
--- a/out/production/main155/com/baeldung/git/README.md
+++ /dev/null
@@ -1,2 +0,0 @@
-### Relevant Articles:
-- [Injecting Git Information Into Spring](http://www.baeldung.com/spring-git-information)
diff --git a/out/production/main173/log4j.properties b/out/production/main173/log4j.properties
deleted file mode 100644
index 5fe42d854c..0000000000
--- a/out/production/main173/log4j.properties
+++ /dev/null
@@ -1,9 +0,0 @@
-# Set root logger level to DEBUG and its only appender to A1.
-log4j.rootLogger=DEBUG, A1
-
-# A1 is set to be a ConsoleAppender.
-log4j.appender.A1=org.apache.log4j.ConsoleAppender
-
-# A1 uses PatternLayout.
-log4j.appender.A1.layout=org.apache.log4j.PatternLayout
-log4j.appender.A1.layout.ConversionPattern=%-4r [%t] %-5p %c %x - %m%n
diff --git a/out/production/main180/com/baeldung/javaeeannotations/JavaEEAnnotationsSample/README.txt b/out/production/main180/com/baeldung/javaeeannotations/JavaEEAnnotationsSample/README.txt
deleted file mode 100644
index bffe24e485..0000000000
--- a/out/production/main180/com/baeldung/javaeeannotations/JavaEEAnnotationsSample/README.txt
+++ /dev/null
@@ -1,76 +0,0 @@
-About the application
----------------------
-This application demonstrates the usage of JavaEE Web Annotations.
-
-
-Contents of the application
----------------------------
-1. AccountServlet.java - Demonstrates the @WebServlet and @ServletSecurity annotation.
-
-NOTES: @WebServlet annotation designates the AccountServlet class as a Servlet component.
- The usage of its parameters 'urlPatterns' & 'initParams' can be observed.
- An initialization parameter 'type' is being set to denote the type of the bank account.
-
- @ServletSecurity annotation imposes security constraints on the AccountServlet based on
- the tomcat-users.xml.
-
- This code assumes that your tomcat-users.xml looks as follows:
-
-
-
-
-
-
-
-
-N.B : To see @ServletSecurity annotation in action, please uncomment the annotation code
- for @ServletSecurity.
-
-
-2. BankAppServletContextListener.java - Demonstrates the @WebListener annotation for denoting a class as a ServletContextListener.
-
-NOTES: Sets a Servlet context attribute ATTR_DEFAULT_LANGUAGE to 'english' on web application start up,
- which can then be used throughout the application.
-
-
-3. LogInFilter.java - Demonstrates the @WebFilter annotation.
-
-NOTES: @WebFilter annotation designates the LogInFilter class as a Filter component.
- It filters all requests to the bank account servlet and redirects them to
- the login page.
-
-N.B : To see @WebFilter annotation in action, please uncomment the annotation code for @WebFilter.
-
-
-4. UploadCustomerDocumentsServlet.java - Demonstrates the @MultipartConfig annotation.
-
-NOTES: @MultipartConfig anotation designates the UploadCustomerDocumentsServlet Servlet component,
- to handle multipart/form-data requests.
- To see it in action, deploy the web application an access the url: http://:/JavaEEAnnotationsSample/upload.jsp
- Once you upload a file from here, it will get uploaded to D:/custDocs (assuming such a folder exists).
-
-
-5. index.jsp - This is the welcome page.
-
-NOTES: You can enter a deposit amount here and click on the 'Deposit' button to see the AccountServlet in action.
-
-6. login.jsp - All requests to the AccountServlet are redirected to this page, if the LogInFilter is imposed.
-
-7. upload.jsp - Demonstrates the usage of handling multipart/form-data requests by the UploadCustomerDocumentsServlet.
-
-
-Building and Running the application
-------------------------------------
-To build the application:
-
-1. Open the project in eclipse
-2. Right click on it in eclispe and choose Run As > Maven build
-3. Give 'clean install' under Goals
-4. This should build the WAR file of the application
-
-To run the application:
-
-1. Right click on the project
-2. Run as > Run on Server
-3. This will start you Tomcat server and deploy the application (Provided that you have configured Tomcat in your eclipse)
-4. You should now be able to access the url : http://:/JavaEEAnnotationsSample
diff --git a/out/production/main180/com/baeldung/javaeeannotations/JavaEEAnnotationsSample/pom.xml b/out/production/main180/com/baeldung/javaeeannotations/JavaEEAnnotationsSample/pom.xml
deleted file mode 100644
index 25f901459c..0000000000
--- a/out/production/main180/com/baeldung/javaeeannotations/JavaEEAnnotationsSample/pom.xml
+++ /dev/null
@@ -1,57 +0,0 @@
-
- 4.0.0
- com.baeldung.javaeeannotations
- JavaEEAnnotationsSample
- 0.0.1-SNAPSHOT
- war
- JavaEEAnnotationsSample
- JavaEEAnnotationsSample
-
-
-
-
- javax.annotation
- javax.annotation-api
- ${annotation-api.version}
-
-
-
- javax.servlet
- javax.servlet-api
- ${servlet.version}
-
-
-
- javax.servlet.jsp
- jsp-api
- ${jsp.version}
-
-
-
-
-
-
-
-
- org.apache.maven.plugins
- maven-war-plugin
- ${maven-war-plugin.version}
-
- src/main/webapp
- SpringFieldConstructorInjection
- false
-
-
-
-
- JavaEEAnnotationsSample
-
-
-
- 1.3
- 3.1.0
- 2.1
- 2.4
-
-
\ No newline at end of file
diff --git a/out/production/main180/com/baeldung/javaeeannotations/JavaEEAnnotationsSample/src/main/webapp/WEB-INF/web.xml b/out/production/main180/com/baeldung/javaeeannotations/JavaEEAnnotationsSample/src/main/webapp/WEB-INF/web.xml
deleted file mode 100644
index a92885ec11..0000000000
--- a/out/production/main180/com/baeldung/javaeeannotations/JavaEEAnnotationsSample/src/main/webapp/WEB-INF/web.xml
+++ /dev/null
@@ -1,10 +0,0 @@
-
-
-
- BASIC
- default
-
-
diff --git a/out/production/main180/com/baeldung/javaeeannotations/JavaEEAnnotationsSample/src/main/webapp/index.jsp b/out/production/main180/com/baeldung/javaeeannotations/JavaEEAnnotationsSample/src/main/webapp/index.jsp
deleted file mode 100644
index c49dec859e..0000000000
--- a/out/production/main180/com/baeldung/javaeeannotations/JavaEEAnnotationsSample/src/main/webapp/index.jsp
+++ /dev/null
@@ -1,16 +0,0 @@
-<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
- pageEncoding="ISO-8859-1"%>
-
-
-
-
-My Account
-
-
-
-
-
\ No newline at end of file
diff --git a/out/production/main180/com/baeldung/javaeeannotations/JavaEEAnnotationsSample/src/main/webapp/login.jsp b/out/production/main180/com/baeldung/javaeeannotations/JavaEEAnnotationsSample/src/main/webapp/login.jsp
deleted file mode 100644
index 6892cb0420..0000000000
--- a/out/production/main180/com/baeldung/javaeeannotations/JavaEEAnnotationsSample/src/main/webapp/login.jsp
+++ /dev/null
@@ -1,12 +0,0 @@
-<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
- pageEncoding="ISO-8859-1"%>
-
-
-
-
-Login
-
-
-Login Here...
-
-
\ No newline at end of file
diff --git a/out/production/main180/com/baeldung/javaeeannotations/JavaEEAnnotationsSample/src/main/webapp/upload.jsp b/out/production/main180/com/baeldung/javaeeannotations/JavaEEAnnotationsSample/src/main/webapp/upload.jsp
deleted file mode 100644
index 3601322ef0..0000000000
--- a/out/production/main180/com/baeldung/javaeeannotations/JavaEEAnnotationsSample/src/main/webapp/upload.jsp
+++ /dev/null
@@ -1,16 +0,0 @@
-<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
- pageEncoding="ISO-8859-1"%>
-
-
-
-
-Insert title here
-
-
-
-
-
\ No newline at end of file
diff --git a/out/production/main180/com/baeldung/jaxws/wsdl/employeeservicetopdown.wsdl b/out/production/main180/com/baeldung/jaxws/wsdl/employeeservicetopdown.wsdl
deleted file mode 100644
index 426717f90e..0000000000
--- a/out/production/main180/com/baeldung/jaxws/wsdl/employeeservicetopdown.wsdl
+++ /dev/null
@@ -1,42 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/out/production/main195/com/baeldung/java/nio/selector/README.md b/out/production/main195/com/baeldung/java/nio/selector/README.md
deleted file mode 100644
index b28aae1397..0000000000
--- a/out/production/main195/com/baeldung/java/nio/selector/README.md
+++ /dev/null
@@ -1,2 +0,0 @@
-###Relevant Articles:
-- [Introduction to the Java NIO Selector](http://www.baeldung.com/java-nio-selector)
diff --git a/out/production/main216/com/baeldung/googlehttpclientguide/logging.properties b/out/production/main216/com/baeldung/googlehttpclientguide/logging.properties
deleted file mode 100644
index 02489378df..0000000000
--- a/out/production/main216/com/baeldung/googlehttpclientguide/logging.properties
+++ /dev/null
@@ -1,10 +0,0 @@
-# Properties file which configures the operation of the JDK logging facility.
-# The system will look for this config file to be specified as a system property:
-# -Djava.util.logging.config.file=${project_loc:dailymotion-simple-cmdline-sample}/logging.properties
-
-# Set up the console handler (uncomment "level" to show more fine-grained messages)
-handlers = java.util.logging.ConsoleHandler
-java.util.logging.ConsoleHandler.level = ALL
-
-# Set up logging of HTTP requests and responses (uncomment "level" to show)
-com.google.api.client.http.level = ALL
diff --git a/out/production/main231/com/baeldung/wicket/examples/HelloWorld.html b/out/production/main231/com/baeldung/wicket/examples/HelloWorld.html
deleted file mode 100644
index 497e98e01a..0000000000
--- a/out/production/main231/com/baeldung/wicket/examples/HelloWorld.html
+++ /dev/null
@@ -1,52 +0,0 @@
-
-
-
-
-Wicket Intro Examples
-
-
-
-