Skip to content

Commit

Permalink
Bug 565143 - Floating licensing
Browse files Browse the repository at this point in the history
reworked JettyServer to application

Signed-off-by: Alexander Fedorov <alexander.fedorov@arsysop.ru>
  • Loading branch information
ruspl-afed committed Aug 28, 2020
1 parent 75ca395 commit 3c9e780
Show file tree
Hide file tree
Showing 11 changed files with 31 additions and 141 deletions.

This file was deleted.

2 changes: 0 additions & 2 deletions bundles/org.eclipse.passage.lbc.server/META-INF/MANIFEST.MF
Expand Up @@ -16,6 +16,4 @@ Require-Bundle: org.eclipse.core.runtime;bundle-version="0.0.0",
org.eclipse.passage.lbc.api;bundle-version="0.0.0",
org.eclipse.passage.lic.base;bundle-version="0.0.0",
org.eclipse.passage.lbc.base;bundle-version="0.0.0"
Service-Component: OSGI-INF/org.eclipse.passage.lbc.server.OsgiServerLauncher.xml,
OSGI-INF/org.eclipse.passage.lbc.server.jetty.JettyServer.xml
Bundle-ActivationPolicy: lazy

This file was deleted.

This file was deleted.

3 changes: 3 additions & 0 deletions bundles/org.eclipse.passage.lbc.server/plugin.xml
Expand Up @@ -20,6 +20,9 @@
cardinality="1"
thread="main"
visible="true">
<run
class="org.eclipse.passage.lbc.server.jetty.JettyServer">
</run>
</application>
</extension>
<extension
Expand Down

This file was deleted.

Expand Up @@ -13,19 +13,14 @@
package org.eclipse.passage.lbc.server;

import java.util.Map;
import java.util.function.Function;

import org.eclipse.passage.lic.internal.base.BaseNamedData;

@SuppressWarnings("restriction")
public final class Port extends BaseNamedData<Integer> {

protected Port(Function<String, Integer> retrieve) {
super(retrieve);
}

public Port(Map<String, Object> arguments) {
super(key -> Integer.class.isInstance(arguments.get(key)) ? (int) arguments.get(key) : 8080);
super(key -> Integer.class.isInstance(arguments.get(key)) ? (int) arguments.get(key) : 8090);
}

@Override
Expand Down
Expand Up @@ -12,33 +12,41 @@
*******************************************************************************/
package org.eclipse.passage.lbc.server.jetty;

import java.util.Collections;
import java.util.Map;

import org.eclipse.equinox.app.IApplication;
import org.eclipse.equinox.app.IApplicationContext;
import org.eclipse.jetty.server.Server;
import org.eclipse.passage.lbc.internal.api.BackendLauncher;
import org.eclipse.passage.lbc.server.Dispatcher;
import org.eclipse.passage.lbc.server.Port;
import org.osgi.service.component.annotations.Component;

@Component
@SuppressWarnings("restriction")
public final class JettyServer implements BackendLauncher {
public final class JettyServer implements IApplication {

private Server server;

@Override
public void launch(Map<String, Object> arguments) {
@SuppressWarnings("restriction")
public Object start(IApplicationContext context) {
try {
Map<String, Object> arguments = arguments(context);
server = new Server(new Port(arguments).get().get());
server.setHandler(new Handler(new Dispatcher(arguments).get().get()));
server.start();
} catch (Exception e) {
e.printStackTrace();
return Integer.valueOf(-1);
}
return EXIT_OK;
}

private Map<String, Object> arguments(IApplicationContext context) {
// FIXME: provide a way to read arguments from configuration
return Collections.emptyMap();
}

@Override
public void terminate() {
public void stop() {
try {
server.stop();
} catch (Exception e) {
Expand Down
5 changes: 5 additions & 0 deletions features/org.eclipse.passage.lbc.execute.feature/feature.xml
Expand Up @@ -33,6 +33,11 @@

<requires>
<import feature="org.eclipse.passage.lbc.target.feature"/>
<import feature="org.eclipse.passage.lic.emf.feature"/>
<import feature="org.eclipse.passage.lic.equinox.feature"/>
<import feature="org.eclipse.passage.lic.json.feature"/>
<import feature="org.eclipse.passage.lic.licenses.feature"/>
<import feature="org.eclipse.passage.lic.net.feature"/>
</requires>

<plugin
Expand Down
34 changes: 5 additions & 29 deletions features/org.eclipse.passage.lbc.target.feature/feature.xml
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
Copyright (c) 2019-2020 ArSysOp and others
Copyright (c) 2019, 2020 ArSysOp and others
This program and the accompanying materials are made available under the
terms of the Eclipse Public License 2.0 which is available at
Expand Down Expand Up @@ -31,6 +31,10 @@
%license
</license>

<requires>
<import feature="org.eclipse.passage.lic.json.feature" version="1.0.0.qualifier"/>
</requires>

<plugin
id="javax.inject"
download-size="0"
Expand Down Expand Up @@ -108,34 +112,6 @@
version="0.0.0"
unpack="false"/>

<plugin
id="org.eclipse.passage.lic.licenses.migration"
download-size="0"
install-size="0"
version="0.0.0"
unpack="false"/>

<plugin
id="org.eclipse.passage.lic.emf"
download-size="0"
install-size="0"
version="0.0.0"
unpack="false"/>

<plugin
id="org.eclipse.passage.lic.licenses.model"
download-size="0"
install-size="0"
version="0.0.0"
unpack="false"/>

<plugin
id="org.eclipse.passage.lic.licenses"
download-size="0"
install-size="0"
version="0.0.0"
unpack="false"/>

<plugin
id="org.eclipse.emf.ecore"
download-size="0"
Expand Down
@@ -1,5 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<?pde version="3.5"?>

<!--
Copyright (c) 2018, 2020 ArSysOp and others
Expand Down Expand Up @@ -50,10 +51,8 @@
<feature id="org.eclipse.ecf.filetransfer.ssl.feature"/>
<feature id="org.eclipse.ecf.core.feature"/>
<feature id="org.eclipse.ecf.filetransfer.feature"/>
<feature id="org.eclipse.passage.lic.net.feature" installMode="root"/>
<feature id="org.eclipse.passage.lic.equinox.feature" installMode="root"/>
<feature id="org.eclipse.passage.lbc.target.feature"/>
<feature id="org.eclipse.passage.lbc.execute.feature"/>
<feature id="org.eclipse.passage.lbc.execute.feature" installMode="root"/>
</features>

<configurations>
Expand Down

0 comments on commit 3c9e780

Please sign in to comment.