diff --git a/${webappDirectory}/WEB-INF/classes/META-INF/MANIFEST.MF b/${webappDirectory}/WEB-INF/classes/META-INF/MANIFEST.MF deleted file mode 100644 index 1819f59..0000000 --- a/${webappDirectory}/WEB-INF/classes/META-INF/MANIFEST.MF +++ /dev/null @@ -1,13 +0,0 @@ -Manifest-Version: 1.0 -Build-Jdk-Spec: 15 -Specification-Title: gCube Session Checker Widget -Specification-Version: 1.2 -Implementation-Title: gCube Session Checker Widget -Implementation-Version: 1.2.0-SNAPSHOT -Build-Time: 20230608-121104 -Created-By: Maven Integration for Eclipse -SCM-Branch: -SCM-Revision: -SCM-Revision-URL: https://code-repo.d4science.org/gCubeSystem/session-ch - ecker/commit/${buildNumber} - diff --git a/${webappDirectory}/WEB-INF/classes/META-INF/maven/org.gcube.portlets.widgets/session-checker/pom.properties b/${webappDirectory}/WEB-INF/classes/META-INF/maven/org.gcube.portlets.widgets/session-checker/pom.properties deleted file mode 100644 index 32f76ef..0000000 --- a/${webappDirectory}/WEB-INF/classes/META-INF/maven/org.gcube.portlets.widgets/session-checker/pom.properties +++ /dev/null @@ -1,7 +0,0 @@ -#Generated by Maven Integration for Eclipse -#Thu Jun 08 14:14:48 CEST 2023 -m2e.projectLocation=/Users/massi/workspace/session-checker-widget -m2e.projectName=session-checker-widget -groupId=org.gcube.portlets.widgets -artifactId=session-checker -version=1.2.0-SNAPSHOT diff --git a/${webappDirectory}/WEB-INF/classes/META-INF/maven/org.gcube.portlets.widgets/session-checker/pom.xml b/${webappDirectory}/WEB-INF/classes/META-INF/maven/org.gcube.portlets.widgets/session-checker/pom.xml deleted file mode 100644 index 6c22556..0000000 --- a/${webappDirectory}/WEB-INF/classes/META-INF/maven/org.gcube.portlets.widgets/session-checker/pom.xml +++ /dev/null @@ -1,195 +0,0 @@ - - - 4.0.0 - - maven-parent - org.gcube.tools - 1.1.0 - - - - org.gcube.portlets.widgets - session-checker - jar - 1.2.0-SNAPSHOT - gCube Session Checker Widget - - gCube Session Checker Widget is a GWT Widget that can be used to automatically check if the session expired. - - - scm:git:https://code-repo.d4science.org/gCubeSystem/${project.artifactId}.git - scm:git:https://code-repo.d4science.org/gCubeSystem/${project.artifactId}.git - https://code-repo.d4science.org/gCubeSystem/${project.artifactId} - - - - 2.7.0 - distro - 6.2.5 - 1.7 - 1.7 - UTF-8 - UTF-8 - - - - - org.gcube.distribution - maven-portal-bom - LATEST - pom - import - - - - - - - com.google.gwt - gwt-user - ${gwtVersion} - provided - - - org.gcube.portal - custom-portal-handler - [2.0.0-SNAPSHOT,3.0.0-SNAPSHOT) - provided - - - org.gcube.portlets.user - gcube-widgets - [2.0.0-SNAPSHOT,3.0.0-SNAPSHOT) - - - - org.gcube.applicationsupportlayer - aslcore - provided - - - com.liferay.portal - portal-service - ${liferay.version} - provided - - - - - ${webappDirectory}/WEB-INF/classes - - - src/main/java - - **/*.* - - - - src/main/resources - - **/*.* - - - - - - - org.codehaus.mojo - gwt-maven-plugin - ${gwtVersion} - - - - org.gcube.portlets.widgets.sessionchecker.client.SessionChecker - - - - - - - - - - SessionChecker.html - ${webappDirectory} - - - - - - org.apache.maven.plugins - maven-war-plugin - 2.1.1 - - - compile - - exploded - - - - - ${webappDirectory} - - - - org.apache.maven.plugins - maven-compiler-plugin - 2.3.2 - - 1.7 - 1.7 - - - - - org.apache.maven.plugins - maven-assembly-plugin - 2.2 - - - ${distroDirectory}/descriptor.xml - - - - - servicearchive - install - - single - - - - - - org.apache.maven.plugins - maven-resources-plugin - 2.5 - - - copy-profile - install - - copy-resources - - - target - - - ${distroDirectory} - true - - profile.xml - - - - - - - - - - - \ No newline at end of file diff --git a/${webappDirectory}/WEB-INF/classes/org/gcube/portlets/widgets/sessionchecker/SessionChecker.gwt.xml b/${webappDirectory}/WEB-INF/classes/org/gcube/portlets/widgets/sessionchecker/SessionChecker.gwt.xml deleted file mode 100644 index 068a33b..0000000 --- a/${webappDirectory}/WEB-INF/classes/org/gcube/portlets/widgets/sessionchecker/SessionChecker.gwt.xml +++ /dev/null @@ -1,14 +0,0 @@ - - - - - - - - - - - - - - diff --git a/${webappDirectory}/WEB-INF/classes/org/gcube/portlets/widgets/sessionchecker/client/CheckSession.java b/${webappDirectory}/WEB-INF/classes/org/gcube/portlets/widgets/sessionchecker/client/CheckSession.java deleted file mode 100644 index 0a048b3..0000000 --- a/${webappDirectory}/WEB-INF/classes/org/gcube/portlets/widgets/sessionchecker/client/CheckSession.java +++ /dev/null @@ -1,222 +0,0 @@ -package org.gcube.portlets.widgets.sessionchecker.client; - -import java.util.HashMap; - -import org.gcube.portlets.user.gcubewidgets.client.popup.GCubeDialog; -import org.gcube.portlets.widgets.sessionchecker.client.bundle.CheckSessionBundle; -import org.gcube.portlets.widgets.sessionchecker.client.elements.Div; -import org.gcube.portlets.widgets.sessionchecker.client.event.SessionTimeoutEvent; -import org.gcube.portlets.widgets.sessionchecker.shared.SessionInfoBean; - -import com.google.gwt.core.client.GWT; -import com.google.gwt.dom.client.Style.Display; -import com.google.gwt.event.shared.HandlerManager; -import com.google.gwt.user.client.Timer; -import com.google.gwt.user.client.Window; -import com.google.gwt.user.client.rpc.AsyncCallback; -import com.google.gwt.user.client.ui.HTML; -import com.google.gwt.user.client.ui.HasAlignment; -import com.google.gwt.user.client.ui.RootPanel; -import com.google.gwt.user.client.ui.VerticalPanel; -@Deprecated -public class CheckSession { - private final int MILLI_SECONDS = 55 * 1000; //(milli)seconds - - //for css and images - private static CheckSessionBundle images = GWT.create(CheckSessionBundle.class); - - static { - CheckSessionBundle.INSTANCE.css().ensureInjected(); - } - /** - * the eventbus where to launch the events - */ - private HandlerManager eventBus = null; - /** - * Create a remote service proxy to talk to the server-side Greeting service. - */ - private final SessionCheckerServiceAsync checkerService = GWT.create(SessionCheckerService.class); - - private String username; - private String scope; - private Timer t; - - //we give the user the possibility to show the dialog or not - private boolean showSessionExpiredDialog = true; - - //needed to mask the page when session id up! - private Div maskDiv = new Div(); - - private static CheckSession singleton; - /** - * use this method if you want to get an event when session expires - * @param eventBus your GWT webapp instance of {@link HandlerManager} - */ - public static CheckSession getInstance(HandlerManager eventBus) { - if (singleton == null) - singleton = new CheckSession(eventBus); - return singleton; - } - /** - * method with no events launching when session expires - */ - public static CheckSession getInstance() { - if (singleton == null) - singleton = new CheckSession(); - return singleton; - } - /** - * use this constructor if you want to get an event when session expires - * @param eventBus GWT webapp instance of {@link HandlerManager} - */ - private CheckSession(HandlerManager eventBus) { - this(); - this.eventBus = eventBus; - } - /** - * constructor with no events launching when session expires - */ - private CheckSession() { - - addMaskDiv2DOM(); - maskDiv.setStyleName("div-mask"); - - //polling timer - t = new Timer() { - @Override - public void run() { - checkerService.checkSession(new AsyncCallback() { - @Override - public void onSuccess(SessionInfoBean result) { - if (result != null) { - - username = result.getUsername(); - scope = result.getScope(); - boolean userValid = ( username != null) ? true : false; - boolean scopeValid = (scope != null) ? true : false; - - if (! (userValid && scopeValid) ) { //if session expired - mask(true); - stopPolling(); - if (showSessionExpiredDialog) { - showLogoutDialog(); - } else { - if (eventBus == null) - throw new NullPointerException("Hey, it seems you chose to handle yourself session expiration " - + "but also not to get informed about it (eventbus is null) what's the point then?"); - } - if (eventBus != null) { - eventBus.fireEvent(new SessionTimeoutEvent(result)); - } - } - else if (result.isDevMode()) { - GWT.log("Stopping polling because i think you're in development mode and not in a real portal"); - stopPolling(); - } - } - else { - GWT.log("result null"); - stopPolling(); - } - } - @Override - public void onFailure(Throwable caught) { - mask(true); - stopPolling(); - showLogoutDialog(); - } - }); - } - }; - } - - private void addMaskDiv2DOM() { - RootPanel.get().insert(maskDiv, 0); - } - /** - * set visible the masking div setting/unsetting css display property - * @param mask - */ - private void mask(boolean mask) { - GWT.log("Masking"); - if (mask) - maskDiv.getElement().getStyle().setDisplay(Display.BLOCK); - else - maskDiv.getElement().getStyle().setDisplay(Display.NONE); - } - /** - * shows the logout dialog - */ - public static void showLogoutDialog() { - showLogoutDialog(null); - } - - /** - * shows the logout dialog with redirection appended with parametersMap - * @param paramsMap a map containing the attrs and related values of what you want after the ? - * e.g. aUrl?name=foo&lastname=fie - */ - public static void showLogoutDialog(HashMap paramsMap) { - String href = "javascript:location.reload();"; - - String params = "?"; - if (! (paramsMap == null || paramsMap.isEmpty()) ) { - for (String attr : paramsMap.keySet()) { - params += attr+"="+paramsMap.get(attr)+"&"; - } - - href = Window.Location.getHref(); - if (Window.Location.getHref().contains("?")) - href = href.substring(0, href.indexOf("?")); - - href += params; - } - - GCubeDialog dlg = new GCubeDialog(); - dlg.setText("Your Session Expired!"); - - VerticalPanel topPanel = new VerticalPanel(); - topPanel.setPixelSize(420, 290); - - topPanel.setHorizontalAlignment(HasAlignment.ALIGN_CENTER); - - HTML toShow = new HTML("
" - + "" - + "
" - + "Please try reload this page or logout
"); - - - topPanel.add(toShow); - dlg.add(topPanel); - dlg.center(); - dlg.show(); - } - - - public String getUsername() { - return username; - } - - public String getScope() { - return scope; - } - /** - * use to start checking if the session expired - */ - public void startPolling() { - t.scheduleRepeating(MILLI_SECONDS); - } - /** - * use to stop checking if the session expired - */ - public void stopPolling() { - t.cancel(); - } - - public boolean isShowSessionExpiredDialog() { - return showSessionExpiredDialog; - } - public void setShowSessionExpiredDialog(boolean showSessionExpiredDialog) { - this.showSessionExpiredDialog = showSessionExpiredDialog; - } -} diff --git a/${webappDirectory}/WEB-INF/classes/org/gcube/portlets/widgets/sessionchecker/client/SessionChecker.java b/${webappDirectory}/WEB-INF/classes/org/gcube/portlets/widgets/sessionchecker/client/SessionChecker.java deleted file mode 100644 index 16c2f73..0000000 --- a/${webappDirectory}/WEB-INF/classes/org/gcube/portlets/widgets/sessionchecker/client/SessionChecker.java +++ /dev/null @@ -1,13 +0,0 @@ -package org.gcube.portlets.widgets.sessionchecker.client; - -import com.google.gwt.core.client.EntryPoint; - -/** - * Entry point classes define onModuleLoad(). - */ -public class SessionChecker implements EntryPoint { - - public void onModuleLoad() { - //CheckSession.getInstance().startPolling(); - } -} diff --git a/${webappDirectory}/WEB-INF/classes/org/gcube/portlets/widgets/sessionchecker/client/SessionCheckerService.java b/${webappDirectory}/WEB-INF/classes/org/gcube/portlets/widgets/sessionchecker/client/SessionCheckerService.java deleted file mode 100644 index 9f78a55..0000000 --- a/${webappDirectory}/WEB-INF/classes/org/gcube/portlets/widgets/sessionchecker/client/SessionCheckerService.java +++ /dev/null @@ -1,14 +0,0 @@ -package org.gcube.portlets.widgets.sessionchecker.client; - -import org.gcube.portlets.widgets.sessionchecker.shared.SessionInfoBean; - -import com.google.gwt.user.client.rpc.RemoteService; -import com.google.gwt.user.client.rpc.RemoteServiceRelativePath; - -/** - * The client side stub for the RPC service. - */ -@RemoteServiceRelativePath("checksession") -public interface SessionCheckerService extends RemoteService { - SessionInfoBean checkSession(); -} diff --git a/${webappDirectory}/WEB-INF/classes/org/gcube/portlets/widgets/sessionchecker/client/SessionCheckerServiceAsync.java b/${webappDirectory}/WEB-INF/classes/org/gcube/portlets/widgets/sessionchecker/client/SessionCheckerServiceAsync.java deleted file mode 100644 index 2c049dc..0000000 --- a/${webappDirectory}/WEB-INF/classes/org/gcube/portlets/widgets/sessionchecker/client/SessionCheckerServiceAsync.java +++ /dev/null @@ -1,11 +0,0 @@ -package org.gcube.portlets.widgets.sessionchecker.client; - -import org.gcube.portlets.widgets.sessionchecker.shared.SessionInfoBean; - -import com.google.gwt.user.client.rpc.AsyncCallback; - -public interface SessionCheckerServiceAsync { - - void checkSession(AsyncCallback callback); - -} diff --git a/${webappDirectory}/WEB-INF/classes/org/gcube/portlets/widgets/sessionchecker/client/bundle/CheckSession.css b/${webappDirectory}/WEB-INF/classes/org/gcube/portlets/widgets/sessionchecker/client/bundle/CheckSession.css deleted file mode 100644 index 58746ee..0000000 --- a/${webappDirectory}/WEB-INF/classes/org/gcube/portlets/widgets/sessionchecker/client/bundle/CheckSession.css +++ /dev/null @@ -1,11 +0,0 @@ -@external div-mask; - -.div-mask { - position: fixed; - width: 100%; - height: 100%; - background-color: rgba(0,0,0,.2); - top: 0; - left: 0; - display: none; -} \ No newline at end of file diff --git a/${webappDirectory}/WEB-INF/classes/org/gcube/portlets/widgets/sessionchecker/client/bundle/CheckSessionBundle.java b/${webappDirectory}/WEB-INF/classes/org/gcube/portlets/widgets/sessionchecker/client/bundle/CheckSessionBundle.java deleted file mode 100644 index 86603b8..0000000 --- a/${webappDirectory}/WEB-INF/classes/org/gcube/portlets/widgets/sessionchecker/client/bundle/CheckSessionBundle.java +++ /dev/null @@ -1,17 +0,0 @@ -package org.gcube.portlets.widgets.sessionchecker.client.bundle; - -import com.google.gwt.core.client.GWT; -import com.google.gwt.resources.client.ClientBundle; -import com.google.gwt.resources.client.CssResource; -import com.google.gwt.resources.client.ImageResource; - -public interface CheckSessionBundle extends ClientBundle { - - public static final CheckSessionBundle INSTANCE = GWT.create(CheckSessionBundle.class); - - @Source("CheckSession.css") - public CssResource css(); - - @Source("session_expired.jpg") - ImageResource expired(); -} diff --git a/${webappDirectory}/WEB-INF/classes/org/gcube/portlets/widgets/sessionchecker/client/bundle/session_expired.jpg b/${webappDirectory}/WEB-INF/classes/org/gcube/portlets/widgets/sessionchecker/client/bundle/session_expired.jpg deleted file mode 100644 index 5b66306..0000000 Binary files a/${webappDirectory}/WEB-INF/classes/org/gcube/portlets/widgets/sessionchecker/client/bundle/session_expired.jpg and /dev/null differ diff --git a/${webappDirectory}/WEB-INF/classes/org/gcube/portlets/widgets/sessionchecker/client/elements/Div.java b/${webappDirectory}/WEB-INF/classes/org/gcube/portlets/widgets/sessionchecker/client/elements/Div.java deleted file mode 100644 index 04eab23..0000000 --- a/${webappDirectory}/WEB-INF/classes/org/gcube/portlets/widgets/sessionchecker/client/elements/Div.java +++ /dev/null @@ -1,27 +0,0 @@ -package org.gcube.portlets.widgets.sessionchecker.client.elements; - -import com.google.gwt.user.client.DOM; -import com.google.gwt.user.client.ui.HTML; -import com.google.gwt.user.client.ui.HasText; - -/** - * - * @author Massimiliano Assante, ISTI-CNR - * @version 0.1 Sep 2012 - * - */ -public class Div extends HTML implements HasText { - - public Div() { - super(DOM.createElement("div")); - } - - public Div(String text) { - this(); - setText(text); - } - - public void setAttribute(String name, String value) { - super.getElement().setAttribute(name, value); - } -} diff --git a/${webappDirectory}/WEB-INF/classes/org/gcube/portlets/widgets/sessionchecker/client/event/SessionTimeoutEvent.java b/${webappDirectory}/WEB-INF/classes/org/gcube/portlets/widgets/sessionchecker/client/event/SessionTimeoutEvent.java deleted file mode 100644 index 1a880d1..0000000 --- a/${webappDirectory}/WEB-INF/classes/org/gcube/portlets/widgets/sessionchecker/client/event/SessionTimeoutEvent.java +++ /dev/null @@ -1,31 +0,0 @@ -package org.gcube.portlets.widgets.sessionchecker.client.event; - -import org.gcube.portlets.widgets.sessionchecker.shared.SessionInfoBean; - -import com.google.gwt.event.shared.GwtEvent; - - - -public class SessionTimeoutEvent extends GwtEvent { - public static Type TYPE = new Type(); - - private SessionInfoBean sessionInfo; - - public SessionTimeoutEvent(SessionInfoBean sessionInfo) { - this.sessionInfo = sessionInfo; - } - - public SessionInfoBean getSessionInfo() { - return sessionInfo; - } - - @Override - public Type getAssociatedType() { - return TYPE; - } - - @Override - protected void dispatch(SessionTimoutEventHandler handler) { - handler.onSessionExpiration(this); - } -} diff --git a/${webappDirectory}/WEB-INF/classes/org/gcube/portlets/widgets/sessionchecker/client/event/SessionTimoutEventHandler.java b/${webappDirectory}/WEB-INF/classes/org/gcube/portlets/widgets/sessionchecker/client/event/SessionTimoutEventHandler.java deleted file mode 100644 index 46c0fce..0000000 --- a/${webappDirectory}/WEB-INF/classes/org/gcube/portlets/widgets/sessionchecker/client/event/SessionTimoutEventHandler.java +++ /dev/null @@ -1,7 +0,0 @@ -package org.gcube.portlets.widgets.sessionchecker.client.event; - -import com.google.gwt.event.shared.EventHandler; - -public interface SessionTimoutEventHandler extends EventHandler { - void onSessionExpiration(SessionTimeoutEvent event); -} diff --git a/${webappDirectory}/WEB-INF/classes/org/gcube/portlets/widgets/sessionchecker/server/SessionCheckerServiceImpl.java b/${webappDirectory}/WEB-INF/classes/org/gcube/portlets/widgets/sessionchecker/server/SessionCheckerServiceImpl.java deleted file mode 100644 index 986ee02..0000000 --- a/${webappDirectory}/WEB-INF/classes/org/gcube/portlets/widgets/sessionchecker/server/SessionCheckerServiceImpl.java +++ /dev/null @@ -1,100 +0,0 @@ -package org.gcube.portlets.widgets.sessionchecker.server; - -import java.util.Date; - -import org.gcube.application.framework.core.session.ASLSession; -import org.gcube.application.framework.core.session.SessionManager; -import org.gcube.portal.custom.scopemanager.scopehelper.ScopeHelper; -import org.gcube.portlets.widgets.sessionchecker.client.SessionCheckerService; -import org.gcube.portlets.widgets.sessionchecker.shared.SessionInfoBean; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; - -import com.google.gwt.user.server.rpc.RemoteServiceServlet; -import com.liferay.portal.service.UserLocalServiceUtil; - -/** - * The server side implementation of the RPC service. - */ -@SuppressWarnings("serial") -@Deprecated -public class SessionCheckerServiceImpl extends RemoteServiceServlet implements SessionCheckerService { - - private static final Logger _log = LoggerFactory.getLogger(SessionCheckerServiceImpl.class); - - - /** - * the current ASLSession - * @return . - */ - private ASLSession getASLSession() { - String sessionID = this.getThreadLocalRequest().getSession().getId(); - String user = (String) this.getThreadLocalRequest().getSession().getAttribute(ScopeHelper.USERNAME_ATTRIBUTE); - SessionManager manager = SessionManager.getInstance(); - ASLSession toReturn = manager.getASLSession(sessionID, user); - return toReturn; - } - - @Override - public SessionInfoBean checkSession() { - SessionManager manager = null; - try { - manager = SessionManager.getInstance(); - } - catch (NullPointerException e) { - _log.error("SessionManager#getInstance null returning session expired"); - return new SessionInfoBean("",""); //tells session expired - } - if (manager == null) { - _log.warn("Liferay Portal Detected but session Expired"); - return new SessionInfoBean("",""); //tells session expired - } - - - ASLSession session = null; - try { - session = getASLSession(); - if (session == null || session.getUsername() == null) { - UserLocalServiceUtil.getService(); - _log.warn("Liferay Portal Detected but session Expired"); - return new SessionInfoBean(null,null); //tells session expired - } - } - catch (Exception e) { - if (isWithinPortal()) { - _log.warn("Liferay Portal Detected but session Expired"); - return new SessionInfoBean(null,null); //tells session expired - } - else { - _log.warn("Stopping session polling as i think you are in development mode"); - return new SessionInfoBean("","", true); //tells that you are in development mode - } - } - String user = session.getUsername(); - String scope = session.getScope(); - //else - _log.trace("Session check OK for " + user + " at " + new Date()); - if (user == null || user.compareTo("") == 0) { - _log.warn("User is null at " + new Date()); - } - if (scope == null || scope.compareTo("") == 0) { - _log.warn("Scope is null at " + new Date()); - } - return new SessionInfoBean(session.getUsername(), session.getScope()); - } - - /** - * - * @return true if you're running into the portal, false if in development - */ - private boolean isWithinPortal() { - try { - UserLocalServiceUtil.getService(); - return true; - } - catch (com.liferay.portal.kernel.bean.BeanLocatorException ex) { - _log.trace("Development Mode ON"); - return false; - } - } -} diff --git a/${webappDirectory}/WEB-INF/classes/org/gcube/portlets/widgets/sessionchecker/shared/SessionInfoBean.java b/${webappDirectory}/WEB-INF/classes/org/gcube/portlets/widgets/sessionchecker/shared/SessionInfoBean.java deleted file mode 100644 index 5bccb7c..0000000 --- a/${webappDirectory}/WEB-INF/classes/org/gcube/portlets/widgets/sessionchecker/shared/SessionInfoBean.java +++ /dev/null @@ -1,63 +0,0 @@ -package org.gcube.portlets.widgets.sessionchecker.shared; - -import java.io.Serializable; - -@SuppressWarnings("serial") -public class SessionInfoBean implements Serializable { - - private String username; - private String scope; - private boolean isDevMode; - - public SessionInfoBean() { - super(); - } - - - public SessionInfoBean(String username, String scope) { - super(); - this.username = username; - this.scope = scope; - } - - - - public SessionInfoBean(String username, String scope, boolean isDevMode) { - super(); - this.username = username; - this.scope = scope; - this.isDevMode = isDevMode; - } - - - public String getUsername() { - return username; - } - - - public void setUsername(String username) { - this.username = username; - } - - - public String getScope() { - return scope; - } - - - public void setScope(String scope) { - this.scope = scope; - } - - - public boolean isDevMode() { - return isDevMode; - } - - - public void setDevMode(boolean isDevMode) { - this.isDevMode = isDevMode; - } - - -} diff --git a/.classpath b/.classpath index fecd511..095be49 100644 --- a/.classpath +++ b/.classpath @@ -1,12 +1,12 @@ - + - + @@ -15,11 +15,7 @@ - - - - - + @@ -43,5 +39,5 @@ - + diff --git a/.settings/org.eclipse.jdt.core.prefs b/.settings/org.eclipse.jdt.core.prefs index 443e085..d9c67f2 100644 --- a/.settings/org.eclipse.jdt.core.prefs +++ b/.settings/org.eclipse.jdt.core.prefs @@ -3,6 +3,9 @@ org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.7 org.eclipse.jdt.core.compiler.compliance=1.7 org.eclipse.jdt.core.compiler.problem.assertIdentifier=error +org.eclipse.jdt.core.compiler.problem.enablePreviewFeatures=disabled org.eclipse.jdt.core.compiler.problem.enumIdentifier=error org.eclipse.jdt.core.compiler.problem.forbiddenReference=warning +org.eclipse.jdt.core.compiler.problem.reportPreviewFeatures=ignore +org.eclipse.jdt.core.compiler.release=disabled org.eclipse.jdt.core.compiler.source=1.7