changed all licenses to ASLv2
issue: Apache source headers in callback-weinre
https://issues.apache.org/jira/browse/CB-10
diff --git a/README.md b/README.md
index 2ffdf99..5d2773a 100644
--- a/README.md
+++ b/README.md
@@ -1,2 +1,21 @@
+<!--
+ * 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.
+-->
+
For more information on weinre:
[http://callback.github.com/callback-weinre/](http://callback.github.com/callback-weinre/)
\ No newline at end of file
diff --git a/weinre.application/resources/macosx/weinre.app/Contents/Info.plist b/weinre.application/resources/macosx/weinre.app/Contents/Info.plist
index 3e8310a..f1b4861 100644
--- a/weinre.application/resources/macosx/weinre.app/Contents/Info.plist
+++ b/weinre.application/resources/macosx/weinre.app/Contents/Info.plist
@@ -2,10 +2,22 @@
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<!--
- * weinre is available under *either* the terms of the modified BSD license *or* the
- * MIT License (2008). See http://opensource.org/licenses/alphabetical for full text.
- *
- * Copyright (c) 2010, 2011 IBM Corporation
+ * 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.
-->
<plist version="1.0">
diff --git a/weinre.application/resources/macosx/weinre.app/Contents/MacOS/launcher b/weinre.application/resources/macosx/weinre.app/Contents/MacOS/launcher
index ffc287d..f76ffc5 100644
--- a/weinre.application/resources/macosx/weinre.app/Contents/MacOS/launcher
+++ b/weinre.application/resources/macosx/weinre.app/Contents/MacOS/launcher
@@ -1,10 +1,22 @@
#!/bin/sh
# ---
-# weinre is available under *either* the terms of the modified BSD license *or* the
-# MIT License (2008). See http://opensource.org/licenses/alphabetical for full text.
-#
-# Copyright (c) 2010, 2011 IBM Corporation
+# 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.
# ---
BASEDIR=`dirname $0`
diff --git a/weinre.application/src/weinre/application/GUIMain.java b/weinre.application/src/weinre/application/GUIMain.java
index 7ae91a4..28208ff 100644
--- a/weinre.application/src/weinre/application/GUIMain.java
+++ b/weinre.application/src/weinre/application/GUIMain.java
@@ -1,8 +1,20 @@
/*
- * weinre is available under *either* the terms of the modified BSD license *or* the
- * MIT License (2008). See http://opensource.org/licenses/alphabetical for full text.
- *
- * Copyright (c) 2010, 2011 IBM Corporation
+ * 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 weinre.application;
@@ -42,7 +54,7 @@
private Color red;
private GUIPreferences preferences;
private ShellSizeTracker shellSizeTracker;
-
+
//---------------------------------------------------------------
static public void main(String[] args) {
GUIMain main = new GUIMain(args);
@@ -52,10 +64,10 @@
//---------------------------------------------------------------
private GUIMain(String[] args) {
super(args);
-
+
preferences = new GUIPreferences();
}
-
+
//---------------------------------------------------------------
@Override
public void run() {
@@ -66,11 +78,11 @@
httpServerStart();
}
};
-
+
new Thread(serverRunnable, "main server thread").start();
uiRun();
-
+
exit();
}
@@ -93,15 +105,15 @@
@Override
public void addServerConsoleMessage(final String line, final boolean stdout) {
if (null == console) return;
-
+
if (console.isDisposed()) return;
-
+
console.getDisplay().asyncExec(new Runnable() {
public void run() {
if (console.isDisposed()) return;
-
+
String theLine = line + Text.DELIMITER;
-
+
Color color = null;
if (!stdout) color = red;
@@ -109,19 +121,19 @@
styleRange.start = console.getCharCount();
styleRange.length = theLine.length();
styleRange.foreground = color;
-
+
console.append(theLine);
console.setStyleRange(styleRange);
}
});
}
-
+
//---------------------------------------------------------------
@Override
public int severeError(final String message) {
if (null == display) return super.severeError(message);
if (display.isDisposed()) return super.severeError(message);
-
+
display.syncExec(new Runnable() {
public void run() {
boolean noGUI = false;
@@ -129,12 +141,12 @@
if (null == shell) noGUI = true;
if (display.isDisposed()) noGUI = true;
if (shell.isDisposed()) noGUI = true;
-
+
if (noGUI) {
GUIMain.super.severeError(message);
return;
}
-
+
MessageBox messageBox = new MessageBox(shell, SWT.ICON_ERROR | SWT.OK);
messageBox.setMessage(message);
messageBox.setText("weinre exiting");
@@ -142,22 +154,22 @@
exit();
}
});
-
+
return 0;
}
-
+
//---------------------------------------------------------------
private void uiBuild() {
Display.setAppName("weinre");
Display.setAppVersion("???");
-
+
display = new Display();
shell = new Shell(display);
-
+
red = new Color(display, 255, 0, 0);
shell.setText("weinre - Web Inspector Remote");
-
+
CTabFolder tabFolder = new CTabFolder(shell, SWT.BORDER | SWT.BOTTOM);
CTabItem tabItemDebugger = createTabItem(tabFolder, "Debugger");
CTabItem tabItemConsole = createTabItem(tabFolder, "Server Console");
@@ -165,31 +177,31 @@
debugger = new Browser(tabFolder, SWT.NONE);
tabItemDebugger.setControl(debugger);
-
+
console = new StyledText(tabFolder, SWT.MULTI | SWT.H_SCROLL | SWT.V_SCROLL);
console.setEditable(false);
console.setFont(getMonospaceFont(console));
homePage = new Browser(tabFolder, SWT.NONE);
tabItemHomePage.setControl(homePage);
-
+
tabItemConsole.setControl(console);
-
+
fillParent(debugger, 0, 0, 0, 0);
fillParent(console, 0, 0, 0, 0);
fillParent(homePage, 0, 0, 0, 0);
fillParent(tabFolder, 5, 5, 5, 5);
-
+
tabFolder.pack();
createMenuBar();
-
+
shellSizeTracker = new ShellSizeTracker("main", shell, preferences);
shellSizeTracker.start();
-
+
try {
String boundsKey = ShellSizeTracker.getBoundsKey(shell, "main");
JSONObject bounds = preferences.getPreference(boundsKey);
-
+
if (null != bounds) {
Integer x, y, w, h;
try {
@@ -200,23 +212,23 @@
} catch (JSONException e) {
throw new RuntimeException(e);
}
-
+
if ((null != w) && (null != h)) {
shell.setBounds(x,y,w,h);
}
}
-
+
else {
shell.setBounds(100, 100, 700, 500);
}
-
+
}
catch (IOException e) {
Main.warn("exception reading preferences: " + e);
}
-
+
}
-
+
//---------------------------------------------------------------
private void createMenuBar() {
// Menu menu = new Menu(shell, SWT.BAR);
@@ -225,12 +237,12 @@
// fileMenuItem.setText("File");
// MenuItem editMenuItem = new MenuItem(menu, SWT.CASCADE);
// editMenuItem.setText("Edit");
- }
+ }
//---------------------------------------------------------------
private void uiRun() {
shell.open();
-
+
while (!shell.isDisposed()) {
if (!display.readAndDispatch())
display.sleep();
@@ -242,32 +254,32 @@
private CTabItem createTabItem(CTabFolder tabFolder, String text) {
CTabItem tabItem = new CTabItem(tabFolder, SWT.NONE);
tabItem.setText(text);
-
+
Font font = tabItem.getFont();
FontData[] fontData = font.getFontData();
-
+
for (FontData fontDatum: fontData) {
double newHeight = fontDatum.getHeight() * 1.25;
fontDatum.setHeight((int) newHeight);
}
-
+
font = new Font(display, fontData);
tabItem.setFont(font);
-
+
return tabItem;
}
-
+
//---------------------------------------------------------------
private void fillParent(Control control, int marginT, int marginR, int marginB, int marginL ) {
FormLayout formLayout = new FormLayout();
-
- formLayout.marginTop = marginT;
+
+ formLayout.marginTop = marginT;
formLayout.marginBottom = marginB;
formLayout.marginLeft = marginL;
formLayout.marginRight = marginR;
-
+
FormData formData = new FormData();
-
+
formData.left = new FormAttachment(0);
formData.right = new FormAttachment(100);
formData.top = new FormAttachment(0);
@@ -276,27 +288,27 @@
control.getParent().setLayout(formLayout);
control.setLayoutData(formData);
}
-
+
//---------------------------------------------------------------
private String getBrowserURL() {
String result;
-
+
ServerSettings settings = weinre.server.Main.getSettings();
-
+
String host = settings.getNiceHostName();
int port = settings.getHttpPort();
-
+
result = "http://" + host + ":" + port + "/";
-
+
return result;
}
-
+
//---------------------------------------------------------------
private Font getMonospaceFont(Control control) {
FontData[] fontData = control.getDisplay().getFontList(null, true);
-
+
FontData fontFound = null;
-
+
// essentially the defaults that web inspector uses
if (null == fontFound) fontFound = findFontNamed(fontData, "Menlo");
if (null == fontFound) fontFound = findFontNamed(fontData, "Monaco");
@@ -304,39 +316,39 @@
if (null == fontFound) fontFound = findFontNamed(fontData, "Lucida Console");
if (null == fontFound) fontFound = findFontNamed(fontData, "dejavu sans mono");
if (null == fontFound) fontFound = findFontNamed(fontData, "Courier");
-
+
if (null == fontFound) return null;
fontFound.setHeight(14);
-
+
return new Font(control.getDisplay(), fontFound);
}
-
+
//---------------------------------------------------------------
private FontData findFontNamed(FontData[] fontData, String name) {
for (FontData fontDatum: fontData) {
if (fontDatum.getStyle() != SWT.NORMAL) continue;
- if (name.equals(fontDatum.getName())) return fontDatum;
+ if (name.equals(fontDatum.getName())) return fontDatum;
}
-
+
return null;
}
-
+
//---------------------------------------------------------------
@SuppressWarnings("unused")
private void dumpFontData(FontData[] fontData) {
for (FontData fontDatum: fontData) {
int style = fontDatum.getStyle();
String styleString = "";
-
+
if (0 != (style & SWT.NORMAL)) styleString += "NORMAL ";
if (0 != (style & SWT.BOLD)) styleString += "BOLD ";
if (0 != (style & SWT.ITALIC)) styleString += "ITALIC ";
-
+
styleString = styleString.trim();
-
+
System.out.println("font: " + fontDatum.getName() + " : " + fontDatum.getHeight() + " : " + styleString);
}
}
-
+
}
diff --git a/weinre.application/src/weinre/application/GUIPreferences.java b/weinre.application/src/weinre/application/GUIPreferences.java
index 200ea0a..3751584 100644
--- a/weinre.application/src/weinre/application/GUIPreferences.java
+++ b/weinre.application/src/weinre/application/GUIPreferences.java
@@ -1,8 +1,20 @@
/*
- * weinre is available under *either* the terms of the modified BSD license *or* the
- * MIT License (2008). See http://opensource.org/licenses/alphabetical for full text.
- *
- * Copyright (c) 2010, 2011 IBM Corporation
+ * 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 weinre.application;
@@ -19,16 +31,16 @@
//-------------------------------------------------------------------
public class GUIPreferences {
static final private String PROPERTIES_FILE_NAME = "ui.properties";
-
+
private Properties properties;
-
+
//---------------------------------------------------------------
public GUIPreferences() {
super();
properties = Utility.readPropertiesFile(PROPERTIES_FILE_NAME);
}
-
+
//---------------------------------------------------------------
public JSONObject getPreference(String key) throws IOException {
String val = properties.getProperty(key);
@@ -40,11 +52,11 @@
throw new RuntimeException(e);
}
}
-
+
//---------------------------------------------------------------
public void setPreference(String key, JSONObject json) {
String val = json.toString();
-
+
properties.setProperty(key, val);
Utility.writePropertiesFile(PROPERTIES_FILE_NAME, properties);
}
diff --git a/weinre.application/src/weinre/application/ShellSizeTracker.java b/weinre.application/src/weinre/application/ShellSizeTracker.java
index 5fbad4b..e5d8972 100644
--- a/weinre.application/src/weinre/application/ShellSizeTracker.java
+++ b/weinre.application/src/weinre/application/ShellSizeTracker.java
@@ -1,8 +1,20 @@
/*
- * weinre is available under *either* the terms of the modified BSD license *or* the
- * MIT License (2008). See http://opensource.org/licenses/alphabetical for full text.
- *
- * Copyright (c) 2010, 2011 IBM Corporation
+ * 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 weinre.application;
@@ -31,9 +43,9 @@
//---------------------------------------------------------------
static public String getBoundsKey(Shell shell, String name) {
- return "bounds-" + name + "-" + ShellSizeTracker.getMonitorSetupKey(shell.getDisplay());
+ return "bounds-" + name + "-" + ShellSizeTracker.getMonitorSetupKey(shell.getDisplay());
}
-
+
//---------------------------------------------------------------
static private String getMonitorSetupKey(final Display display) {
StringBuffer keyBuffer = new StringBuffer();
@@ -42,29 +54,29 @@
for (Monitor monitor: monitors) {
Rectangle bounds = monitor.getBounds();
Rectangle clientArea = monitor.getClientArea();
-
+
keyBuffer.append("__");
keyBuffer.append(bounds.x); keyBuffer.append("_");
keyBuffer.append(bounds.y); keyBuffer.append("_");
keyBuffer.append(bounds.width); keyBuffer.append("_");
keyBuffer.append(bounds.height);
-
+
keyBuffer.append("__");
keyBuffer.append(clientArea.x); keyBuffer.append("_");
keyBuffer.append(clientArea.y); keyBuffer.append("_");
keyBuffer.append(clientArea.width); keyBuffer.append("_");
- keyBuffer.append(clientArea.height);
+ keyBuffer.append(clientArea.height);
}
keyBuffer.insert(0, "monitor-setup");
-
+
return keyBuffer.toString();
}
-
+
//---------------------------------------------------------------
public ShellSizeTracker(String name, final Shell shell, GUIPreferences preferences) {
super();
-
+
this.name = name;
this.shell = shell;
this.preferences = preferences;
@@ -72,24 +84,24 @@
this.lastSize = new Point(0,0);
this.lastLocation = new Point(0,0);
this.stop = false;
-
+
shell.addControlListener(new ControlListener() {
public void controlMoved(ControlEvent e) {shellMoved();}
public void controlResized(ControlEvent e) {shellMoved();}
});
-
+
}
//---------------------------------------------------------------
public void start() {
startWaiterThread();
}
-
+
//---------------------------------------------------------------
public void stop() {
-
+
}
-
+
//---------------------------------------------------------------
private void shellMoved() {
dirty = true;
@@ -103,9 +115,9 @@
if (!dirty) return;
if (shell.isDisposed()) return;
if (System.currentTimeMillis() < lastChange + 3000) return;
-
+
JSONObject valueJSON = new JSONObject();
-
+
try {
valueJSON.put("x", lastLocation.x);
valueJSON.put("y", lastLocation.y);
@@ -114,10 +126,10 @@
} catch (JSONException e1) {
throw new RuntimeException(e1);
}
-
+
String key;
key = ShellSizeTracker.getBoundsKey(shell, name);
-
+
preferences.setPreference(key, valueJSON);
dirty = false;
@@ -130,20 +142,20 @@
public void run() {
while (true) {
try { Thread.sleep(1000); } catch(InterruptedException e) { return; }
-
+
if (stop) return;
if (shell.isDisposed()) return;
-
+
shell.getDisplay().asyncExec(new Runnable() {
public void run() { checkForChanges(); }
});
}
}
};
-
+
Thread thread = new Thread(runnable, getClass().getSimpleName() + " for " + name);
thread.start();
-
+
return thread;
}
diff --git a/weinre.build/README.md b/weinre.build/README.md
index e7a43c9..e47c046 100644
--- a/weinre.build/README.md
+++ b/weinre.build/README.md
@@ -1,3 +1,22 @@
+<!--
+ * 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.
+-->
+
building weinre
===============================================================================
diff --git a/weinre.build/build-continuous.sh b/weinre.build/build-continuous.sh
index 8d451a5..e6f1181 100755
--- a/weinre.build/build-continuous.sh
+++ b/weinre.build/build-continuous.sh
@@ -1,10 +1,22 @@
#!/bin/sh
# ---
-# weinre is available under *either* the terms of the modified BSD license *or* the
-# MIT License (2008). See http://opensource.org/licenses/alphabetical for full text.
-#
-# Copyright (c) 2010, 2011 IBM Corporation
+# 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.
# ---
#-------------------------------------------------------------
@@ -26,4 +38,4 @@
../weinre.doc \
../weinre.server \
../weinre.web
-
+
diff --git a/weinre.build/build.properties b/weinre.build/build.properties
index 6972e2d..8cb1b96 100644
--- a/weinre.build/build.properties
+++ b/weinre.build/build.properties
@@ -1,8 +1,20 @@
# ---
-# weinre is available under *either* the terms of the modified BSD license *or* the
-# MIT License (2008). See http://opensource.org/licenses/alphabetical for full text.
+# 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
#
-# Copyright (c) 2010, 2011 IBM Corporation
+# 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.
# ---
#-----------------------------------------------------------
diff --git a/weinre.build/build.xml b/weinre.build/build.xml
index 7e72ae8..eab7546 100644
--- a/weinre.build/build.xml
+++ b/weinre.build/build.xml
@@ -1,8 +1,20 @@
<!--
- * weinre is available under *either* the terms of the modified BSD license *or* the
- * MIT License (2008). See http://opensource.org/licenses/alphabetical for full text.
+ * 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
*
- * Copyright (c) 2010, 2011 IBM Corporation
+ * 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.
-->
<project name="build" default="build" basedir=".">
diff --git a/weinre.build/debug.sh b/weinre.build/debug.sh
index 3542f2d..ba681ee 100755
--- a/weinre.build/debug.sh
+++ b/weinre.build/debug.sh
@@ -1,4 +1,24 @@
#!/bin/sh
+
+# ---
+# 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.
+# ---
+
CWD=`dirname $0`
WEINRE=`dirname $CWD`
CP=$WEINRE/weinre.server/bin:$WEINRE/weinre.build/out:$WEINRE/weinre.build/vendor/cli/commons-cli.jar:$WEINRE/weinre.build/vendor/jetty/jetty.jar:$WEINRE/weinre.build/vendor/json4j/json4j.jar:$WEINRE/weinre.build/vendor/jetty/servlet-api.jar
diff --git a/weinre.build/get-vendor.xml b/weinre.build/get-vendor.xml
index 259dfaf..e420835 100644
--- a/weinre.build/get-vendor.xml
+++ b/weinre.build/get-vendor.xml
@@ -1,8 +1,20 @@
<!--
- * weinre is available under *either* the terms of the modified BSD license *or* the
- * MIT License (2008). See http://opensource.org/licenses/alphabetical for full text.
+ * 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
*
- * Copyright (c) 2010, 2011 IBM Corporation
+ * 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.
-->
<project name="get-vendor" default="get-vendor" basedir=".">
diff --git a/weinre.build/new-release-notes.md b/weinre.build/new-release-notes.md
index 937c66f..46f9a71 100644
--- a/weinre.build/new-release-notes.md
+++ b/weinre.build/new-release-notes.md
@@ -1,3 +1,22 @@
+<!--
+ * 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.
+-->
+
steps to create a new release
===============================================================================
@@ -40,7 +59,7 @@
- `git checkout develop`
- `git merge --no-ff release-x.y.z`
- `git push`
- - `git branch -d release-x.y.z`
+ - `git branch -d release-x.y.z`
- update github pages:
diff --git a/weinre.build/sample.personal.properties b/weinre.build/sample.personal.properties
index 22f7204..73c2d6e 100644
--- a/weinre.build/sample.personal.properties
+++ b/weinre.build/sample.personal.properties
@@ -1,8 +1,20 @@
# ---
-# weinre is available under *either* the terms of the modified BSD license *or* the
-# MIT License (2008). See http://opensource.org/licenses/alphabetical for full text.
+# 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
#
-# Copyright (c) 2010, 2011 IBM Corporation
+# 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.
# ---
#------------------------------------------------------------------------------
diff --git a/weinre.build/scripts/build-client-html.py b/weinre.build/scripts/build-client-html.py
index a06fc05..86bb0ff 100644
--- a/weinre.build/scripts/build-client-html.py
+++ b/weinre.build/scripts/build-client-html.py
@@ -1,10 +1,22 @@
#!/usr/bin/env python
# ---
-# weinre is available under *either* the terms of the modified BSD license *or* the
-# MIT License (2008). See http://opensource.org/licenses/alphabetical for full text.
+# 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
#
-# Copyright (c) 2010, 2011 IBM Corporation
+# 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.
# ---
import os
diff --git a/weinre.build/scripts/build-css-properties.py b/weinre.build/scripts/build-css-properties.py
index c6fde75..4ac4122 100644
--- a/weinre.build/scripts/build-css-properties.py
+++ b/weinre.build/scripts/build-css-properties.py
@@ -1,10 +1,22 @@
#!/usr/bin/env python
# ---
-# weinre is available under *either* the terms of the modified BSD license *or* the
-# MIT License (2008). See http://opensource.org/licenses/alphabetical for full text.
+# 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
#
-# Copyright (c) 2010, 2011 IBM Corporation
+# 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.
# ---
import os
diff --git a/weinre.build/scripts/build-target-scripts.py b/weinre.build/scripts/build-target-scripts.py
index 64d1923..721ea26 100644
--- a/weinre.build/scripts/build-target-scripts.py
+++ b/weinre.build/scripts/build-target-scripts.py
@@ -1,10 +1,22 @@
#!/usr/bin/env python
# ---
-# weinre is available under *either* the terms of the modified BSD license *or* the
-# MIT License (2008). See http://opensource.org/licenses/alphabetical for full text.
+# 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
#
-# Copyright (c) 2010, 2011 IBM Corporation
+# 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.
# ---
import os
diff --git a/weinre.build/scripts/changelog.sh b/weinre.build/scripts/changelog.sh
index af3a12f..8c7393a 100755
--- a/weinre.build/scripts/changelog.sh
+++ b/weinre.build/scripts/changelog.sh
@@ -1,10 +1,22 @@
#/bin/sh
# ---
-# weinre is available under *either* the terms of the modified BSD license *or* the
-# MIT License (2008). See http://opensource.org/licenses/alphabetical for full text.
-#
-# Copyright (c) 2011 IBM Corporation
+# 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.
# ---
git log "--pretty=format:- %s" $1.. | \
diff --git a/weinre.build/scripts/closed-issues.py b/weinre.build/scripts/closed-issues.py
index 8eda3ab..4fe32de 100755
--- a/weinre.build/scripts/closed-issues.py
+++ b/weinre.build/scripts/closed-issues.py
@@ -1,5 +1,24 @@
#!/usr/bin/env python
+# ---
+# 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.
+# ---
+
import os
import sys
import json
@@ -8,7 +27,7 @@
if len(sys.argv) < 3:
print "expecting parameters <user> <project>"
sys.exit()
-
+
user = sys.argv[1]
proj = sys.argv[2]
@@ -28,6 +47,6 @@
number = issue["number"]
title = issue["title"]
date = issue["closed_at"]
-
+
template = "<li><a href='https://github.com/%s/%s/issues/%d'>issue %d</a> %s - %s"
print template % (user, proj, number, number, date, title)
\ No newline at end of file
diff --git a/weinre.build/scripts/collect-all-json-idl.py b/weinre.build/scripts/collect-all-json-idl.py
index 2d1d912..9448915 100644
--- a/weinre.build/scripts/collect-all-json-idl.py
+++ b/weinre.build/scripts/collect-all-json-idl.py
@@ -1,10 +1,22 @@
#!/usr/bin/env python
# ---
-# weinre is available under *either* the terms of the modified BSD license *or* the
-# MIT License (2008). See http://opensource.org/licenses/alphabetical for full text.
+# 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
#
-# Copyright (c) 2010, 2011 IBM Corporation
+# 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.
# ---
import os
diff --git a/weinre.build/scripts/simple-idl2json.py b/weinre.build/scripts/simple-idl2json.py
index b5cf521..fceec8a 100644
--- a/weinre.build/scripts/simple-idl2json.py
+++ b/weinre.build/scripts/simple-idl2json.py
@@ -1,10 +1,22 @@
#!/usr/bin/env python
# ---
-# weinre is available under *either* the terms of the modified BSD license *or* the
-# MIT License (2008). See http://opensource.org/licenses/alphabetical for full text.
-#
-# Copyright (c) 2010, 2011 IBM Corporation
+# 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.
# ---
import os
@@ -19,34 +31,34 @@
#--------------------------------------------------------------------
def main():
-
+
# parse args
parser = optparse.OptionParser()
parser.add_option("--validate", action="store_true", help="validate types")
parser.add_option("--anyType", action="append", metavar="TYPE", help="treat TYPE as an any")
(options, args) = parser.parse_args()
-
+
if options.anyType:
AnyTypes.extend(options.anyType)
-
+
if len(args) <= 0: error("no input files specified")
iFileName = args[0]
-
- if len(args) <= 1:
+
+ if len(args) <= 1:
oFileName = "<stdout>"
else:
oFileName = args[1]
-
+
# read input
iFile = file(iFileName)
content = iFile.read()
iFile.close()
-
+
# convert to JSONable
module = parseIDL(content)
-
+
splitNotifyInterfaces(module)
-
+
# if module["name"] == "core":
# if len(module["interfaces"]) == 1:
# if module["interfaces"][0]["name"] == "Inspector":
@@ -54,57 +66,57 @@
# convert out parms to callback parms
convertOutParms(module)
-
+
# validate
if options.validate: validate(module)
# convert to JSON
jsonModule = json.dumps(module, indent=3)
-
+
# write output
- if oFileName == "<stdout>":
+ if oFileName == "<stdout>":
oFile = sys.stdout
else:
oFile = file(oFileName,"w")
-
+
oFile.write(jsonModule)
# close file
- if oFileName != "<stdout>":
+ if oFileName != "<stdout>":
oFile.close()
log("generated json file '%s'" %oFileName)
#--------------------------------------------------------------------
def convertOutParms(module):
for interface in module["interfaces"]:
-
+
if "methods" in interface:
for method in interface["methods"]:
method["callbackParameters"] = []
newParameters = []
-
+
for parameter in method["parameters"]:
if "out" in parameter:
method["callbackParameters"].append(parameter)
else:
newParameters.append(parameter)
-
+
method["parameters"] = newParameters
#--------------------------------------------------------------------
def splitNotifyInterfaces(module):
newInterfaces = {}
-
+
for interface in module["interfaces"][:]:
if "methods" in interface:
for method in interface["methods"][:]:
if "extendedAttributes" not in method: continue
if "notify" not in method["extendedAttributes"]: continue
-
+
newInterfaceName = interface["name"] + "Notify"
newInterface = newInterfaces.get(newInterfaceName)
-
+
if not newInterface:
newInterface = {
"name": newInterfaceName,
@@ -126,16 +138,16 @@
def splitInspectorInterfaces(module):
intfOrig = module["interfaces"][0]
newInterfaces = {}
-
+
module["interfaces"] = []
for method in intfOrig["methods"]:
if "domain" not in method["extendedAttributes"]:
log("Inspector method %s does not have a 'domain' extended attribute" % (method["name"]))
continue
-
+
intfName = method["extendedAttributes"]["domain"]
-
+
if "notify" in method["extendedAttributes"]:
intfName += "Notify"
@@ -153,15 +165,15 @@
}
newInterfaces[intfName] = intf
module["interfaces"].append(intf)
-
+
intf["methods"].append(method)
-
+
# for parameter in method["parameters"]:
# if "out" not in parameter:
# log("Inspector method %s has an unexpected non-out parameter %s" % (method["name"], parameter["name"]))
# else:
# del parameter["out"]
-
+
# intfWebInspector["methods"].append(method)
#--------------------------------------------------------------------
@@ -169,23 +181,23 @@
interfaces = {}
errors = False
-
+
# build table of interface names
for interface in module["interfaces"]:
interfaces[interface["name"]] = interface
-
+
# check interfaces
for interface in module["interfaces"]:
-
+
if "methods" in interface:
for method in interface["methods"]:
location = "%s.%s" % (interface["name"], method["name"])
errors = checkType(location, interfaces, method["returns"]) or errors
-
+
for parameter in method["parameters"]:
errors = checkType(location, interfaces, parameter["type"]) or errors
-
-
+
+
if "attributes" in interface:
for attribute in interface["attributes"]:
location = "%s.%s" % (interface["name"], attribute["name"])
@@ -195,14 +207,14 @@
#--------------------------------------------------------------------
def checkType(location, interfaces, type):
typeName = type["name"]
-
+
if typeName in BuiltInTypes: return False
if typeName in interfaces: return False
-
+
log("type '%s' is not valid in %s" % (typeName, location))
-
+
return True
-
+
#--------------------------------------------------------------------
def parseIDL(content):
@@ -211,20 +223,20 @@
match = PatternModule.match(content)
if not match: error("no module found in input")
-
+
moduleName = match.group(1).strip()
content = match.group(2)
-
+
module = {}
module["name"] = moduleName
-
+
interfaces = []
module["interfaces"] = interfaces
-
+
while True:
match = PatternInterface.match(content)
if not match: break
-
+
interfaceEAs = match.group(1)
interfaceName = match.group(2).strip()
interfaceBody = match.group(3)
@@ -233,19 +245,19 @@
interface = {}
interface["name"] = interfaceName
parseExtendedAttributes(interface, interfaceEAs)
-
+
interfaces.append(interface)
-
+
while True:
match = PatternMethod.match(interfaceBody)
if match:
method = parseMethod(match)
if not "methods" in interface: interface["methods"] = []
interface["methods"].append(method)
-
+
interfaceBody = match.group(6)
continue
-
+
match = PatternAttribute.match(interfaceBody)
if match:
attribute = parseAttribute(match)
@@ -255,54 +267,54 @@
interfaceBody = match.group(5)
continue
- if interfaceBody.strip() != "":
+ if interfaceBody.strip() != "":
error("unexpected input: '%s'" % interfaceBody)
-
+
break
-
+
if content.strip() != "}": error("unexpected input: '%s'" % content)
-
+
return module
#--------------------------------------------------------------------
def parseExtendedAttributes(object, eaStrings):
if not eaStrings: return
if eaStrings == "": return
-
+
eaStrings = eaStrings[1:-1]
eaStrings = eaStrings.split(",")
-
+
eas = {}
for eaString in eaStrings:
match = PatternExtendedAttribute.match(eaString)
if not match:
error("invalid extended attribute: '%s'" % eaString)
-
+
if match.group(3):
eas[match.group(1)] = match.group(3)
else:
eas[match.group(1)] = True
-
+
if len(eas):
object["extendedAttributes"] = eas
#--------------------------------------------------------------------
def parseMethod(match):
method = {}
-
+
eas = match.group(1)
method["returns"] = getType(match.group(2), match.group(3))
method["name"] = match.group(4)
method["parameters"] = parseMethodParameters(match.group(5))
-
+
parseExtendedAttributes(method, eas)
-
+
return method
#--------------------------------------------------------------------
def parseAttribute(match):
attribute = {}
-
+
eas = match.group(1)
attribute["type"] = getType(match.group(2), match.group(3))
attribute["name"] = match.group(4)
@@ -314,43 +326,43 @@
#--------------------------------------------------------------------
def parseMethodParameters(parameterString):
parameters = []
-
+
parameterString = parameterString.strip()
if "" == parameterString: return parameters
-
+
parmStrings = parameterString.split(",")
for parmString in parmStrings:
parameter = {}
-
+
parts = parmString.split()
if parts[0] in ["in", "out"]:
parmString = " ".join(parts[1:])
if parts[0] == "out":
parameter["out"] = True
-
+
match = PatternParameter.match(parmString)
if not match:
error("error parsing parameter in '" + parameterString + "'")
-
-
+
+
parameter["type"] = getType(match.group(1), match.group(2))
-
+
if match.group(5):
parameter["name"] = match.group(5)
else:
parameter["name"] = match.group(3)
-
+
parameters.append(parameter)
-
+
return parameters
#--------------------------------------------------------------------
def getType(name, rank):
name = name.strip()
rank = PatternWhiteSpace.sub("", rank)
-
+
origName = name
-
+
if name == "long": name = "int"
if name == "int": name = "int"
if name == "double": name = "float"
@@ -358,24 +370,24 @@
if name == "DOMString": name = "string"
if name == "String": name = "string"
if name in AnyTypes: name = "any"
-
+
if name == "Array":
return {
"name": "any",
"rank": 1
}
-
+
result = {}
result["name"] = name
-
+
if name != origName: result["originalName"] = origName
-
+
if rank:
- if (rank == "[]"):
+ if (rank == "[]"):
result["rank"] = 1
else:
error("currently only one dimensional arrays are supported: %s" % name)
-
+
return result
#--------------------------------------------------------------------
@@ -384,7 +396,7 @@
content = PatternPreprocessor.sub("", content)
content = PatternNewLine.sub("", content)
content = PatternComments.sub("", content)
-
+
return content
#--------------------------------------------------------------------
diff --git a/weinre.build/vendor.properties b/weinre.build/vendor.properties
index 386e4c8..f54545f 100644
--- a/weinre.build/vendor.properties
+++ b/weinre.build/vendor.properties
@@ -1,8 +1,20 @@
# ---
-# weinre is available under *either* the terms of the modified BSD license *or* the
-# MIT License (2008). See http://opensource.org/licenses/alphabetical for full text.
+# 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
#
-# Copyright (c) 2011 IBM Corporation
+# 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.
# ---
#-----------------------------------------------------------
diff --git a/weinre.doc/Building.body.html b/weinre.doc/Building.body.html
index 79ab67f..f5dc33b 100644
--- a/weinre.doc/Building.body.html
+++ b/weinre.doc/Building.body.html
@@ -1,8 +1,20 @@
<!--
- * weinre is available under *either* the terms of the modified BSD license *or* the
- * MIT License (2008). See http://opensource.org/licenses/alphabetical for full text.
+ * 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
*
- * Copyright (c) 2010, 2011 IBM Corporation
+ * 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.
-->
<p>The source repository for weinre is maintained at
diff --git a/weinre.doc/ChangeLog.body.html b/weinre.doc/ChangeLog.body.html
index 404ad29..9759636 100644
--- a/weinre.doc/ChangeLog.body.html
+++ b/weinre.doc/ChangeLog.body.html
@@ -1,8 +1,20 @@
<!--
- * weinre is available under *either* the terms of the modified BSD license *or* the
- * MIT License (2008). See http://opensource.org/licenses/alphabetical for full text.
+ * 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
*
- * Copyright (c) 2011 IBM Corporation
+ * 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.
-->
<!-- ======================================================================= -->
diff --git a/weinre.doc/Home.body.html b/weinre.doc/Home.body.html
index f5ef7de..281414a 100644
--- a/weinre.doc/Home.body.html
+++ b/weinre.doc/Home.body.html
@@ -1,9 +1,21 @@
<!--
- * weinre is available under *either* the terms of the modified BSD license *or* the
- * MIT License (2008). See http://opensource.org/licenses/alphabetical for full text.
+ * 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
*
- * Copyright (c) 2010, 2011 IBM Corporation
+ * 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.
-->
<p><span class="weinre">weinre</span> is <b>WE</b>b <b>IN</b>spector <b>RE</b>mote.
diff --git a/weinre.doc/Installing.body.html b/weinre.doc/Installing.body.html
index b94638a..c64088a 100644
--- a/weinre.doc/Installing.body.html
+++ b/weinre.doc/Installing.body.html
@@ -1,8 +1,20 @@
<!--
- * weinre is available under *either* the terms of the modified BSD license *or* the
- * MIT License (2008). See http://opensource.org/licenses/alphabetical for full text.
+ * 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
*
- * Copyright (c) 2010, 2011 IBM Corporation
+ * 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.
-->
<p><span class="weinre">weinre</span> is shipped as two archives
diff --git a/weinre.doc/License.body.html b/weinre.doc/License.body.html
index 975309d..d775ca5 100644
--- a/weinre.doc/License.body.html
+++ b/weinre.doc/License.body.html
@@ -1,8 +1,20 @@
<!--
- * weinre is available under *either* the terms of the modified BSD license *or* the
- * MIT License (2008). See http://opensource.org/licenses/alphabetical for full text.
+ * 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
*
- * Copyright (c) 2010, 2011 IBM Corporation
+ * 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.
-->
<p>weinre contains code from the following other projects:
@@ -31,9 +43,9 @@
</ul>
<p>The source for weinre itself is available under either
-the terms of the modified BSD license
-or
-the MIT License.
-See
-<a href="http://opensource.org/licenses/alphabetical">http://opensource.org/licenses/alphabetical</a>
-for full text.
+the terms of the Apacle License, Version 2.0. You may obtain a copy of the
+License at
+
+<blockquote>
+ <a href="http://www.apache.org/licenses/LICENSE-2.0">http://www.apache.org/licenses/LICENSE-2.0</a>
+</blockquote>
diff --git a/weinre.doc/MultiUser.body.html b/weinre.doc/MultiUser.body.html
index 065d892..177f363 100644
--- a/weinre.doc/MultiUser.body.html
+++ b/weinre.doc/MultiUser.body.html
@@ -1,8 +1,20 @@
<!--
- * weinre is available under *either* the terms of the modified BSD license *or* the
- * MIT License (2008). See http://opensource.org/licenses/alphabetical for full text.
+ * 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
*
- * Copyright (c) 2010, 2011 IBM Corporation
+ * 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.
-->
<p><span class="weinre">weinre</span> was originally designed so that each user
diff --git a/weinre.doc/Running.body.html b/weinre.doc/Running.body.html
index 6a63add..652bddd 100644
--- a/weinre.doc/Running.body.html
+++ b/weinre.doc/Running.body.html
@@ -1,8 +1,20 @@
<!--
- * weinre is available under *either* the terms of the modified BSD license *or* the
- * MIT License (2008). See http://opensource.org/licenses/alphabetical for full text.
+ * 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
*
- * Copyright (c) 2010, 2011 IBM Corporation
+ * 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.
-->
<p>This page describes how to use <span class="weinre">weinre</span> to debug
diff --git a/weinre.doc/Security.body.html b/weinre.doc/Security.body.html
index 14e1ee3..d8c09e6 100644
--- a/weinre.doc/Security.body.html
+++ b/weinre.doc/Security.body.html
@@ -1,8 +1,20 @@
<!--
- * weinre is available under *either* the terms of the modified BSD license *or* the
- * MIT License (2008). See http://opensource.org/licenses/alphabetical for full text.
+ * 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
*
- * Copyright (c) 2010, 2011 IBM Corporation
+ * 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.
-->
<p>About security for <span class="weinre">weinre</span>: <b>there is none</b>.
diff --git a/weinre.doc/TestDrive.body.html b/weinre.doc/TestDrive.body.html
index 76991e8..1bd1c2d 100644
--- a/weinre.doc/TestDrive.body.html
+++ b/weinre.doc/TestDrive.body.html
@@ -1,16 +1,28 @@
<!--
- * weinre is available under *either* the terms of the modified BSD license *or* the
- * MIT License (2008). See http://opensource.org/licenses/alphabetical for full text.
- *
- * Copyright (c) 2010, 2011 IBM Corporation
+ * 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.
-->
-<p>This page gives a walk through of using <span class="weinre">weinre</span> to
+<p>This page gives a walk through of using <span class="weinre">weinre</span> to
debug a sample page that is provided with <span class="weinre">weinre</span> itself. Read
this walk through first, then follow along and run <span class="weinre">weinre</span> yourself
-to make sure it's installed and running correctly.
+to make sure it's installed and running correctly.
-<p>You may also want to check out
+<p>You may also want to check out
<a href="http://www.youtube.com/watch?v=gaAI29UkVCc">the movie</a>, which
shows a walk through with the demo page.
@@ -21,7 +33,7 @@
<p>After you're done with the
walk through, if you want to learn how to debug your own web pages with
-<span class="weinre">weinre</span>,
+<span class="weinre">weinre</span>,
head to the
<a href="Running.html">Running page</a> for more information.
@@ -39,26 +51,26 @@
bind to something other than just localhost. The default configuration
is the safe one, and good enough to run this walk through.
-<p>To start the server,
+<p>To start the server,
<a href="Installing.html">install the <tt>weinre.jar</tt> file</a>,
then run the following command:
<pre>
java -jar weinre.jar -httpPort 8081
-</pre>
+</pre>
<p><img src="images/weinre-con-01-h.jpg">
-<p>You should see some output in your console,
+<p>You should see some output in your console,
like this:
<p><img src="images/weinre-con-02-h.jpg">
-<p>If you see messages about "Address in use",
+<p>If you see messages about "Address in use",
that means that some other program is using port 8081, and so you'll need to
use a different one.
-<p>Note that the server is now running.
+<p>Note that the server is now running.
When you are ready to stop the server, kill the
program with Ctrl-C or whatever.
@@ -90,7 +102,7 @@
Note that you probably want to open this page in
another window (not just another tab, and not
replacing this page).
-The link should be
+The link should be
<tt><a href="http://localhost:8081/client">http://localhost:8081/client</a></tt>.
<p>You should see the following page in your browser:
@@ -103,12 +115,12 @@
shown, at the
top of the web page - "Remote", "Elements", and "Console".
-<p>The "Remote" panel
+<p>The "Remote" panel
provides information about what clients and targets
are connected to the server, and other goodies.
<p>The "Remote" panel is not included with the desktop browser's
-version of Web Inspector. But the other two panels,
+version of Web Inspector. But the other two panels,
"Elements" and "Console" are the exact same panels from the
desktop browser version of Web Inspector.
@@ -138,7 +150,7 @@
<p><img src="images/weinre-cli-03-p.jpg">
<p>You should now see that there's a target connected, as indicated
-by the entry in the Targets section. That's
+by the entry in the Targets section. That's
your demo page - you know because it shows the URL.
<p>It's also green, meaning that a client is connected to it. That's you!
@@ -146,7 +158,7 @@
to a target.
<p>The debug client will always attempt to connect to the most recently
-connected debug target. But you can also click on a target to
+connected debug target. But you can also click on a target to
explicitly switch to it.
<p>Now what? Try clicking the Elements tab, as indicated
@@ -164,7 +176,7 @@
<p><img src="images/weinre-cli-04-h.jpg">
-<p>The console is now open, as shown below.
+<p>The console is now open, as shown below.
<p><img src="images/weinre-cli-05-h.jpg">
@@ -177,7 +189,7 @@
document.body.style.background = "green"
</pre>
-<p>Guess what that does?
+<p>Guess what that does?
<p><img src="images/weinre-cli-06-h.jpg">
diff --git a/weinre.doc/UserInterface.body.html b/weinre.doc/UserInterface.body.html
index b5a95cd..3a83479 100644
--- a/weinre.doc/UserInterface.body.html
+++ b/weinre.doc/UserInterface.body.html
@@ -1,8 +1,20 @@
<!--
- * weinre is available under *either* the terms of the modified BSD license *or* the
- * MIT License (2008). See http://opensource.org/licenses/alphabetical for full text.
+ * 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
*
- * Copyright (c) 2010, 2011 IBM Corporation
+ * 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.
-->
<p>This page describes the user interface provided by <span class="weinre">weinre</span>.
diff --git a/weinre.doc/boilerplate-header.html.txt b/weinre.doc/boilerplate-header.html.txt
index 73acd31..77ae9ed 100644
--- a/weinre.doc/boilerplate-header.html.txt
+++ b/weinre.doc/boilerplate-header.html.txt
@@ -1,10 +1,22 @@
<!doctype html>
<!--
- * weinre is available under *either* the terms of the modified BSD license *or* the
- * MIT License (2008). See http://opensource.org/licenses/alphabetical for full text.
+ * 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
*
- * Copyright (c) 2010, 2011 IBM Corporation
+ * 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.
-->
<html>
diff --git a/weinre.doc/boilerplate-trailer.html.txt b/weinre.doc/boilerplate-trailer.html.txt
index f2244a0..78ba0b4 100644
--- a/weinre.doc/boilerplate-trailer.html.txt
+++ b/weinre.doc/boilerplate-trailer.html.txt
@@ -1,10 +1,22 @@
<!--
- * weinre is available under *either* the terms of the modified BSD license *or* the
- * MIT License (2008). See http://opensource.org/licenses/alphabetical for full text.
+ * 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
*
- * Copyright (c) 2010, 2011 IBM Corporation
+ * 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.
-->
<div class="toc">
diff --git a/weinre.doc/css/main.css b/weinre.doc/css/main.css
index ba071e2..8e4078d 100644
--- a/weinre.doc/css/main.css
+++ b/weinre.doc/css/main.css
@@ -1,8 +1,20 @@
/*
- * weinre is available under *either* the terms of the modified BSD license *or* the
- * MIT License (2008). See http://opensource.org/licenses/alphabetical for full text.
+ * 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
*
- * Copyright (c) 2010, 2011 IBM Corporation
+ * 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.
*/
body {
diff --git a/weinre.doc/scripts/main.js b/weinre.doc/scripts/main.js
index ce6c8f2..68dc5b0 100644
--- a/weinre.doc/scripts/main.js
+++ b/weinre.doc/scripts/main.js
@@ -1,8 +1,20 @@
/*
- * weinre is available under *either* the terms of the modified BSD license *or* the
- * MIT License (2008). See http://opensource.org/licenses/alphabetical for full text.
- *
- * Copyright (c) 2010, 2011 IBM Corporation
+ * 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.
*/
//-----------------------------------------------------------------------------
@@ -16,12 +28,12 @@
for (var i=0; i<elements.length; i++) {
var element = elements[i]
if (!hasClass(element, "expand-on-click")) continue
-
+
addClass(element, "width-transition")
- element._original_width_ = element.width
+ element._original_width_ = element.width
element._contracted_ = true
element.width = element.width / 2
-
+
element.addEventListener("click", clickToExpand, false)
}
}
@@ -29,20 +41,20 @@
//-----------------------------------------------------------------------------
function clickToExpand(event) {
var element = this
-
+
if (element._contracted_) {
element.width = element._original_width_
}
else {
element.width = element._original_width_ / 2
}
-
+
element._contracted_ = ! element._contracted_
-
+
// if (hasClass(element, "contracted")) {
// removeClass(element, "contracted")
// }
-//
+//
// else {
// addClass(element, "contracted")
// }
@@ -60,7 +72,7 @@
//-----------------------------------------------------------------------------
function addClass(element, className) {
if (hasClass(element, className)) return
-
+
element.className += " " + className
}
diff --git a/weinre.server/interfaces/WeinreClientCommands.idl b/weinre.server/interfaces/WeinreClientCommands.idl
index d0f86cb..9c4707e 100644
--- a/weinre.server/interfaces/WeinreClientCommands.idl
+++ b/weinre.server/interfaces/WeinreClientCommands.idl
@@ -1,15 +1,27 @@
/*
- * weinre is available under *either* the terms of the modified BSD license *or* the
- * MIT License (2008). See http://opensource.org/licenses/alphabetical for full text.
- *
- * Copyright (c) 2010, 2011 IBM Corporation
+ * 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.
*/
// messages from the client to the server
module weinre {
interface WeinreClientCommands {
-
+
void registerClient(out string clientId);
void getTargets(out Object[] targets);
@@ -17,9 +29,9 @@
void connectTarget(in string clientId, in string targetId);
void disconnectTarget(in string clientId);
-
+
void getExtensions(out string[] extensions)
-
+
void logDebug( in string message );
void logInfo( in string message );
void logWarning( in string message );
diff --git a/weinre.server/interfaces/WeinreClientEvents.idl b/weinre.server/interfaces/WeinreClientEvents.idl
index 4e9f0d9..612ed27 100644
--- a/weinre.server/interfaces/WeinreClientEvents.idl
+++ b/weinre.server/interfaces/WeinreClientEvents.idl
@@ -1,15 +1,27 @@
/*
- * weinre is available under *either* the terms of the modified BSD license *or* the
- * MIT License (2008). See http://opensource.org/licenses/alphabetical for full text.
- *
- * Copyright (c) 2010, 2011 IBM Corporation
+ * 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.
*/
// messages from the server to the client
module weinre {
interface WeinreClientEvents {
-
+
void clientRegistered(Object client);
void targetRegistered(Object target);
@@ -18,9 +30,9 @@
void connectionCreated(string clientId, string targetId);
void connectionDestroyed(string clientId, string targetId);
-
+
void sendCallback(string callbackId, Object result);
-
+
void serverProperties(Object properties);
};
}
diff --git a/weinre.server/interfaces/WeinreExtraClientCommands.idl b/weinre.server/interfaces/WeinreExtraClientCommands.idl
index 5d6fe5c..c28b747 100644
--- a/weinre.server/interfaces/WeinreExtraClientCommands.idl
+++ b/weinre.server/interfaces/WeinreExtraClientCommands.idl
@@ -1,15 +1,27 @@
/*
- * weinre is available under *either* the terms of the modified BSD license *or* the
- * MIT License (2008). See http://opensource.org/licenses/alphabetical for full text.
- *
- * Copyright (c) 2011 IBM Corporation
+ * 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.
*/
// extra messages from the client to the target
module weinre {
interface WeinreExtraClientCommands {
-
+
void getDatabases(out Object[] databaseRecords);
};
diff --git a/weinre.server/interfaces/WeinreExtraTargetEvents.idl b/weinre.server/interfaces/WeinreExtraTargetEvents.idl
index 58a6b72..0f2ca54 100644
--- a/weinre.server/interfaces/WeinreExtraTargetEvents.idl
+++ b/weinre.server/interfaces/WeinreExtraTargetEvents.idl
@@ -1,15 +1,27 @@
/*
- * weinre is available under *either* the terms of the modified BSD license *or* the
- * MIT License (2008). See http://opensource.org/licenses/alphabetical for full text.
- *
- * Copyright (c) 2011 IBM Corporation
+ * 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.
*/
// extra messages from the target to the client
module weinre {
interface WeinreExtraTargetEvents {
-
+
void databaseOpened(in Object databaseRecord);
};
diff --git a/weinre.server/interfaces/WeinreTargetCommands.idl b/weinre.server/interfaces/WeinreTargetCommands.idl
index ed3f051..253229c 100644
--- a/weinre.server/interfaces/WeinreTargetCommands.idl
+++ b/weinre.server/interfaces/WeinreTargetCommands.idl
@@ -1,15 +1,27 @@
/*
- * weinre is available under *either* the terms of the modified BSD license *or* the
- * MIT License (2008). See http://opensource.org/licenses/alphabetical for full text.
- *
- * Copyright (c) 2010, 2011 IBM Corporation
+ * 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.
*/
// messages from the target to the server
module weinre {
interface WeinreTargetCommands {
-
+
void registerTarget(int url, out string targetId);
void sendClientCallback(string callbackId, Object args);
diff --git a/weinre.server/interfaces/WeinreTargetEvents.idl b/weinre.server/interfaces/WeinreTargetEvents.idl
index 5326b4b..b9060fb 100644
--- a/weinre.server/interfaces/WeinreTargetEvents.idl
+++ b/weinre.server/interfaces/WeinreTargetEvents.idl
@@ -1,20 +1,32 @@
/*
- * weinre is available under *either* the terms of the modified BSD license *or* the
- * MIT License (2008). See http://opensource.org/licenses/alphabetical for full text.
- *
- * Copyright (c) 2010, 2011 IBM Corporation
+ * 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.
*/
// messages from the server to the target
module weinre {
interface WeinreTargetEvents {
-
+
void connectionCreated(string clientId, string targetId);
void connectionDestroyed(string clientId, string targetId);
-
+
void sendCallback(string callbackId, Object result);
-
+
};
}
diff --git a/weinre.server/src/weinre/server/Channel.java b/weinre.server/src/weinre/server/Channel.java
index 0e19b12..6401e42 100644
--- a/weinre.server/src/weinre/server/Channel.java
+++ b/weinre.server/src/weinre/server/Channel.java
@@ -1,8 +1,20 @@
/*
- * weinre is available under *either* the terms of the modified BSD license *or* the
- * MIT License (2008). See http://opensource.org/licenses/alphabetical for full text.
+ * 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
*
- * Copyright (c) 2010, 2011 IBM Corporation
+ * 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 weinre.server;
diff --git a/weinre.server/src/weinre/server/ChannelManager.java b/weinre.server/src/weinre/server/ChannelManager.java
index 77f326a..2926b09 100644
--- a/weinre.server/src/weinre/server/ChannelManager.java
+++ b/weinre.server/src/weinre/server/ChannelManager.java
@@ -1,8 +1,20 @@
/*
- * weinre is available under *either* the terms of the modified BSD license *or* the
- * MIT License (2008). See http://opensource.org/licenses/alphabetical for full text.
- *
- * Copyright (c) 2010, 2011 IBM Corporation
+ * 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 weinre.server;
@@ -19,11 +31,11 @@
private Map<String, Channel> channelMap;
private List<ChannelManagerEventListener> eventListeners;
-
+
//---------------------------------------------------------------
private ChannelManager() {
super();
-
+
channelMap = new HashMap<String, Channel>();
eventListeners = new ArrayList<ChannelManagerEventListener>();
}
@@ -32,7 +44,7 @@
public void addEventListener(ChannelManagerEventListener listener) {
eventListeners.add(listener);
}
-
+
//---------------------------------------------------------------
public void removeEventListener(ChannelManagerEventListener listener) {
eventListeners.add(listener);
@@ -44,7 +56,7 @@
listener.channelRegistered(channel);
}
}
-
+
//---------------------------------------------------------------
private void fireDeregisteredEvent(Channel channel) {
for (ChannelManagerEventListener listener: eventListeners) {
@@ -56,43 +68,43 @@
public Channel getChannel(String channelName) {
return channelMap.get(channelName);
}
-
+
//---------------------------------------------------------------
public Channel getChannel(String channelName, String remoteAddress) {
Channel channel = getChannel(channelName);
if (null == channel) return null;
-
+
if (!channel.getRemoteAddress().equals(remoteAddress)) return null;
-
+
return channel;
}
-
+
//---------------------------------------------------------------
public List<Channel> getChannels() {
return new ArrayList<Channel>(channelMap.values());
}
-
+
//---------------------------------------------------------------
public Channel registerChannel(String pathPrefix, String channelName, String id, String remoteHost, String remoteAddress) {
if (channelMap.containsKey(channelName)) return null;
-
+
Channel channel = new Channel(pathPrefix, channelName, id, remoteHost, remoteAddress);
channelMap.put(channelName, channel);
-
+
fireRegisteredEvent(channel);
-
+
return channel;
}
-
+
//---------------------------------------------------------------
public Channel deregisterChannel(String channelName) {
Channel channel = getChannel(channelName);
if (null == channel) return null;
-
+
fireDeregisteredEvent(channel);
-
+
channelMap.remove(channelName);
-
+
return channel;
}
diff --git a/weinre.server/src/weinre/server/ChannelManagerEventListener.java b/weinre.server/src/weinre/server/ChannelManagerEventListener.java
index e97ef7c..f15f2dd 100644
--- a/weinre.server/src/weinre/server/ChannelManagerEventListener.java
+++ b/weinre.server/src/weinre/server/ChannelManagerEventListener.java
@@ -1,18 +1,30 @@
/*
- * weinre is available under *either* the terms of the modified BSD license *or* the
- * MIT License (2008). See http://opensource.org/licenses/alphabetical for full text.
- *
- * Copyright (c) 2010, 2011 IBM Corporation
+ * 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 weinre.server;
//-------------------------------------------------------------------
public interface ChannelManagerEventListener {
-
+
//---------------------------------------------------------------
public void channelRegistered(Channel channel);
-
+
//---------------------------------------------------------------
public void channelDeregistered(Channel channel);
}
diff --git a/weinre.server/src/weinre/server/Client.java b/weinre.server/src/weinre/server/Client.java
index 4eed575..d2118cc 100644
--- a/weinre.server/src/weinre/server/Client.java
+++ b/weinre.server/src/weinre/server/Client.java
@@ -1,8 +1,20 @@
/*
- * weinre is available under *either* the terms of the modified BSD license *or* the
- * MIT License (2008). See http://opensource.org/licenses/alphabetical for full text.
- *
- * Copyright (c) 2010, 2011 IBM Corporation
+ * 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 weinre.server;
@@ -15,7 +27,7 @@
public class Client extends Connector {
private Target connectedTarget;
-
+
//---------------------------------------------------------------
public Client(Channel channel) {
super(channel);
@@ -26,18 +38,18 @@
public boolean isClient() {
return true;
}
-
+
//---------------------------------------------------------------
public Target getConnectedTarget() {
return connectedTarget;
}
-
+
//---------------------------------------------------------------
protected void _connect(Target target) {
if (null == target) return;
-
+
Lock.lock();
-
+
try {
connectedTarget = target;
}
@@ -45,13 +57,13 @@
Lock.unlock();
}
}
-
+
//---------------------------------------------------------------
protected void _disconnect(Target target) {
if (null == target) return;
-
+
Lock.lock();
-
+
try {
connectedTarget = null;
}
@@ -59,22 +71,22 @@
Lock.unlock();
}
}
-
+
//---------------------------------------------------------------
public JSONObject getDescription() {
JSONObject result = new JSONObject();
-
+
try {
result.put("channel", getChannel().getName());
result.put("id", getChannel().getId());
result.put("hostName", getChannel().getRemoteHost());
result.put("connectedTargetIds", new JSONArray());
- }
+ }
catch (JSONException e) {
throw new RuntimeException(e);
}
return result;
}
-
+
}
diff --git a/weinre.server/src/weinre/server/ConnectionManager.java b/weinre.server/src/weinre/server/ConnectionManager.java
index 7a3ccc1..88994cc 100644
--- a/weinre.server/src/weinre/server/ConnectionManager.java
+++ b/weinre.server/src/weinre/server/ConnectionManager.java
@@ -1,8 +1,20 @@
/*
- * weinre is available under *either* the terms of the modified BSD license *or* the
- * MIT License (2008). See http://opensource.org/licenses/alphabetical for full text.
- *
- * Copyright (c) 2010, 2011 IBM Corporation
+ * 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 weinre.server;
@@ -17,15 +29,15 @@
public class ConnectionManager {
static final public ConnectionManager $ = new ConnectionManager();
-
+
private Map<String,Client> clientMap;
private Map<String,Target> targetMap;
- private boolean listening = false;
+ private boolean listening = false;
//---------------------------------------------------------------
private ConnectionManager() {
super();
-
+
clientMap = Collections.synchronizedMap(new HashMap<String,Client>());
targetMap = Collections.synchronizedMap(new HashMap<String,Target>());
}
@@ -34,9 +46,9 @@
public void startChannelListener() {
if (listening) return;
listening = true;
-
+
ChannelManager.$.addEventListener(new ChannelManagerEventListener() {
-
+
@Override
public void channelRegistered(Channel channel) {
}
@@ -51,7 +63,7 @@
}
});
}
-
+
//---------------------------------------------------------------
public void addClient(Client client) {
clientMap.put(client.getName(), client);
@@ -89,26 +101,26 @@
//---------------------------------------------------------------
public List<Client> getClients(String id) {
List<Client> result = new ArrayList<Client>();
-
+
for (Client client: clientMap.values()) {
if (client.getId().equals(id)) {
result.add(client);
}
}
-
+
return result;
}
//---------------------------------------------------------------
public List<Target> getTargets(String id) {
List<Target> result = new ArrayList<Target>();
-
+
for (Target target: targetMap.values()) {
if (target.getId().equals(id)) {
result.add(target);
}
}
-
+
return result;
}
@@ -120,10 +132,10 @@
if (connectedTarget == target) return;
disconnect(client, connectedTarget);
-
+
client._connect(target);
target._connect(client);
-
+
_sendConnectionCreatedEvent(client, target);
}
@@ -141,12 +153,12 @@
private void _sendConnectionCreatedEvent(Client client, Target target) {
_sendConnectionEvent(client, target, "connectionCreated");
}
-
+
//---------------------------------------------------------------
private void _sendConnectionDestroyedEvent(Client client, Target target) {
_sendConnectionEvent(client, target, "connectionDestroyed");
}
-
+
//---------------------------------------------------------------
private void _sendConnectionEvent(Client client, Target target, String message) {
String clientName = client.getChannel().getName();
@@ -155,7 +167,7 @@
_sendAllClientsEvent("WeinreClientEvents", client.getId(), message, clientName, targetName);
target.getChannel().sendEvent("WeinreTargetEvents", message, clientName, targetName);
}
-
+
//---------------------------------------------------------------
private void _sendAllClientsEvent(String intfName, String id, String message, Object... args) {
for (Client aClient: getClients(id)) {
@@ -166,7 +178,7 @@
//---------------------------------------------------------------
protected void closeConnector(Connector connector) {
if (null == connector) return;
-
+
if (connector.isClient()) _closeClient((Client)connector);
if (connector.isTarget()) _closeTarget((Target)connector);
}
@@ -179,21 +191,21 @@
if (null != target) {
disconnect(client, target);
}
-
+
_removeClient(client);
}
-
+
//---------------------------------------------------------------
private void _closeTarget(Target target) {
if (null == target) return;
List<Client> clients = target.getConnectedClients();
-
+
for (Client client: clients) {
disconnect(client, target);
}
-
+
_removeTarget(target);
}
-
+
}
diff --git a/weinre.server/src/weinre/server/Connector.java b/weinre.server/src/weinre/server/Connector.java
index 80c2895..5497895 100644
--- a/weinre.server/src/weinre/server/Connector.java
+++ b/weinre.server/src/weinre/server/Connector.java
@@ -1,8 +1,20 @@
/*
- * weinre is available under *either* the terms of the modified BSD license *or* the
- * MIT License (2008). See http://opensource.org/licenses/alphabetical for full text.
- *
- * Copyright (c) 2010, 2011 IBM Corporation
+ * 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 weinre.server;
@@ -18,78 +30,78 @@
abstract public class Connector {
static final protected Lock Lock = new ReentrantLock();
-
+
private Channel channel;
-
+
//---------------------------------------------------------------
public Connector(Channel channel) {
super();
-
+
this.channel = channel;
channel._setConnector(this);
}
-
+
//---------------------------------------------------------------
protected void _register() {
if (isClient()) ConnectionManager.$.addClient((Client) this);
if (isTarget()) ConnectionManager.$.addTarget((Target) this);
}
-
+
//---------------------------------------------------------------
public Channel getChannel() {
return channel;
}
-
+
//---------------------------------------------------------------
public String getName() {
return channel.getName();
}
-
+
//---------------------------------------------------------------
public String getId() {
return channel.getId();
}
-
+
//---------------------------------------------------------------
public List<Connector> getConnections() {
List<Connector> result = new ArrayList<Connector>();
-
+
if (isClient()) {
Connector target = ((Client) this).getConnectedTarget();
if (null != target) {
result.add(target);
}
}
-
+
else if (isTarget()) {
result.addAll(((Target) this).getConnectedClients());
}
-
+
else {
throw new RuntimeException("connector which isn't a client or target");
}
-
+
return result;
}
-
+
//---------------------------------------------------------------
abstract public JSONObject getDescription();
-
+
//---------------------------------------------------------------
public boolean isClosed() {
return channel.isClosed();
}
-
+
//---------------------------------------------------------------
public boolean isClient() {
return false;
}
-
+
//---------------------------------------------------------------
public boolean isTarget() {
return false;
}
-
+
//---------------------------------------------------------------
public String toString() {
return getClass().getName() + "{" + channel + "}";
diff --git a/weinre.server/src/weinre/server/ConsoleOutputStream.java b/weinre.server/src/weinre/server/ConsoleOutputStream.java
index dc62c2d..307addc 100644
--- a/weinre.server/src/weinre/server/ConsoleOutputStream.java
+++ b/weinre.server/src/weinre/server/ConsoleOutputStream.java
@@ -1,8 +1,20 @@
/*
- * weinre is available under *either* the terms of the modified BSD license *or* the
- * MIT License (2008). See http://opensource.org/licenses/alphabetical for full text.
- *
- * Copyright (c) 2010, 2011 IBM Corporation
+ * 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 weinre.server;
@@ -23,7 +35,7 @@
static public PrintStream newPrintStream(Main main, PrintStream originalStream, boolean stdout) {
return new PrintStream(new ConsoleOutputStream(main, originalStream, stdout));
}
-
+
//---------------------------------------------------------------
public ConsoleOutputStream(Main main, PrintStream originalStream, boolean stdout) {
this.main = main;
@@ -31,17 +43,17 @@
this.stdout = stdout;
this.stringBuffer = new StringBuffer();
}
-
+
//---------------------------------------------------------------
@Override
public void write(int c) throws IOException {
if (c == 0x0D) return;
-
+
if (c != 0x0A) {
stringBuffer.append(Character.toChars(c));
return;
}
-
+
String line = stringBuffer.toString();
stringBuffer = new StringBuffer();
_writeLine(line);
@@ -50,7 +62,7 @@
//---------------------------------------------------------------
private void _writeLine(String line) {
originalStream.println(line);
-
+
main.addServerConsoleMessage(line, stdout);
}
diff --git a/weinre.server/src/weinre/server/ExtensionManager.java b/weinre.server/src/weinre/server/ExtensionManager.java
index 3977e86..6831904 100644
--- a/weinre.server/src/weinre/server/ExtensionManager.java
+++ b/weinre.server/src/weinre/server/ExtensionManager.java
@@ -1,8 +1,20 @@
/*
- * weinre is available under *either* the terms of the modified BSD license *or* the
- * MIT License (2008). See http://opensource.org/licenses/alphabetical for full text.
- *
- * Copyright (c) 2011 IBM Corporation
+ * 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 weinre.server;
@@ -17,50 +29,50 @@
//-------------------------------------------------------------------
public class ExtensionManager {
- static private File weinreHomeDir = null;
- static private File weinreExtDir = null;
+ static private File weinreHomeDir = null;
+ static private File weinreExtDir = null;
static private long weinreExtDate = 0L;
static private String[] extensions = null;
-
+
static private String[] EMPTY_STRING_ARRAY = {};
//---------------------------------------------------------------
static {
initExtensions();
}
-
+
//---------------------------------------------------------------
static public String[] getExtensions() {
if (null == weinreExtDir) return extensions;
-
+
if (weinreExtDate != weinreExtDir.lastModified()) {
initExtensions();
}
-
+
return extensions;
}
-
+
//---------------------------------------------------------------
// path: /client/extensions/weinre-ext-sample/extension.html
static public Resource getResource(String path) throws MalformedURLException {
if (null == weinreExtDir) return null;
-
+
File resourceFile = new File(weinreExtDir, path.substring(18));
if (!resourceFile.exists()) return null;
-
+
try {
return Resource.newResource(resourceFile.toURI().toURL().toExternalForm(), false);
- }
+ }
catch (IOException e) {
throw new MalformedURLException();
}
}
-
+
//---------------------------------------------------------------
static private void initExtensions() {
-
+
extensions = EMPTY_STRING_ARRAY;
-
+
weinreHomeDir = new File(System.getProperty("user.home"), ".weinre");
if (!weinreHomeDir.isDirectory()) {
Main.info("extensions not enabled: ~/.weinre is not a directory");
@@ -73,23 +85,23 @@
Main.info("extensions not enabled: ~/.weinre/extensions is not a directory");
return;
}
-
+
List<String> extensionList = new ArrayList<String>();
-
+
String[] entries = weinreExtDir.list();
for (String entry: entries) {
if (entry.startsWith(".")) continue;
-
+
File extDir = new File(weinreExtDir, entry);
if (!extDir.isDirectory()) continue;
-
+
File extensionHtml = new File(extDir, "extension.html");
if (!extensionHtml.isFile()) continue;
-
+
extensionList.add(entry);
}
-
+
extensions = extensionList.toArray(EMPTY_STRING_ARRAY);
}
-
+
}
diff --git a/weinre.server/src/weinre/server/Main.java b/weinre.server/src/weinre/server/Main.java
index 4968fee..c762142 100644
--- a/weinre.server/src/weinre/server/Main.java
+++ b/weinre.server/src/weinre/server/Main.java
@@ -1,8 +1,20 @@
/*
- * weinre is available under *either* the terms of the modified BSD license *or* the
- * MIT License (2008). See http://opensource.org/licenses/alphabetical for full text.
- *
- * Copyright (c) 2010, 2011 IBM Corporation
+ * 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 weinre.server;
@@ -19,10 +31,10 @@
//-------------------------------------------------------------------
public class Main {
-
+
private static ServerSettings Settings;
private static Logger Logger;
-
+
public Server server;
private PrintStream consoleStdout;
private PrintStream consoleStderr;
@@ -30,7 +42,7 @@
//---------------------------------------------------------------
static public void main(String[] args) throws Throwable {
Main main = new Main(args);
-
+
main.run();
}
@@ -53,43 +65,43 @@
//---------------------------------------------------------------
public Main(String[] args) {
super();
-
+
Settings = ServerSettings.getOptions(args);
if (null == Settings) System.exit(0);
-
+
if (null != Settings.getMessageLog()) {
Settings.getMessageLog().println("[");
}
-
+
Runtime.getRuntime().addShutdownHook(onShutdownThread());
-
+
consoleStdout = ConsoleOutputStream.newPrintStream(this, System.out, true);
consoleStderr = ConsoleOutputStream.newPrintStream(this, System.err, false);
System.setOut(consoleStdout);
System.setErr(consoleStderr);
}
-
+
//---------------------------------------------------------------
public void run() throws Throwable, Exception {
httpServerStart();
httpServerWaitTillDone();
exit();
}
-
+
//---------------------------------------------------------------
private Thread onShutdownThread() {
return new Thread(new Runnable() {
public void run() {
PrintWriter messageLog = Settings.getMessageLog();
if (null == messageLog) return;
-
+
messageLog.println("null ]");
messageLog.close();
}
});
}
-
+
//---------------------------------------------------------------
public int exit() {
if (null != server) {
@@ -107,8 +119,8 @@
warn("exception stopping the server: " + e);
e.printStackTrace();
}
- }
-
+ }
+
System.exit(0);
return 0;
}
@@ -117,7 +129,7 @@
public void httpServerStart() {
// get the default logger - this should be the first thing to touch the log
Logger defaultLog = Log.getLog();
-
+
if (defaultLog instanceof StdErrLog) {
((StdErrLog) defaultLog).setHideStacks(true);
}
@@ -125,7 +137,7 @@
// create a special logger for weinre messages
Logger = org.eclipse.jetty.util.log.Log.getLogger("weinre");
Logger.setDebugEnabled(Settings.getVerbose());
-
+
server = null;
try {
server = new HttpServer(this, Settings).run();
@@ -133,7 +145,7 @@
catch (Throwable e) {
severeError("exception launching server: " + e);
}
-
+
ConnectionManager.$.startChannelListener();
WatchDog.start();
MessageHandler.start();
@@ -148,20 +160,20 @@
severeError("exception waiting for server to stop: " + e);
}
}
-
+
//---------------------------------------------------------------
public void serverStarted() {
}
-
+
//---------------------------------------------------------------
public void addServerConsoleMessage(String line, boolean stdout) {
}
-
+
//---------------------------------------------------------------
public int severeError(String message) {
Logger.warn(message);
Logger.warn("exiting...");
return exit();
}
-
+
}
diff --git a/weinre.server/src/weinre/server/MessageHandler.java b/weinre.server/src/weinre/server/MessageHandler.java
index bbddc9f..da878ba 100644
--- a/weinre.server/src/weinre/server/MessageHandler.java
+++ b/weinre.server/src/weinre/server/MessageHandler.java
@@ -1,8 +1,20 @@
/*
- * weinre is available under *either* the terms of the modified BSD license *or* the
- * MIT License (2008). See http://opensource.org/licenses/alphabetical for full text.
- *
- * Copyright (c) 2010, 2011 IBM Corporation
+ * 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 weinre.server;
@@ -24,40 +36,40 @@
//---------------------------------------------------------------
static public void start() {
final MessageHandler messageHandler = new MessageHandler();
-
+
Runnable runnable = new Runnable() {
public void run() {
while (true) {
- try {
+ try {
messageHandler.handleMessages();
- Thread.sleep(250);
- }
+ Thread.sleep(250);
+ }
catch(InterruptedException e) {
throw new RuntimeException(e);
}
}
}
};
-
+
Thread thread = new Thread(runnable, messageHandler.getClass().toString());
thread.start();
}
-
+
//---------------------------------------------------------------
private MessageHandler() {
messageLog = Main.getSettings().getMessageLog();
}
-
+
//---------------------------------------------------------------
private void handleMessages() throws InterruptedException {
List<Channel> channels = ChannelManager.$.getChannels();
-
+
for (Channel channel: channels) {
List<String> requestss = channel.getRequests(0);
-
+
for (String requests: requestss) {
JSONArray acc;
-
+
try {
acc = new JSONArray(requests);
}
@@ -65,7 +77,7 @@
Main.warn("error parsing requests: " + e + ": '" + requests + "'");
continue;
}
-
+
int size = acc.length();
for (int i=0; i<size; i++) {
JSONObject accRequest;
@@ -74,18 +86,18 @@
request = acc.getString(i);
accRequest = new JSONObject(request);
accRequest.put("_from", channel.getName() + "#" + channel.getId());
-
+
if (null != messageLog) {
messageLog.print(accRequest.toString(true));
messageLog.println(",");
}
-
+
}
catch (JSONException e) {
Main.warn("error parsing request: " + e + ": '" + request + "'");
continue;
}
-
+
String intfName;
String methodName;
JSONArray args;
@@ -96,22 +108,22 @@
} catch (JSONException e) {
throw new RuntimeException(e);
}
-
+
if (null == intfName) {
Main.warn("no interface specified in request: " + request);
continue;
}
-
+
if (null == methodName) {
Main.warn("no methodName specified in request: " + request);
continue;
}
-
+
if (null == args) {
Main.warn("no args specified in request: " + request);
continue;
}
-
+
serviceMethodInvoker(channel, intfName, methodName, args);
}
}
@@ -129,7 +141,7 @@
String methodSignatureParms = intfName + "." + methodName + "(" + argsJSON.toString() + ")";
Main.debug(channel.getName() + ": recv " + methodSignatureParms);
}
-
+
try {
service = channel.getService(intfName);
}
@@ -137,35 +149,35 @@
Main.warn("unable to get service object for: " + methodSignature + "; " + e);
return;
}
-
+
if (null == service) {
redirectToConnections(channel, intfName, methodName, argsJSON);
return;
}
-
+
Class serviceClass = service.getClass();
-
+
List<Object> args = new ArrayList<Object>(argsJSON);
-
+
for (Method method: serviceClass.getMethods()) {
if (!method.getName().equals(methodName)) continue;
-
+
if (method.getParameterTypes().length != args.size() + 1) {
Main.warn("invalid number of parameters specified for : " + methodSignature);
return;
}
-
+
args.add(0, channel);
-
+
try {
method.invoke(service, args.toArray());
- }
+ }
catch (IllegalArgumentException e) {
Main.warn("illegal argument exception invoking : " + methodSignature + "; " + e);
- }
+ }
catch (IllegalAccessException e) {
Main.warn("illegal access exception invoking : " + methodSignature + "; " + e);
- }
+ }
catch (InvocationTargetException e) {
Throwable te = e.getTargetException();
Main.warn("invocation target exception invoking : " + methodSignature + "; " + te);
@@ -174,7 +186,7 @@
catch (RuntimeException e) {
Main.warn("invocation runtime exception invoking : " + methodSignature + "; " + e);
}
-
+
return;
}
@@ -185,13 +197,13 @@
private void redirectToConnections(Channel channel, String interfaceName, String methodName, JSONArray args) {
Connector connector = channel.getConnector();
if (null == connector) return;
-
+
List<Connector> connections = connector.getConnections();
-
+
for (Connector connection: connections) {
connection.getChannel().sendEvent(interfaceName, methodName, args.toArray());
- }
+ }
}
-
+
}
diff --git a/weinre.server/src/weinre/server/MessageQueue.java b/weinre.server/src/weinre/server/MessageQueue.java
index 09937ea..3c464eb 100644
--- a/weinre.server/src/weinre/server/MessageQueue.java
+++ b/weinre.server/src/weinre/server/MessageQueue.java
@@ -1,8 +1,20 @@
/*
- * weinre is available under *either* the terms of the modified BSD license *or* the
- * MIT License (2008). See http://opensource.org/licenses/alphabetical for full text.
- *
- * Copyright (c) 2010, 2011 IBM Corporation
+ * 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 weinre.server;
@@ -15,10 +27,10 @@
/**
* A type of blocking queue.
- *
+ *
* - can be shutdown; subsequent add() or getAll() calls throw ISE
* - getAll() takes all items off the queue
- * - if there are simultaneous getAll() calls, queued items may be split between them
+ * - if there are simultaneous getAll() calls, queued items may be split between them
* - current use case calls for one reader, so previous item not relevant
*/
public class MessageQueue<E> {
@@ -26,26 +38,26 @@
private BlockingQueue<E> queue;
private boolean closed;
private Object closeLock;
-
+
//---------------------------------------------------------------
public MessageQueue() {
super();
-
+
queue = new LinkedBlockingQueue<E>();
closed = false;
closeLock = new Object();
}
-
+
//---------------------------------------------------------------
public void shutdown() {
synchronized(closeLock) {
if (closed) return;
-
+
closed = true;
queue.clear();
}
}
-
+
//---------------------------------------------------------------
public void add(E item) {
synchronized(closeLock) {
@@ -54,7 +66,7 @@
queue.add(item);
}
-
+
//---------------------------------------------------------------
public List<E> getAll(int timeout, TimeUnit timeUnit) throws InterruptedException {
synchronized(closeLock) {
@@ -63,10 +75,10 @@
// create our result list
List<E> result = new LinkedList<E>();
-
+
// wait for the first item
E item = queue.poll(timeout, timeUnit);
-
+
// nothing there? return empty list
if (null == item) return result;
@@ -78,11 +90,11 @@
while ((item = queue.poll()) != null) {
result.add(item);
}
-
+
// return list
return result;
}
-
+
//---------------------------------------------------------------
public String toString() {
return getClass().getName() + "{" + queue.size() + "}";
diff --git a/weinre.server/src/weinre/server/ServerSettings.java b/weinre.server/src/weinre/server/ServerSettings.java
index a2c73c7..4a43094 100644
--- a/weinre.server/src/weinre/server/ServerSettings.java
+++ b/weinre.server/src/weinre/server/ServerSettings.java
@@ -1,8 +1,20 @@
/*
- * weinre is available under *either* the terms of the modified BSD license *or* the
- * MIT License (2008). See http://opensource.org/licenses/alphabetical for full text.
- *
- * Copyright (c) 2010, 2011 IBM Corporation
+ * 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 weinre.server;
@@ -33,7 +45,7 @@
public class ServerSettings {
final static private String BoundHostAllConstant = "-all-";
-
+
private int httpPort = 8080;
private String boundHost = "localhost";
// private boolean useProxy = false;
@@ -43,7 +55,7 @@
private int deathTimeoutSeconds;
private Properties fileProperties;
private PrintWriter messageLog;
-
+
//---------------------------------------------------------------
static public ServerSettings getOptions(String[] commandLine) {
ServerSettings settings = new ServerSettings();
@@ -53,14 +65,14 @@
//---------------------------------------------------------------
private ServerSettings() {
super();
-
+
fileProperties = fromPropertiesFile();
}
//---------------------------------------------------------------
private Options getOptions() {
Options options = new Options();
-
+
options.addOption("?", false, "display help");
options.addOption("h", "help", false, "display help");
options.addOption("httpPort", true, "tcp/ip port to use for the http server");
@@ -71,7 +83,7 @@
options.addOption("readTimeout", true, "seconds before timing out HTTP GETs");
options.addOption("deathTimeout", true, "seconds before considering connector dead");
options.addOption("messageLog", true, "file to log messages to");
-
+
return options;
}
@@ -87,20 +99,20 @@
result.put("reuseAddr", this.reuseAddr + "");
result.put("readTimeout", this.readTimeoutSeconds + "");
result.put("deathTimeout", this.deathTimeoutSeconds + "");
-
+
return result;
}
//---------------------------------------------------------------
private Properties fromPropertiesFile() {
Properties result = Utility.readPropertiesFile("server.properties");
-
+
// ya, Properties doesn't trim space off values
for (String key: result.stringPropertyNames()) {
String val = result.getProperty(key);
result.setProperty(key, val.trim());
}
-
+
return result;
}
@@ -112,7 +124,7 @@
CommandLine commandLine;
try {
commandLine = parser.parse(options, commandLineArgs);
- }
+ }
catch (ParseException e) {
error(e.getMessage());
return null;
@@ -145,14 +157,14 @@
//---------------------------------------------------------------
private int getIntFromOption(CommandLine commandLine, String name, int defaultValue, int min, int max) {
int result = defaultValue;
-
+
String stringValue = commandLine.getOptionValue(name);
if (null == stringValue) {
stringValue = fileProperties.getProperty(name);
}
if (null == stringValue) return defaultValue;
-
+
try {
result = Integer.parseInt(stringValue);
}
@@ -160,14 +172,14 @@
error(name + " parameter must be numeric");
return result;
}
-
+
if ((result < min) || (result > 0x00FFFF)) {
error(name + " parameter must be between " + min + " and " + max);
}
return result;
}
-
+
//---------------------------------------------------------------
private String getStringFromOption(CommandLine commandLine, String name, String defaultValue) {
String stringValue = commandLine.getOptionValue(name);
@@ -176,21 +188,21 @@
}
if (null == stringValue) return defaultValue;
-
+
return stringValue;
}
-
+
//---------------------------------------------------------------
private boolean getBooleanFromOption(CommandLine commandLine, String name, boolean defaultValue) {
boolean result = defaultValue;
-
+
String stringValue = commandLine.getOptionValue(name);
if (null == stringValue) {
stringValue = fileProperties.getProperty(name);
}
if (null == stringValue) return defaultValue;
-
+
result = Boolean.parseBoolean(stringValue);
return result;
@@ -198,20 +210,20 @@
//---------------------------------------------------------------
private PrintWriter getPrintWriterFromOption(CommandLine commandLine, String name) {
-
+
String fileName = commandLine.getOptionValue(name);
if (null == fileName) {
fileName = fileProperties.getProperty(name);
}
if (null == fileName) return null;
-
+
File file = new File(fileName);
-
+
try {
FileWriter fileWriter = new FileWriter(file);
return new PrintWriter(fileWriter);
- }
+ }
catch (IOException e) {
error(name + " parameter file name '" + fileName + "' cannot be opened for writing.");
return null;
@@ -222,28 +234,28 @@
private void error(String message) {
System.out.println("error with command-line option: " + message);
}
-
+
//---------------------------------------------------------------
private void printHelp(Options options) {
new HelpFormatter().printHelp("java -jar weinre.jar [options]", options);
}
-
+
//---------------------------------------------------------------
public int getHttpPort() {
return httpPort;
}
-
+
//---------------------------------------------------------------
public String getBoundHost() {
return boundHost;
}
-
+
//---------------------------------------------------------------
public String[] getBoundHosts() {
if (getBoundHostValue() != null) {
return new String[] { getBoundHost() };
}
-
+
ArrayList<String> hosts = new ArrayList<String>();
List<NetworkInterface> networkInterfaces;
try {
@@ -252,45 +264,45 @@
catch (SocketException e) {
return new String[]{"localhost"};
}
-
+
for (NetworkInterface networkInterface: networkInterfaces) {
List<InetAddress> inetAddresses = Collections.list(networkInterface.getInetAddresses());
-
+
for (InetAddress inetAddress: inetAddresses) {
hosts.add(inetAddress.getHostName());
}
}
-
+
return hosts.toArray(new String[]{});
}
-
+
//---------------------------------------------------------------
public String getBoundHostValue() {
if (BoundHostAllConstant.equals(boundHost)) return null;
-
+
return boundHost;
}
-
+
//---------------------------------------------------------------
public boolean getVerbose() {
return verbose;
}
-
+
//---------------------------------------------------------------
public int getReadTimeoutSeconds() {
return readTimeoutSeconds;
}
-
+
//---------------------------------------------------------------
public int getDeathTimeoutSeconds() {
return deathTimeoutSeconds;
}
-
+
//---------------------------------------------------------------
public boolean useProxy() {
return false; // useProxy;
}
-
+
//---------------------------------------------------------------
public boolean reuseAddr() {
return reuseAddr;
@@ -307,12 +319,12 @@
if (null == hostName) return "localhost";
return hostName;
}
-
+
//---------------------------------------------------------------
@SuppressWarnings("unused")
private String getSuperNiceHostName() {
String hostName = getBoundHost();
-
+
// get the host address used
InetAddress inetAddress;
try {
diff --git a/weinre.server/src/weinre/server/Target.java b/weinre.server/src/weinre/server/Target.java
index ec6a986..8bb3113 100644
--- a/weinre.server/src/weinre/server/Target.java
+++ b/weinre.server/src/weinre/server/Target.java
@@ -1,8 +1,20 @@
/*
- * weinre is available under *either* the terms of the modified BSD license *or* the
- * MIT License (2008). See http://opensource.org/licenses/alphabetical for full text.
- *
- * Copyright (c) 2010, 2011 IBM Corporation
+ * 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 weinre.server;
@@ -20,31 +32,31 @@
private List<Client> connectedClients;
private String url;
-
+
//---------------------------------------------------------------
public Target(Channel channel, String url) {
super(channel);
-
+
connectedClients = new ArrayList<Client>();
this.url = url;
_register();
}
-
+
//---------------------------------------------------------------
public String getURL() {
return this.url;
}
-
+
//---------------------------------------------------------------
public boolean isTarget() {
return true;
}
-
+
//---------------------------------------------------------------
public List<Client> getConnectedClients() {
List<Client> result = new LinkedList<Client>();
-
+
Lock.lock();
try {
result.addAll(connectedClients);
@@ -52,32 +64,32 @@
finally {
Lock.unlock();
}
-
+
return result;
}
-
+
//---------------------------------------------------------------
protected void _connect(Client client) {
if (null == client) return;
-
+
Lock.lock();
-
+
try {
if (connectedClients.contains(client)) return;
-
+
connectedClients.add(client);
}
finally {
Lock.unlock();
}
}
-
+
//---------------------------------------------------------------
protected void _disconnect(Client client) {
if (null == client) return;
-
+
Lock.lock();
-
+
try {
if (!connectedClients.contains(client)) return;
@@ -91,7 +103,7 @@
//---------------------------------------------------------------
public JSONObject getDescription() {
JSONObject result = new JSONObject();
-
+
try {
result.put("channel", getChannel().getName());
result.put("id", getChannel().getId());
@@ -101,8 +113,8 @@
} catch (JSONException e) {
throw new RuntimeException(e);
}
-
+
return result;
}
-
+
}
diff --git a/weinre.server/src/weinre/server/Utility.java b/weinre.server/src/weinre/server/Utility.java
index 260cc2b..cc1dca4 100644
--- a/weinre.server/src/weinre/server/Utility.java
+++ b/weinre.server/src/weinre/server/Utility.java
@@ -1,8 +1,20 @@
/*
- * weinre is available under *either* the terms of the modified BSD license *or* the
- * MIT License (2008). See http://opensource.org/licenses/alphabetical for full text.
- *
- * Copyright (c) 2010, 2011 IBM Corporation
+ * 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 weinre.server;
@@ -16,7 +28,7 @@
//-------------------------------------------------------------------
public class Utility {
-
+
static private int SequenceNumber = 1 + new SecureRandom().nextInt(Integer.MAX_VALUE - 1);
//---------------------------------------------------------------
@@ -25,16 +37,16 @@
//---------------------------------------------------------------
static public synchronized int getNextSequenceNumber() {
int result = SequenceNumber;
-
+
SequenceNumber = (result == Integer.MAX_VALUE) ? 1 : result + 1;
-
+
return result;
}
-
+
//---------------------------------------------------------------
static public String reverse(String string) {
char[] responseChars = string.toCharArray();
-
+
for (int i=0; i<responseChars.length/2; i++) {
char tmp = responseChars[responseChars.length-i-1];
responseChars[responseChars.length-i-1] = responseChars[i];
@@ -42,32 +54,32 @@
}
return String.valueOf(responseChars);
}
-
+
//---------------------------------------------------------------
static public byte[] reverse(byte[] data, int offset, int length) {
byte[] response = new byte[length];
-
+
for (int i=0; i<length; i++) {
response[i] = data[offset + length - i - 1];
}
return response;
}
-
+
//---------------------------------------------------------------
static public Properties readPropertiesFile(String fileName) {
Properties result = new Properties();
-
+
String userHome = System.getProperty("user.home");
if (null == userHome) {
Main.warn("System property user.home not set!");
return result;
}
-
+
File file = new File(new File(userHome, ".weinre"), fileName);
-
+
if (!file.exists()) return result;
-
+
FileReader fr = null;
try {
fr = new FileReader(file);
@@ -79,13 +91,13 @@
finally {
try { if (fr != null) fr.close(); } catch (Exception e) {}
}
-
+
// ya, Properties doesn't trim space off values
for (String key: result.stringPropertyNames()) {
String val = result.getProperty(key);
result.setProperty(key, val.trim());
}
-
+
return result;
}
@@ -96,7 +108,7 @@
Main.warn("System property user.home not set!");
return;
}
-
+
File file = new File(userHome, ".weinre");
if (!file.exists()) {
if (!file.mkdir()) {
@@ -104,12 +116,12 @@
return;
}
}
-
+
if (!file.isDirectory()) {
Main.warn("can't write ~/.weinre/" + fileName + " since ~/.weinre is not a directory");
return;
}
-
+
file = new File(file, fileName);
FileWriter fw = null;
try {
diff --git a/weinre.server/src/weinre/server/WatchDog.java b/weinre.server/src/weinre/server/WatchDog.java
index 9aa6553..327e287 100644
--- a/weinre.server/src/weinre/server/WatchDog.java
+++ b/weinre.server/src/weinre/server/WatchDog.java
@@ -1,8 +1,20 @@
/*
- * weinre is available under *either* the terms of the modified BSD license *or* the
- * MIT License (2008). See http://opensource.org/licenses/alphabetical for full text.
- *
- * Copyright (c) 2010, 2011 IBM Corporation
+ * 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 weinre.server;
@@ -13,31 +25,31 @@
public class WatchDog {
public static long ChannelLivelinessTimeout = 5000;
-
+
//---------------------------------------------------------------
static public void start() {
final WatchDog watchDog = new WatchDog();
-
+
Runnable runnable = new Runnable() {
- public void run() { watchDog.run(); }
+ public void run() { watchDog.run(); }
};
-
+
Thread thread = new Thread(runnable, watchDog.getClass().getName());
-
+
thread.start();
}
-
+
//---------------------------------------------------------------
private WatchDog() {
super();
}
-
+
//---------------------------------------------------------------
private void run() {
while(true) {
sleep();
-
+
checkForDeadChannels();
}
}
@@ -45,24 +57,24 @@
//---------------------------------------------------------------
private void checkForDeadChannels() {
List<Channel> channels = ChannelManager.$.getChannels();
-
+
int deathTimeout = Main.getSettings().getDeathTimeoutSeconds() * 1000;
-
+
long currentTime = System.currentTimeMillis();
for (Channel channel: channels) {
long lastRead = channel.getLastRead();
-
+
if (currentTime - lastRead > deathTimeout) {
channel.close();
}
}
}
-
+
//---------------------------------------------------------------
private void sleep() {
try {
Thread.sleep(1000);
- }
+ }
catch (InterruptedException e) {
throw new RuntimeException(e);
}
diff --git a/weinre.server/src/weinre/server/http/ClassPathResourceHandler.java b/weinre.server/src/weinre/server/http/ClassPathResourceHandler.java
index f6eccda..fc0e88f 100644
--- a/weinre.server/src/weinre/server/http/ClassPathResourceHandler.java
+++ b/weinre.server/src/weinre/server/http/ClassPathResourceHandler.java
@@ -1,8 +1,20 @@
/*
- * weinre is available under *either* the terms of the modified BSD license *or* the
- * MIT License (2008). See http://opensource.org/licenses/alphabetical for full text.
- *
- * Copyright (c) 2010, 2011 IBM Corporation
+ * 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 weinre.server.http;
@@ -24,7 +36,7 @@
//---------------------------------------------------------------
public ClassPathResourceHandler(String pathPrefix) {
super();
-
+
this.pathPrefix = pathPrefix;
}
@@ -38,17 +50,17 @@
if (path.startsWith("/client/extensions/")) {
return ExtensionManager.getResource(path);
}
-
+
path = pathPrefix + path;
URL url = getClass().getClassLoader().getResource(path);
if (url != null)
try {
return Resource.newResource(url);
- }
+ }
catch (IOException e) {
throw new MalformedURLException();
}
-
+
return null;
}
diff --git a/weinre.server/src/weinre/server/http/DebugHandler.java b/weinre.server/src/weinre/server/http/DebugHandler.java
index 13e3f77..8121f03 100644
--- a/weinre.server/src/weinre/server/http/DebugHandler.java
+++ b/weinre.server/src/weinre/server/http/DebugHandler.java
@@ -1,8 +1,20 @@
/*
- * weinre is available under *either* the terms of the modified BSD license *or* the
- * MIT License (2008). See http://opensource.org/licenses/alphabetical for full text.
- *
- * Copyright (c) 2010, 2011 IBM Corporation
+ * 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 weinre.server.http;
@@ -20,7 +32,7 @@
import org.eclipse.jetty.server.handler.HandlerWrapper;
-/**
+/**
* Debug Handler.
* A lightweight debug handler that can be used in production code.
* Details of the request and response are written to an output stream
@@ -37,9 +49,9 @@
catch(IOException e) {
throw new RuntimeException(e);
}
-
+
Response response = request.getResponse();
-
+
dump(System.out, target, request, response);
}
@@ -47,15 +59,15 @@
private void dump(PrintStream oStream, String target, Request request, Response response) {
oStream.println("----------------------------------------------------------");
oStream.println("target: " + target);
-
+
oStream.println("request:");
oStream.println(" headers:");
dumpHeaders(oStream, request);
-
+
oStream.println("response:");
oStream.println(" status: " + response.getStatus());
}
-
+
//---------------------------------------------------------------
@SuppressWarnings("rawtypes")
private void dumpHeaders(PrintStream oStream, Request request) {
diff --git a/weinre.server/src/weinre/server/http/FilteredRequestLogHandler.java b/weinre.server/src/weinre/server/http/FilteredRequestLogHandler.java
index 3a4fad1..1a88e88 100644
--- a/weinre.server/src/weinre/server/http/FilteredRequestLogHandler.java
+++ b/weinre.server/src/weinre/server/http/FilteredRequestLogHandler.java
@@ -1,8 +1,20 @@
/*
- * weinre is available under *either* the terms of the modified BSD license *or* the
- * MIT License (2008). See http://opensource.org/licenses/alphabetical for full text.
- *
- * Copyright (c) 2010, 2011 IBM Corporation
+ * 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 weinre.server.http;
@@ -23,7 +35,7 @@
@Override
public void handle(String target, Request baseRequest, HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException {
int status = baseRequest.getResponse().getStatus();
-
+
if (status == 200) return;
if (status == 304) return;
diff --git a/weinre.server/src/weinre/server/http/HttpServer.java b/weinre.server/src/weinre/server/http/HttpServer.java
index bfc07f4..e9a5f7c 100644
--- a/weinre.server/src/weinre/server/http/HttpServer.java
+++ b/weinre.server/src/weinre/server/http/HttpServer.java
@@ -1,8 +1,20 @@
/*
- * weinre is available under *either* the terms of the modified BSD license *or* the
- * MIT License (2008). See http://opensource.org/licenses/alphabetical for full text.
- *
- * Copyright (c) 2010, 2011 IBM Corporation
+ * 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 weinre.server.http;
@@ -26,22 +38,22 @@
private Main main;
private ServerSettings settings;
-
+
//---------------------------------------------------------------
public HttpServer(Main main, ServerSettings settings) {
super();
-
+
this.main = main;
this.settings = settings;
}
-
+
//---------------------------------------------------------------
public Server run() throws Exception {
String hostName = settings.getBoundHostValue();
String niceHostName = settings.getNiceHostName();
-
+
SelectChannelConnector connector = new SelectChannelConnector();
-
+
connector.setHost(hostName);
connector.setPort(settings.getHttpPort());
connector.setReuseAddress(settings.reuseAddr());
@@ -59,7 +71,7 @@
// set up the main handlers
HandlerList handlers = new HandlerList();
-
+
// debug handler
// DebugHandler debugHandler = new DebugHandler();
// handlers.addHandler(debugHandler);
@@ -69,41 +81,41 @@
// client socket handler
httpSocketHandler = new HttpSocketHandler("/ws/client");
handlers.addHandler(httpSocketHandler);
-
+
// target socket handler
httpSocketHandler = new HttpSocketHandler("/ws/target");
handlers.addHandler(httpSocketHandler);
// runChannelTester();
-
+
// handler for /web (static files in jar)
ClassPathResourceHandler handlerStaticFiles = new ClassPathResourceHandler("web");
handlers.addHandler(handlerStaticFiles);
-
+
// outer collection of handlers for management
HandlerCollection handlerOuter = new HandlerCollection();
-
+
// add the main handlers
handlerOuter.addHandler(handlers);
// add a request logger
RequestLogHandler requestLogHandler = new FilteredRequestLogHandler();
-
+
NCSARequestLog requestLog = new NCSARequestLog();
requestLog.setRetainDays(90);
requestLog.setAppend(true);
requestLog.setExtended(false);
requestLog.setLogTimeZone("GMT");
requestLogHandler.setRequestLog(requestLog);
-
+
handlerOuter.addHandler(requestLogHandler);
-
+
// serve with the outer handler
server.setHandler(handlerOuter);
// start the JS thread
// JavaScriptRunner.runThreaded("server/main.js", null, null);
-
+
// start the server
try {
server.start();
@@ -111,10 +123,10 @@
catch (IOException e) {
throw e;
}
-
+
Main.info("HTTP server started at http://" + niceHostName + ":" + settings.getHttpPort());
-
+
return server;
}
-
+
}
diff --git a/weinre.server/src/weinre/server/http/HttpSocketHandler.java b/weinre.server/src/weinre/server/http/HttpSocketHandler.java
index 4e39082..1da4f2a 100644
--- a/weinre.server/src/weinre/server/http/HttpSocketHandler.java
+++ b/weinre.server/src/weinre/server/http/HttpSocketHandler.java
@@ -1,8 +1,20 @@
/*
- * weinre is available under *either* the terms of the modified BSD license *or* the
- * MIT License (2008). See http://opensource.org/licenses/alphabetical for full text.
- *
- * Copyright (c) 2010, 2011 IBM Corporation
+ * 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 weinre.server.http;
@@ -31,28 +43,28 @@
//-------------------------------------------------------------------
public class HttpSocketHandler extends AbstractHandler {
- private String pathPrefix;
+ private String pathPrefix;
private int pathPrefixParts;
-
+
//---------------------------------------------------------------
public HttpSocketHandler(String pathPrefix) {
super();
-
+
this.pathPrefix = pathPrefix;
this.pathPrefixParts = pathPrefix.split("/").length;
}
-
+
//---------------------------------------------------------------
@Override
public void handle(String target, Request baseRequest, HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException {
// ! * pathPrefix*
if (!target.startsWith(pathPrefix)) return;
-
+
String method = baseRequest.getMethod();
-
+
setCORSHeaders(response);
setCacheHeaders(response);
-
+
// OPTIONS pathPrefix
if (target.equals(pathPrefix) && method.equals("OPTIONS")) {
baseRequest.setHandled(true);
@@ -73,43 +85,43 @@
response.sendError(405);
return;
}
-
+
// * pathPrefix/x/*
String[] parts = target.split("/");
if (parts.length != pathPrefixParts + 1) {
baseRequest.setHandled(true);
response.sendError(404);
}
-
- //
+
+ //
if (parts.length <= pathPrefixParts) {
baseRequest.setHandled(true);
response.sendError(405);
}
-
+
String channel = parts[pathPrefixParts];
-
+
// OPTIONS pathPrefix/x
if (method.equals("OPTIONS")) {
baseRequest.setHandled(true);
handleOptions(target, baseRequest, request, response);
return;
}
-
+
// GET pathPrefix/x
if (method.equals("GET")) {
baseRequest.setHandled(true);
handleGet(channel, target, baseRequest, request, response);
return;
}
-
+
// POST pathPrefix/x
if (method.equals("POST")) {
baseRequest.setHandled(true);
handlePost(channel, target, baseRequest, request, response);
return;
}
-
+
// * pathPrefix/x
baseRequest.setHandled(true);
response.sendError(405);
@@ -121,7 +133,7 @@
response.setHeader("Access-Control-Max-Age", "600");
response.setHeader("Access-Control-Allow-Methods", "GET, POST");
}
-
+
//---------------------------------------------------------------
private void setCacheHeaders(HttpServletResponse response) {
response.setHeader("Pragma", "no-cache");
@@ -129,7 +141,7 @@
response.setHeader("Cache-Control", "no-cache");
response.setHeader("Cache-Control", "no-store");
}
-
+
//---------------------------------------------------------------
public void handleOptions(String target, Request baseRequest, HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException {
response.setStatus(200);
@@ -144,7 +156,7 @@
if (0 == baseRequest.getContentLength()) {
id = Channel.AnonymousId;
}
-
+
else {
try {
String json = readRequestBody(request.getInputStream());
@@ -168,15 +180,15 @@
return;
}
}
-
+
ChannelManager.$.registerChannel(pathPrefix, channelName, id, request.getRemoteHost(), request.getRemoteAddr());
-
+
response.setStatus(200);
response.setContentType("application/json");
-
+
ServletOutputStream oStream = response.getOutputStream();
JSONObject obj = new JSONObject();
-
+
try {
obj.put("channel", channelName);
obj.put("id", id);
@@ -184,7 +196,7 @@
catch (JSONException e) {
throw new RuntimeException(e);
}
-
+
String result = obj.toString();
oStream.print(result);
oStream.close();
@@ -199,15 +211,15 @@
}
channel.updateLastRead();
-
- List<String> json;
+
+ List<String> json;
try {
json = channel.getResponses(Main.getSettings().getReadTimeoutSeconds());
- }
+ }
catch (InterruptedException e) {
throw new IOException(e);
}
-
+
response.setStatus(200);
response.setContentType("application/json");
@@ -221,12 +233,12 @@
private void printJSONList(ServletOutputStream oStream, List<String> json) throws IOException {
try {
oStream.print(new JSONArray(json).toString());
- }
+ }
catch (JSONException e) {
throw new RuntimeException(e);
}
}
-
+
//---------------------------------------------------------------
public void handlePost(String channelName, String target, Request baseRequest, HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException {
Channel channel = ChannelManager.$.getChannel(channelName, request.getRemoteAddr());
@@ -244,7 +256,7 @@
response.setStatus(400);
return;
}
-
+
try {
String json = readRequestBody(request.getInputStream());
channel.postRequest(json);
@@ -253,23 +265,23 @@
response.setStatus(400);
return;
}
-
+
response.setStatus(200);
response.setContentType("text/plain");
response.getOutputStream().close();
}
-
+
//---------------------------------------------------------------
private String readRequestBody(InputStream is) throws IOException {
StringBuffer stringBuffer = new StringBuffer();
Reader reader = new InputStreamReader(is, "UTF-8");
char[] buffer = new char[4096];
-
+
int read;
while ((read = reader.read(buffer)) > 0) {
stringBuffer.append(buffer, 0, read);
}
-
+
return stringBuffer.toString();
}
}
diff --git a/weinre.server/src/weinre/server/http/ProxyServer.java b/weinre.server/src/weinre/server/http/ProxyServer.java
index e290bd7..1150424 100644
--- a/weinre.server/src/weinre/server/http/ProxyServer.java
+++ b/weinre.server/src/weinre/server/http/ProxyServer.java
@@ -1,8 +1,20 @@
/*
- * weinre is available under *either* the terms of the modified BSD license *or* the
- * MIT License (2008). See http://opensource.org/licenses/alphabetical for full text.
- *
- * Copyright (c) 2010, 2011 IBM Corporation
+ * 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 weinre.server.http;
@@ -25,22 +37,22 @@
//-------------------------------------------------------------------
public class ProxyServer {
private ServerSettings settings;
-
+
//---------------------------------------------------------------
public ProxyServer(ServerSettings settings) {
super();
-
+
this.settings = settings;
}
-
+
//---------------------------------------------------------------
public void run() throws Exception {
SelectChannelConnector connector = new SelectChannelConnector();
connector = new SelectChannelConnector();
-
- String hostName = settings.getBoundHost();
-
+
+ String hostName = settings.getBoundHost();
+
connector.setHost(hostName);
connector.setPort(settings.getHttpPort()+1);
connector.setReuseAddress(false);
@@ -49,30 +61,30 @@
proxyServer.setConnectors(new Connector[] { connector });
HandlerList handlers = new HandlerList();
-
+
handlers = new HandlerList();
RequestLogHandler requestLogHandler = new RequestLogHandler();
-
+
requestLogHandler = new RequestLogHandler();
-
+
NCSARequestLog requestLog;
-
+
requestLog = new NCSARequestLog();
requestLog.setRetainDays(90);
requestLog.setAppend(true);
requestLog.setExtended(false);
requestLog.setLogTimeZone("GMT");
requestLogHandler.setRequestLog(requestLog);
-
+
handlers.addHandler(requestLogHandler);
-
+
ServletContextHandler handlerProxy = new ServletContextHandler();
handlerProxy.setContextPath("/");
ProxyServlet proxyServlet = new ProxyServlet();
handlerProxy.addServlet(new ServletHolder(proxyServlet), "/");
handlers.addHandler(handlerProxy);
-
+
proxyServer.setHandler(handlers);
try {
@@ -82,7 +94,7 @@
Main.warn("unable to start proxy server: " + e.getMessage());
proxyServer.stop();
}
-
+
Main.info("HTTP proxy server started at http://" + settings.getNiceHostName() + ":" + (settings.getHttpPort()+1));
}
}
diff --git a/weinre.server/src/weinre/server/service/WeinreClientCommands.java b/weinre.server/src/weinre/server/service/WeinreClientCommands.java
index 7dcf1a8..3d5e16d 100644
--- a/weinre.server/src/weinre/server/service/WeinreClientCommands.java
+++ b/weinre.server/src/weinre/server/service/WeinreClientCommands.java
@@ -1,8 +1,20 @@
/*
- * weinre is available under *either* the terms of the modified BSD license *or* the
- * MIT License (2008). See http://opensource.org/licenses/alphabetical for full text.
- *
- * Copyright (c) 2010, 2011 IBM Corporation
+ * 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 weinre.server.service;
@@ -27,9 +39,9 @@
//---------------------------------------------------------------
public void registerClient(Channel channel, String callbackId) throws IOException {
Client client = new Client(channel);
-
+
JSONObject description = client.getDescription();
-
+
channel.sendCallback("WeinreClientEvents", callbackId, description);
channel.sendEvent("WeinreClientEvents", "serverProperties", Main.getSettings().asProperties());
}
@@ -38,11 +50,11 @@
public void getTargets(Channel channel, String callbackId) throws IOException {
List<Target> targets = ConnectionManager.$.getTargets(channel.getId());
JSONArray targetResults = new JSONArray();
-
+
for (Target target: targets) {
targetResults.add(target.getDescription());
}
-
+
channel.sendCallback("WeinreClientEvents", callbackId, targetResults);
}
@@ -50,11 +62,11 @@
public void getClients(Channel channel, String callbackId) throws IOException {
List<Client> clients = ConnectionManager.$.getClients(channel.getId());
JSONArray clientResults = new JSONArray();
-
+
for (Client client: clients) {
clientResults.add(client.getDescription());
}
-
+
channel.sendCallback("WeinreClientEvents", callbackId, clientResults);
}
@@ -62,19 +74,19 @@
public void getExtensions(Channel channel, String callbackId) throws IOException {
String[] extensions = ExtensionManager.getExtensions();
JSONArray result = new JSONArray();
-
+
try {
for (String extension: extensions) {
JSONObject extensionObject = new JSONObject();
extensionObject.put("startPage", "extensions/" + extension + "/extension.html");
-
+
result.add(extensionObject);
}
}
catch(JSONException e) {
throw new RuntimeException(e);
}
-
+
channel.sendCallback("WeinreClientEvents", callbackId, result);
}
@@ -85,7 +97,7 @@
Target target = ConnectionManager.$.getTarget(targetId);
if (target == null) return;
-
+
ConnectionManager.$.connect(client, target);
}
@@ -93,13 +105,13 @@
public void disconnectTarget(Channel channel, String clientId, String callbackId) {
Client client = ConnectionManager.$.getClient(clientId);
if (client == null) return;
-
+
Target target = client.getConnectedTarget();
if (target == null) return;
-
+
ConnectionManager.$.disconnect(client, target);
}
-
+
//---------------------------------------------------------------
public void logDebug(Channel channel, String message, String callbackId) {
Main.debug("client " + channel.getName() + ": " + message);
diff --git a/weinre.server/src/weinre/server/service/WeinreTargetCommands.java b/weinre.server/src/weinre/server/service/WeinreTargetCommands.java
index 80e9a22..139d45c 100644
--- a/weinre.server/src/weinre/server/service/WeinreTargetCommands.java
+++ b/weinre.server/src/weinre/server/service/WeinreTargetCommands.java
@@ -1,8 +1,20 @@
/*
- * weinre is available under *either* the terms of the modified BSD license *or* the
- * MIT License (2008). See http://opensource.org/licenses/alphabetical for full text.
- *
- * Copyright (c) 2010, 2011 IBM Corporation
+ * 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 weinre.server.service;
@@ -23,28 +35,28 @@
//---------------------------------------------------------------
public void registerTarget(Channel channel, String url, String callbackId) throws IOException {
Target target = new Target(channel, url);
-
+
JSONObject description = target.getDescription();
-
+
channel.sendCallback("WeinreTargetEvents", callbackId, description);
}
-
+
//---------------------------------------------------------------
@SuppressWarnings("unchecked")
public void sendClientCallback(Channel channel, String clientCallbackId, Object args, String callbackId) throws IOException {
Object[] argsArray;
- if (null == args)
+ if (null == args)
argsArray = new Object[0];
- else
+ else
argsArray = ((List<Object>) args).toArray();
-
+
// the channel to send the callback to is embedded in the callbackId
String callbackConnectorId = getCallbackConnectorId(clientCallbackId);
if (null == callbackConnectorId) {
Main.warn(getClass().getName() + ".sendClientCallback() sent with invalid callbackId: " + clientCallbackId);
return;
}
-
+
channel = ChannelManager.$.getChannel(callbackConnectorId);
if (null == channel) {
// indication that channel was closed; this message may generate a lot of noise
@@ -54,7 +66,7 @@
channel.sendCallback("WeinreClientEvents", clientCallbackId, argsArray);
}
-
+
//---------------------------------------------------------------
public void logDebug(Channel channel, String message, String callbackId) {
Main.debug("target " + channel.getName() + ": " + message);
@@ -80,5 +92,5 @@
int index = callbackId.indexOf("::");
return callbackId.substring(0, index);
}
-
+
}
diff --git a/weinre.web/client/ExtensionRegistryStub.js b/weinre.web/client/ExtensionRegistryStub.js
index 396f3f1..6937fdb 100644
--- a/weinre.web/client/ExtensionRegistryStub.js
+++ b/weinre.web/client/ExtensionRegistryStub.js
@@ -1,8 +1,20 @@
/*
- * weinre is available under *either* the terms of the modified BSD license *or* the
- * MIT License (2008). See http://opensource.org/licenses/alphabetical for full text.
+ * 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
*
- * Copyright (c) 2011 IBM Corporation
+ * 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.
*/
(function() {
diff --git a/weinre.web/client/InspectorBackendStub.js b/weinre.web/client/InspectorBackendStub.js
index f8d41f2..645163c 100644
--- a/weinre.web/client/InspectorBackendStub.js
+++ b/weinre.web/client/InspectorBackendStub.js
@@ -1,8 +1,20 @@
/*
- * weinre is available under *either* the terms of the modified BSD license *or* the
- * MIT License (2008). See http://opensource.org/licenses/alphabetical for full text.
+ * 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
*
- * Copyright (c) 2010, 2011 IBM Corporation
+ * 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.
*/
(function() {
diff --git a/weinre.web/client/InspectorFrontendHostStub.js b/weinre.web/client/InspectorFrontendHostStub.js
index 65f648b..5bca358 100644
--- a/weinre.web/client/InspectorFrontendHostStub.js
+++ b/weinre.web/client/InspectorFrontendHostStub.js
@@ -1,8 +1,20 @@
/*
- * weinre is available under *either* the terms of the modified BSD license *or* the
- * MIT License (2008). See http://opensource.org/licenses/alphabetical for full text.
+ * 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
*
- * Copyright (c) 2010, 2011 IBM Corporation
+ * 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.
*/
(function() {
diff --git a/weinre.web/client/web-inspector-API.js b/weinre.web/client/web-inspector-API.js
index e7fd7b0..b8415a0 100644
--- a/weinre.web/client/web-inspector-API.js
+++ b/weinre.web/client/web-inspector-API.js
@@ -1,8 +1,20 @@
/*
- * weinre is available under *either* the terms of the modified BSD license *or* the
- * MIT License (2008). See http://opensource.org/licenses/alphabetical for full text.
- *
- * Copyright (c) 2011 IBM Corporation
+ * 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.
*/
-
+
eval(window.top.installWebInspectorAPIsource())
diff --git a/weinre.web/client/weinre/check-for-webkit.js b/weinre.web/client/weinre/check-for-webkit.js
index 249e80d..1b66a5f 100644
--- a/weinre.web/client/weinre/check-for-webkit.js
+++ b/weinre.web/client/weinre/check-for-webkit.js
@@ -1,8 +1,20 @@
/*
- * weinre is available under *either* the terms of the modified BSD license *or* the
- * MIT License (2008). See http://opensource.org/licenses/alphabetical for full text.
+ * 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
*
- * Copyright (c) 2010, 2011 IBM Corporation
+ * 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.
*/
if (!navigator.userAgent.match(/webkit/i)) {
diff --git a/weinre.web/client/weinre/client.css b/weinre.web/client/weinre/client.css
index 383cf96..6e3ae73 100644
--- a/weinre.web/client/weinre/client.css
+++ b/weinre.web/client/weinre/client.css
@@ -1,8 +1,20 @@
/*
- * weinre is available under *either* the terms of the modified BSD license *or* the
- * MIT License (2008). See http://opensource.org/licenses/alphabetical for full text.
+ * 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
*
- * Copyright (c) 2010, 2011 IBM Corporation
+ * 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.
*/
.toolbar-item.remote .toolbar-icon {
diff --git a/weinre.web/client/weinre/hacks.js b/weinre.web/client/weinre/hacks.js
index f2156c7..28b12ad 100644
--- a/weinre.web/client/weinre/hacks.js
+++ b/weinre.web/client/weinre/hacks.js
@@ -1,8 +1,20 @@
/*
- * weinre is available under *either* the terms of the modified BSD license *or* the
- * MIT License (2008). See http://opensource.org/licenses/alphabetical for full text.
- *
- * Copyright (c) 2010, 2011 IBM Corporation
+ * 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.
*/
// a place for hacks
diff --git a/weinre.web/demo/weinre-demo-min.html b/weinre.web/demo/weinre-demo-min.html
index 95893a3..4ba3058 100644
--- a/weinre.web/demo/weinre-demo-min.html
+++ b/weinre.web/demo/weinre-demo-min.html
@@ -1,8 +1,20 @@
<!--
- * weinre is available under *either* the terms of the modified BSD license *or* the
- * MIT License (2008). See http://opensource.org/licenses/alphabetical for full text.
+ * 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
*
- * Copyright (c) 2010, 2011 IBM Corporation
+ * 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.
-->
<html>
diff --git a/weinre.web/demo/weinre-demo.css b/weinre.web/demo/weinre-demo.css
index ec6d164..a83598a 100644
--- a/weinre.web/demo/weinre-demo.css
+++ b/weinre.web/demo/weinre-demo.css
@@ -1,8 +1,20 @@
/*
- * weinre is available under *either* the terms of the modified BSD license *or* the
- * MIT License (2008). See http://opensource.org/licenses/alphabetical for full text.
- *
- * Copyright (c) 2011 IBM Corporation
+ * 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.
*/
h1 {
diff --git a/weinre.web/demo/weinre-demo.html b/weinre.web/demo/weinre-demo.html
index 70c887e..ba3330a 100644
--- a/weinre.web/demo/weinre-demo.html
+++ b/weinre.web/demo/weinre-demo.html
@@ -1,8 +1,20 @@
<!--
- * weinre is available under *either* the terms of the modified BSD license *or* the
- * MIT License (2008). See http://opensource.org/licenses/alphabetical for full text.
+ * 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
*
- * Copyright (c) 2010, 2011 IBM Corporation
+ * 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.
-->
<html>
diff --git a/weinre.web/demo/weinre-demo.js b/weinre.web/demo/weinre-demo.js
index 5e36af4..06de5f9 100644
--- a/weinre.web/demo/weinre-demo.js
+++ b/weinre.web/demo/weinre-demo.js
@@ -1,8 +1,20 @@
/*
- * weinre is available under *either* the terms of the modified BSD license *or* the
- * MIT License (2008). See http://opensource.org/licenses/alphabetical for full text.
+ * 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
*
- * Copyright (c) 2011 IBM Corporation
+ * 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.
*/
//------------------------------------------------------------------------------
diff --git a/weinre.web/index.html b/weinre.web/index.html
index a4861d5..3afbc14 100644
--- a/weinre.web/index.html
+++ b/weinre.web/index.html
@@ -1,10 +1,22 @@
<!doctype html>
<!--
- * weinre is available under *either* the terms of the modified BSD license *or* the
- * MIT License (2008). See http://opensource.org/licenses/alphabetical for full text.
+ * 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
*
- * Copyright (c) 2010, 2011 IBM Corporation
+ * 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.
-->
<html>
diff --git a/weinre.web/index.js b/weinre.web/index.js
index 7e248a6..86e8508 100644
--- a/weinre.web/index.js
+++ b/weinre.web/index.js
@@ -1,8 +1,20 @@
/*
- * weinre is available under *either* the terms of the modified BSD license *or* the
- * MIT License (2008). See http://opensource.org/licenses/alphabetical for full text.
+ * 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
*
- * Copyright (c) 2010, 2011 IBM Corporation
+ * 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.
*/
var weinre_protocol = location.protocol
diff --git a/weinre.web/interfaces/interfaces.css b/weinre.web/interfaces/interfaces.css
index ee1a8c5..c0931f8 100644
--- a/weinre.web/interfaces/interfaces.css
+++ b/weinre.web/interfaces/interfaces.css
@@ -1,14 +1,26 @@
/*
- * weinre is available under *either* the terms of the modified BSD license *or* the
- * MIT License (2008). See http://opensource.org/licenses/alphabetical for full text.
- *
- * Copyright (c) 2010, 2011 IBM Corporation
+ * 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.
*/
#browser {
margin-top: 1em;
}
-
+
#interface-picker {
float: left;
margin-right: 1.0em;
@@ -20,7 +32,7 @@
margin-top: 0.0em;
border-bottom: thin solid;
}
-
+
#interface-content {
overflow: hidden;
padding-left: 1.0em;
@@ -43,7 +55,7 @@
.indent {
white-space: pre;
}
-
+
.attributeName, .methodName, .interfaceName {
font-weight: bold;
}
@@ -72,7 +84,7 @@
.noprint {
display: none;
}
-
+
body {
font-size: 60%;
}
diff --git a/weinre.web/interfaces/interfaces.html b/weinre.web/interfaces/interfaces.html
index 107df67..9797ebf 100644
--- a/weinre.web/interfaces/interfaces.html
+++ b/weinre.web/interfaces/interfaces.html
@@ -1,10 +1,22 @@
<!doctype html>
<!--
- * weinre is available under *either* the terms of the modified BSD license *or* the
- * MIT License (2008). See http://opensource.org/licenses/alphabetical for full text.
+ * 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
*
- * Copyright (c) 2010, 2011 IBM Corporation
+ * 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.
-->
<html>
diff --git a/weinre.web/interfaces/interfaces.js b/weinre.web/interfaces/interfaces.js
index 8b9e7de..29ea125 100644
--- a/weinre.web/interfaces/interfaces.js
+++ b/weinre.web/interfaces/interfaces.js
@@ -1,8 +1,20 @@
/*
- * weinre is available under *either* the terms of the modified BSD license *or* the
- * MIT License (2008). See http://opensource.org/licenses/alphabetical for full text.
+ * 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
*
- * Copyright (c) 2010, 2011 IBM Corporation
+ * 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.
*/
;(function(){
diff --git a/weinre.web/modules/weinre/client/Client.coffee b/weinre.web/modules/weinre/client/Client.coffee
index 514ba97..c85b126 100644
--- a/weinre.web/modules/weinre/client/Client.coffee
+++ b/weinre.web/modules/weinre/client/Client.coffee
@@ -1,9 +1,21 @@
#---------------------------------------------------------------------------------
-# weinre is available under *either* the terms of the modified BSD license *or* the
-# MIT License (2008). See http:#opensource.org/licenses/alphabetical for full text.
+# 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
#
-# Copyright (c) 2010, 2011 IBM Corporation
+# 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.
#---------------------------------------------------------------------------------
IDLTools = require('../common/IDLTools')
diff --git a/weinre.web/modules/weinre/client/ConnectorList.coffee b/weinre.web/modules/weinre/client/ConnectorList.coffee
index e1a50fb..2361437 100644
--- a/weinre.web/modules/weinre/client/ConnectorList.coffee
+++ b/weinre.web/modules/weinre/client/ConnectorList.coffee
@@ -1,9 +1,21 @@
#---------------------------------------------------------------------------------
-# weinre is available under *either* the terms of the modified BSD license *or* the
-# MIT License (2008). See http:#opensource.org/licenses/alphabetical for full text.
+# 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
#
-# Copyright (c) 2010, 2011 IBM Corporation
+# 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.
#---------------------------------------------------------------------------------
dt = require('./DOMTemplates')
diff --git a/weinre.web/modules/weinre/client/DOMTemplates.coffee b/weinre.web/modules/weinre/client/DOMTemplates.coffee
index a3db299..2f33837 100644
--- a/weinre.web/modules/weinre/client/DOMTemplates.coffee
+++ b/weinre.web/modules/weinre/client/DOMTemplates.coffee
@@ -1,9 +1,21 @@
#---------------------------------------------------------------------------------
-# weinre is available under *either* the terms of the modified BSD license *or* the
-# MIT License (2008). See http:#opensource.org/licenses/alphabetical for full text.
+# 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
#
-# Copyright (c) 2010, 2011 IBM Corporation
+# 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.
#---------------------------------------------------------------------------------
Ex = require('../common/Ex')
diff --git a/weinre.web/modules/weinre/client/ExtensionRegistryImpl.coffee b/weinre.web/modules/weinre/client/ExtensionRegistryImpl.coffee
index 4303d2d..79cce5d 100644
--- a/weinre.web/modules/weinre/client/ExtensionRegistryImpl.coffee
+++ b/weinre.web/modules/weinre/client/ExtensionRegistryImpl.coffee
@@ -1,9 +1,21 @@
#---------------------------------------------------------------------------------
-# weinre is available under *either* the terms of the modified BSD license *or* the
-# MIT License (2008). See http:#opensource.org/licenses/alphabetical for full text.
+# 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
#
-# Copyright (c) 2010, 2011 IBM Corporation
+# 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.
#---------------------------------------------------------------------------------
Ex = require('../common/Ex')
diff --git a/weinre.web/modules/weinre/client/InspectorBackendImpl.coffee b/weinre.web/modules/weinre/client/InspectorBackendImpl.coffee
index 1dcf45e..8a7cabb 100644
--- a/weinre.web/modules/weinre/client/InspectorBackendImpl.coffee
+++ b/weinre.web/modules/weinre/client/InspectorBackendImpl.coffee
@@ -1,9 +1,21 @@
#---------------------------------------------------------------------------------
-# weinre is available under *either* the terms of the modified BSD license *or* the
-# MIT License (2008). See http:#opensource.org/licenses/alphabetical for full text.
+# 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
#
-# Copyright (c) 2010, 2011 IBM Corporation
+# 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.
#---------------------------------------------------------------------------------
Ex = require('../common/Ex')
diff --git a/weinre.web/modules/weinre/client/InspectorFrontendHostImpl.coffee b/weinre.web/modules/weinre/client/InspectorFrontendHostImpl.coffee
index b060469..d4e258b 100644
--- a/weinre.web/modules/weinre/client/InspectorFrontendHostImpl.coffee
+++ b/weinre.web/modules/weinre/client/InspectorFrontendHostImpl.coffee
@@ -1,9 +1,21 @@
#---------------------------------------------------------------------------------
-# weinre is available under *either* the terms of the modified BSD license *or* the
-# MIT License (2008). See http:#opensource.org/licenses/alphabetical for full text.
+# 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
#
-# Copyright (c) 2010, 2011 IBM Corporation
+# 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.
#---------------------------------------------------------------------------------
Weinre = require('../common/Weinre')
diff --git a/weinre.web/modules/weinre/client/RemotePanel.coffee b/weinre.web/modules/weinre/client/RemotePanel.coffee
index a6c6110..f191ee7 100644
--- a/weinre.web/modules/weinre/client/RemotePanel.coffee
+++ b/weinre.web/modules/weinre/client/RemotePanel.coffee
@@ -1,9 +1,21 @@
#---------------------------------------------------------------------------------
-# weinre is available under *either* the terms of the modified BSD license *or* the
-# MIT License (2008). See http:#opensource.org/licenses/alphabetical for full text.
+# 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
#
-# Copyright (c) 2010, 2011 IBM Corporation
+# 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.
#---------------------------------------------------------------------------------
Binding = require('../common/Binding')
diff --git a/weinre.web/modules/weinre/client/WeinreClientEventsImpl.coffee b/weinre.web/modules/weinre/client/WeinreClientEventsImpl.coffee
index a3e4038..8fcec0d 100644
--- a/weinre.web/modules/weinre/client/WeinreClientEventsImpl.coffee
+++ b/weinre.web/modules/weinre/client/WeinreClientEventsImpl.coffee
@@ -1,9 +1,21 @@
#---------------------------------------------------------------------------------
-# weinre is available under *either* the terms of the modified BSD license *or* the
-# MIT License (2008). See http:#opensource.org/licenses/alphabetical for full text.
+# 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
#
-# Copyright (c) 2010, 2011 IBM Corporation
+# 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.
#---------------------------------------------------------------------------------
Callback = require('../common/Callback')
diff --git a/weinre.web/modules/weinre/client/WeinreExtraTargetEventsImpl.coffee b/weinre.web/modules/weinre/client/WeinreExtraTargetEventsImpl.coffee
index 66c88d3..7958560 100644
--- a/weinre.web/modules/weinre/client/WeinreExtraTargetEventsImpl.coffee
+++ b/weinre.web/modules/weinre/client/WeinreExtraTargetEventsImpl.coffee
@@ -1,9 +1,21 @@
#---------------------------------------------------------------------------------
-# weinre is available under *either* the terms of the modified BSD license *or* the
-# MIT License (2008). See http:#opensource.org/licenses/alphabetical for full text.
+# 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
#
-# Copyright (c) 2010, 2011 IBM Corporation
+# 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.
#---------------------------------------------------------------------------------
module.exports = class WeinreExtraTargetEventsImpl
diff --git a/weinre.web/modules/weinre/common/Binding.coffee b/weinre.web/modules/weinre/common/Binding.coffee
index ad7ab14..f131a21 100644
--- a/weinre.web/modules/weinre/common/Binding.coffee
+++ b/weinre.web/modules/weinre/common/Binding.coffee
@@ -1,9 +1,21 @@
#---------------------------------------------------------------------------------
-# weinre is available under *either* the terms of the modified BSD license *or* the
-# MIT License (2008). See http:#opensource.org/licenses/alphabetical for full text.
+# 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
#
-# Copyright (c) 2010, 2011 IBM Corporation
+# 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.
#---------------------------------------------------------------------------------
Ex = require('./Ex')
diff --git a/weinre.web/modules/weinre/common/Callback.coffee b/weinre.web/modules/weinre/common/Callback.coffee
index ee2baf2..90b0338 100644
--- a/weinre.web/modules/weinre/common/Callback.coffee
+++ b/weinre.web/modules/weinre/common/Callback.coffee
@@ -1,9 +1,21 @@
#---------------------------------------------------------------------------------
-# weinre is available under *either* the terms of the modified BSD license *or* the
-# MIT License (2008). See http:#opensource.org/licenses/alphabetical for full text.
+# 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
#
-# Copyright (c) 2010, 2011 IBM Corporation
+# 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.
#---------------------------------------------------------------------------------
Ex = require('./Ex')
diff --git a/weinre.web/modules/weinre/common/EventListeners.coffee b/weinre.web/modules/weinre/common/EventListeners.coffee
index 535b48f..a0a520f 100644
--- a/weinre.web/modules/weinre/common/EventListeners.coffee
+++ b/weinre.web/modules/weinre/common/EventListeners.coffee
@@ -1,9 +1,21 @@
#---------------------------------------------------------------------------------
-# weinre is available under *either* the terms of the modified BSD license *or* the
-# MIT License (2008). See http:#opensource.org/licenses/alphabetical for full text.
+# 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
#
-# Copyright (c) 2010, 2011 IBM Corporation
+# 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.
#---------------------------------------------------------------------------------
Ex = require('./Ex')
diff --git a/weinre.web/modules/weinre/common/Ex.coffee b/weinre.web/modules/weinre/common/Ex.coffee
index 4062188..16b4930 100644
--- a/weinre.web/modules/weinre/common/Ex.coffee
+++ b/weinre.web/modules/weinre/common/Ex.coffee
@@ -1,9 +1,21 @@
#---------------------------------------------------------------------------------
-# weinre is available under *either* the terms of the modified BSD license *or* the
-# MIT License (2008). See http:#opensource.org/licenses/alphabetical for full text.
+# 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
#
-# Copyright (c) 2010, 2011 IBM Corporation
+# 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.
#---------------------------------------------------------------------------------
StackTrace = require('./StackTrace')
diff --git a/weinre.web/modules/weinre/common/HookLib.coffee b/weinre.web/modules/weinre/common/HookLib.coffee
index 9f2b868..45ecdac 100644
--- a/weinre.web/modules/weinre/common/HookLib.coffee
+++ b/weinre.web/modules/weinre/common/HookLib.coffee
@@ -1,9 +1,21 @@
#---------------------------------------------------------------------------------
-# weinre is available under *either* the terms of the modified BSD license *or* the
-# MIT License (2008). See http:#opensource.org/licenses/alphabetical for full text.
+# 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
#
-# Copyright (c) 2010, 2011 IBM Corporation
+# 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.
#---------------------------------------------------------------------------------
HookLib = exports
diff --git a/weinre.web/modules/weinre/common/IDGenerator.coffee b/weinre.web/modules/weinre/common/IDGenerator.coffee
index 0a4f599..b45120b 100644
--- a/weinre.web/modules/weinre/common/IDGenerator.coffee
+++ b/weinre.web/modules/weinre/common/IDGenerator.coffee
@@ -1,9 +1,21 @@
#---------------------------------------------------------------------------------
-# weinre is available under *either* the terms of the modified BSD license *or* the
-# MIT License (2008). See http:#opensource.org/licenses/alphabetical for full text.
+# 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
#
-# Copyright (c) 2010, 2011 IBM Corporation
+# 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.
#---------------------------------------------------------------------------------
nextIdValue = 1
diff --git a/weinre.web/modules/weinre/common/IDLTools.coffee b/weinre.web/modules/weinre/common/IDLTools.coffee
index a989836..e227c5f 100644
--- a/weinre.web/modules/weinre/common/IDLTools.coffee
+++ b/weinre.web/modules/weinre/common/IDLTools.coffee
@@ -1,9 +1,21 @@
#---------------------------------------------------------------------------------
-# weinre is available under *either* the terms of the modified BSD license *or* the
-# MIT License (2008). See http:#opensource.org/licenses/alphabetical for full text.
+# 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
#
-# Copyright (c) 2010, 2011 IBM Corporation
+# 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.
#---------------------------------------------------------------------------------
Ex = require('./Ex')
diff --git a/weinre.web/modules/weinre/common/MessageDispatcher.coffee b/weinre.web/modules/weinre/common/MessageDispatcher.coffee
index a732cad..404a951 100644
--- a/weinre.web/modules/weinre/common/MessageDispatcher.coffee
+++ b/weinre.web/modules/weinre/common/MessageDispatcher.coffee
@@ -1,9 +1,21 @@
#---------------------------------------------------------------------------------
-# weinre is available under *either* the terms of the modified BSD license *or* the
-# MIT License (2008). See http:#opensource.org/licenses/alphabetical for full text.
+# 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
#
-# Copyright (c) 2010, 2011 IBM Corporation
+# 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.
#---------------------------------------------------------------------------------
Weinre = require('./Weinre')
diff --git a/weinre.web/modules/weinre/common/MethodNamer.coffee b/weinre.web/modules/weinre/common/MethodNamer.coffee
index 4d5c755..16aaaef 100644
--- a/weinre.web/modules/weinre/common/MethodNamer.coffee
+++ b/weinre.web/modules/weinre/common/MethodNamer.coffee
@@ -1,9 +1,21 @@
#---------------------------------------------------------------------------------
-# weinre is available under *either* the terms of the modified BSD license *or* the
-# MIT License (2008). See http:#opensource.org/licenses/alphabetical for full text.
+# 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
#
-# Copyright (c) 2010, 2011 IBM Corporation
+# 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.
#---------------------------------------------------------------------------------
module.exports = class MethodNamer
diff --git a/weinre.web/modules/weinre/common/StackTrace.coffee b/weinre.web/modules/weinre/common/StackTrace.coffee
index b7ace3f..08350e1 100644
--- a/weinre.web/modules/weinre/common/StackTrace.coffee
+++ b/weinre.web/modules/weinre/common/StackTrace.coffee
@@ -1,9 +1,21 @@
#---------------------------------------------------------------------------------
-# weinre is available under *either* the terms of the modified BSD license *or* the
-# MIT License (2008). See http:#opensource.org/licenses/alphabetical for full text.
+# 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
#
-# Copyright (c) 2010, 2011 IBM Corporation
+# 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.
#---------------------------------------------------------------------------------
module.exports = class StackTrace
diff --git a/weinre.web/modules/weinre/common/WebSocketXhr.coffee b/weinre.web/modules/weinre/common/WebSocketXhr.coffee
index 00c741e..4fc86db 100644
--- a/weinre.web/modules/weinre/common/WebSocketXhr.coffee
+++ b/weinre.web/modules/weinre/common/WebSocketXhr.coffee
@@ -1,9 +1,21 @@
#---------------------------------------------------------------------------------
-# weinre is available under *either* the terms of the modified BSD license *or* the
-# MIT License (2008). See http:#opensource.org/licenses/alphabetical for full text.
+# 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
#
-# Copyright (c) 2010, 2011 IBM Corporation
+# 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.
#---------------------------------------------------------------------------------
Ex = require('./Ex')
diff --git a/weinre.web/modules/weinre/common/Weinre.coffee b/weinre.web/modules/weinre/common/Weinre.coffee
index decb80b..27e072b 100644
--- a/weinre.web/modules/weinre/common/Weinre.coffee
+++ b/weinre.web/modules/weinre/common/Weinre.coffee
@@ -1,9 +1,21 @@
#---------------------------------------------------------------------------------
-# weinre is available under *either* the terms of the modified BSD license *or* the
-# MIT License (2008). See http:#opensource.org/licenses/alphabetical for full text.
+# 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
#
-# Copyright (c) 2010, 2011 IBM Corporation
+# 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.
#---------------------------------------------------------------------------------
Ex = require('./Ex')
diff --git a/weinre.web/modules/weinre/target/CSSStore.coffee b/weinre.web/modules/weinre/target/CSSStore.coffee
index b1b350e..e2aa6b3 100644
--- a/weinre.web/modules/weinre/target/CSSStore.coffee
+++ b/weinre.web/modules/weinre/target/CSSStore.coffee
@@ -1,9 +1,21 @@
#---------------------------------------------------------------------------------
-# weinre is available under *either* the terms of the modified BSD license *or* the
-# MIT License (2008). See http:#opensource.org/licenses/alphabetical for full text.
+# 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
#
-# Copyright (c) 2010, 2011 IBM Corporation
+# 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.
#---------------------------------------------------------------------------------
IDGenerator = require('../common/IDGenerator')
diff --git a/weinre.web/modules/weinre/target/CheckForProblems.coffee b/weinre.web/modules/weinre/target/CheckForProblems.coffee
index cb30171..a19d202 100644
--- a/weinre.web/modules/weinre/target/CheckForProblems.coffee
+++ b/weinre.web/modules/weinre/target/CheckForProblems.coffee
@@ -1,9 +1,21 @@
#---------------------------------------------------------------------------------
-# weinre is available under *either* the terms of the modified BSD license *or* the
-# MIT License (2008). See http:#opensource.org/licenses/alphabetical for full text.
+# 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
#
-# Copyright (c) 2010, 2011 IBM Corporation
+# 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.
#---------------------------------------------------------------------------------
module.exports = class CheckForProblems
diff --git a/weinre.web/modules/weinre/target/Console.coffee b/weinre.web/modules/weinre/target/Console.coffee
index 800c84f..76576c3 100644
--- a/weinre.web/modules/weinre/target/Console.coffee
+++ b/weinre.web/modules/weinre/target/Console.coffee
@@ -1,9 +1,21 @@
#---------------------------------------------------------------------------------
-# weinre is available under *either* the terms of the modified BSD license *or* the
-# MIT License (2008). See http:#opensource.org/licenses/alphabetical for full text.
+# 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
#
-# Copyright (c) 2010, 2011 IBM Corporation
+# 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.
#---------------------------------------------------------------------------------
Weinre = require('../common/Weinre')
diff --git a/weinre.web/modules/weinre/target/ElementHighlighter.coffee b/weinre.web/modules/weinre/target/ElementHighlighter.coffee
index 52d0aed..991e9c1 100644
--- a/weinre.web/modules/weinre/target/ElementHighlighter.coffee
+++ b/weinre.web/modules/weinre/target/ElementHighlighter.coffee
@@ -1,9 +1,21 @@
#---------------------------------------------------------------------------------
-# weinre is available under *either* the terms of the modified BSD license *or* the
-# MIT License (2008). See http:#opensource.org/licenses/alphabetical for full text.
+# 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
#
-# Copyright (c) 2010, 2011 IBM Corporation
+# 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.
#---------------------------------------------------------------------------------
canvasAvailable = null
diff --git a/weinre.web/modules/weinre/target/ElementHighlighterDivs2.coffee b/weinre.web/modules/weinre/target/ElementHighlighterDivs2.coffee
index 8185160..a289114 100644
--- a/weinre.web/modules/weinre/target/ElementHighlighterDivs2.coffee
+++ b/weinre.web/modules/weinre/target/ElementHighlighterDivs2.coffee
@@ -1,9 +1,21 @@
#---------------------------------------------------------------------------------
-# weinre is available under *either* the terms of the modified BSD license *or* the
-# MIT License (2008). See http:#opensource.org/licenses/alphabetical for full text.
+# 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
#
-# Copyright (c) 2010, 2011 IBM Corporation
+# 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.
#---------------------------------------------------------------------------------
ElementHighlighter = require('./ElementHighlighter')
diff --git a/weinre.web/modules/weinre/target/HookSites.coffee b/weinre.web/modules/weinre/target/HookSites.coffee
index 13dedb1..d3ac492 100644
--- a/weinre.web/modules/weinre/target/HookSites.coffee
+++ b/weinre.web/modules/weinre/target/HookSites.coffee
@@ -1,9 +1,21 @@
#---------------------------------------------------------------------------------
-# weinre is available under *either* the terms of the modified BSD license *or* the
-# MIT License (2008). See http:#opensource.org/licenses/alphabetical for full text.
+# 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
#
-# Copyright (c) 2010, 2011 IBM Corporation
+# 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.
#---------------------------------------------------------------------------------
HookLib = require('../common/HookLib')
diff --git a/weinre.web/modules/weinre/target/InjectedScriptHostImpl.coffee b/weinre.web/modules/weinre/target/InjectedScriptHostImpl.coffee
index d1553c6..0358fd9 100644
--- a/weinre.web/modules/weinre/target/InjectedScriptHostImpl.coffee
+++ b/weinre.web/modules/weinre/target/InjectedScriptHostImpl.coffee
@@ -1,9 +1,21 @@
#---------------------------------------------------------------------------------
-# weinre is available under *either* the terms of the modified BSD license *or* the
-# MIT License (2008). See http:#opensource.org/licenses/alphabetical for full text.
+# 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
#
-# Copyright (c) 2010, 2011 IBM Corporation
+# 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.
#---------------------------------------------------------------------------------
Weinre = require('../common/Weinre')
diff --git a/weinre.web/modules/weinre/target/NetworkRequest.coffee b/weinre.web/modules/weinre/target/NetworkRequest.coffee
index 64849d1..076fa5d 100644
--- a/weinre.web/modules/weinre/target/NetworkRequest.coffee
+++ b/weinre.web/modules/weinre/target/NetworkRequest.coffee
@@ -1,9 +1,21 @@
#---------------------------------------------------------------------------------
-# weinre is available under *either* the terms of the modified BSD license *or* the
-# MIT License (2008). See http:#opensource.org/licenses/alphabetical for full text.
+# 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
#
-# Copyright (c) 2011 IBM Corporation
+# 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.
#---------------------------------------------------------------------------------
StackTrace = require('../common/StackTrace')
diff --git a/weinre.web/modules/weinre/target/NodeStore.coffee b/weinre.web/modules/weinre/target/NodeStore.coffee
index edd0269..b12fe1f 100644
--- a/weinre.web/modules/weinre/target/NodeStore.coffee
+++ b/weinre.web/modules/weinre/target/NodeStore.coffee
@@ -1,9 +1,21 @@
#---------------------------------------------------------------------------------
-# weinre is available under *either* the terms of the modified BSD license *or* the
-# MIT License (2008). See http:#opensource.org/licenses/alphabetical for full text.
+# 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
#
-# Copyright (c) 2010, 2011 IBM Corporation
+# 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.
#---------------------------------------------------------------------------------
Weinre = require('../common/Weinre')
diff --git a/weinre.web/modules/weinre/target/SqlStepper.coffee b/weinre.web/modules/weinre/target/SqlStepper.coffee
index 82b5997..b8c65b4 100644
--- a/weinre.web/modules/weinre/target/SqlStepper.coffee
+++ b/weinre.web/modules/weinre/target/SqlStepper.coffee
@@ -1,9 +1,21 @@
#---------------------------------------------------------------------------------
-# weinre is available under *either* the terms of the modified BSD license *or* the
-# MIT License (2008). See http:#opensource.org/licenses/alphabetical for full text.
+# 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
#
-# Copyright (c) 2010, 2011 IBM Corporation
+# 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.
#---------------------------------------------------------------------------------
Binding = require('../common/Binding')
diff --git a/weinre.web/modules/weinre/target/Target.coffee b/weinre.web/modules/weinre/target/Target.coffee
index fcbcfd9..3d3eed3 100644
--- a/weinre.web/modules/weinre/target/Target.coffee
+++ b/weinre.web/modules/weinre/target/Target.coffee
@@ -1,9 +1,21 @@
#---------------------------------------------------------------------------------
-# weinre is available under *either* the terms of the modified BSD license *or* the
-# MIT License (2008). See http:#opensource.org/licenses/alphabetical for full text.
+# 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
#
-# Copyright (c) 2010, 2011 IBM Corporation
+# 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.
#---------------------------------------------------------------------------------
Ex = require('../common/Ex')
diff --git a/weinre.web/modules/weinre/target/Timeline.coffee b/weinre.web/modules/weinre/target/Timeline.coffee
index f50922c..a66dfed 100644
--- a/weinre.web/modules/weinre/target/Timeline.coffee
+++ b/weinre.web/modules/weinre/target/Timeline.coffee
@@ -1,9 +1,21 @@
#---------------------------------------------------------------------------------
-# weinre is available under *either* the terms of the modified BSD license *or* the
-# MIT License (2008). See http:#opensource.org/licenses/alphabetical for full text.
+# 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
#
-# Copyright (c) 2010, 2011 IBM Corporation
+# 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.
#---------------------------------------------------------------------------------
Ex = require('../common/Ex')
diff --git a/weinre.web/modules/weinre/target/WeinreExtraClientCommandsImpl.coffee b/weinre.web/modules/weinre/target/WeinreExtraClientCommandsImpl.coffee
index e638355..490eaca 100644
--- a/weinre.web/modules/weinre/target/WeinreExtraClientCommandsImpl.coffee
+++ b/weinre.web/modules/weinre/target/WeinreExtraClientCommandsImpl.coffee
@@ -1,9 +1,21 @@
#---------------------------------------------------------------------------------
-# weinre is available under *either* the terms of the modified BSD license *or* the
-# MIT License (2008). See http:#opensource.org/licenses/alphabetical for full text.
+# 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
#
-# Copyright (c) 2010, 2011 IBM Corporation
+# 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.
#---------------------------------------------------------------------------------
Weinre = require('../common/Weinre')
diff --git a/weinre.web/modules/weinre/target/WeinreTargetEventsImpl.coffee b/weinre.web/modules/weinre/target/WeinreTargetEventsImpl.coffee
index 65bb187..5f308aa 100644
--- a/weinre.web/modules/weinre/target/WeinreTargetEventsImpl.coffee
+++ b/weinre.web/modules/weinre/target/WeinreTargetEventsImpl.coffee
@@ -1,9 +1,21 @@
#---------------------------------------------------------------------------------
-# weinre is available under *either* the terms of the modified BSD license *or* the
-# MIT License (2008). See http:#opensource.org/licenses/alphabetical for full text.
+# 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
#
-# Copyright (c) 2010, 2011 IBM Corporation
+# 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.
#---------------------------------------------------------------------------------
Weinre = require('../common/Weinre')
diff --git a/weinre.web/modules/weinre/target/WiCSSImpl.coffee b/weinre.web/modules/weinre/target/WiCSSImpl.coffee
index c5e0932..0ea53f0 100644
--- a/weinre.web/modules/weinre/target/WiCSSImpl.coffee
+++ b/weinre.web/modules/weinre/target/WiCSSImpl.coffee
@@ -1,9 +1,21 @@
#---------------------------------------------------------------------------------
-# weinre is available under *either* the terms of the modified BSD license *or* the
-# MIT License (2008). See http:#opensource.org/licenses/alphabetical for full text.
+# 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
#
-# Copyright (c) 2010, 2011 IBM Corporation
+# 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.
#---------------------------------------------------------------------------------
Weinre = require('../common/Weinre')
diff --git a/weinre.web/modules/weinre/target/WiConsoleImpl.coffee b/weinre.web/modules/weinre/target/WiConsoleImpl.coffee
index 35ab3f7..5ce8dac 100644
--- a/weinre.web/modules/weinre/target/WiConsoleImpl.coffee
+++ b/weinre.web/modules/weinre/target/WiConsoleImpl.coffee
@@ -1,9 +1,21 @@
#---------------------------------------------------------------------------------
-# weinre is available under *either* the terms of the modified BSD license *or* the
-# MIT License (2008). See http:#opensource.org/licenses/alphabetical for full text.
+# 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
#
-# Copyright (c) 2010, 2011 IBM Corporation
+# 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.
#---------------------------------------------------------------------------------
Weinre = require('../common/Weinre')
diff --git a/weinre.web/modules/weinre/target/WiDOMImpl.coffee b/weinre.web/modules/weinre/target/WiDOMImpl.coffee
index 675b5b9..7d83ac8 100644
--- a/weinre.web/modules/weinre/target/WiDOMImpl.coffee
+++ b/weinre.web/modules/weinre/target/WiDOMImpl.coffee
@@ -1,9 +1,21 @@
#---------------------------------------------------------------------------------
-# weinre is available under *either* the terms of the modified BSD license *or* the
-# MIT License (2008). See http:#opensource.org/licenses/alphabetical for full text.
+# 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
#
-# Copyright (c) 2010, 2011 IBM Corporation
+# 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.
#---------------------------------------------------------------------------------
Weinre = require('../common/Weinre')
diff --git a/weinre.web/modules/weinre/target/WiDOMStorageImpl.coffee b/weinre.web/modules/weinre/target/WiDOMStorageImpl.coffee
index b52e9c0..e6b5b19 100644
--- a/weinre.web/modules/weinre/target/WiDOMStorageImpl.coffee
+++ b/weinre.web/modules/weinre/target/WiDOMStorageImpl.coffee
@@ -1,9 +1,21 @@
#---------------------------------------------------------------------------------
-# weinre is available under *either* the terms of the modified BSD license *or* the
-# MIT License (2008). See http:#opensource.org/licenses/alphabetical for full text.
+# 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
#
-# Copyright (c) 2010, 2011 IBM Corporation
+# 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.
#---------------------------------------------------------------------------------
Weinre = require('../common/Weinre')
diff --git a/weinre.web/modules/weinre/target/WiDatabaseImpl.coffee b/weinre.web/modules/weinre/target/WiDatabaseImpl.coffee
index 0c58b13..7c1cfc6 100644
--- a/weinre.web/modules/weinre/target/WiDatabaseImpl.coffee
+++ b/weinre.web/modules/weinre/target/WiDatabaseImpl.coffee
@@ -1,9 +1,21 @@
#---------------------------------------------------------------------------------
-# weinre is available under *either* the terms of the modified BSD license *or* the
-# MIT License (2008). See http:#opensource.org/licenses/alphabetical for full text.
+# 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
#
-# Copyright (c) 2010, 2011 IBM Corporation
+# 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.
#---------------------------------------------------------------------------------
Weinre = require('../common/Weinre')
diff --git a/weinre.web/modules/weinre/target/WiInspectorImpl.coffee b/weinre.web/modules/weinre/target/WiInspectorImpl.coffee
index daef844..8e846ea 100644
--- a/weinre.web/modules/weinre/target/WiInspectorImpl.coffee
+++ b/weinre.web/modules/weinre/target/WiInspectorImpl.coffee
@@ -1,9 +1,21 @@
#---------------------------------------------------------------------------------
-# weinre is available under *either* the terms of the modified BSD license *or* the
-# MIT License (2008). See http:#opensource.org/licenses/alphabetical for full text.
+# 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
#
-# Copyright (c) 2010, 2011 IBM Corporation
+# 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.
#---------------------------------------------------------------------------------
Weinre = require('../common/Weinre')
diff --git a/weinre.web/modules/weinre/target/WiRuntimeImpl.coffee b/weinre.web/modules/weinre/target/WiRuntimeImpl.coffee
index 14c2e77..7a1584c 100644
--- a/weinre.web/modules/weinre/target/WiRuntimeImpl.coffee
+++ b/weinre.web/modules/weinre/target/WiRuntimeImpl.coffee
@@ -1,9 +1,21 @@
#---------------------------------------------------------------------------------
-# weinre is available under *either* the terms of the modified BSD license *or* the
-# MIT License (2008). See http:#opensource.org/licenses/alphabetical for full text.
+# 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
#
-# Copyright (c) 2010, 2011 IBM Corporation
+# 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.
#---------------------------------------------------------------------------------
Weinre = require('../common/Weinre')
diff --git a/weinre.web/modules/weinre/unused/ElementHighlighterCanvas.coffee b/weinre.web/modules/weinre/unused/ElementHighlighterCanvas.coffee
index 2549466..8532f52 100644
--- a/weinre.web/modules/weinre/unused/ElementHighlighterCanvas.coffee
+++ b/weinre.web/modules/weinre/unused/ElementHighlighterCanvas.coffee
@@ -1,9 +1,21 @@
#---------------------------------------------------------------------------------
-# weinre is available under *either* the terms of the modified BSD license *or* the
-# MIT License (2008). See http:#opensource.org/licenses/alphabetical for full text.
+# 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
#
-# Copyright (c) 2010, 2011 IBM Corporation
+# 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.
#---------------------------------------------------------------------------------
ElementHighlighter = require('./ElementHighlighter')
diff --git a/weinre.web/modules/weinre/unused/ElementHighlighterDivs4.coffee b/weinre.web/modules/weinre/unused/ElementHighlighterDivs4.coffee
index dea11a1..a851a41 100644
--- a/weinre.web/modules/weinre/unused/ElementHighlighterDivs4.coffee
+++ b/weinre.web/modules/weinre/unused/ElementHighlighterDivs4.coffee
@@ -1,9 +1,21 @@
#---------------------------------------------------------------------------------
-# weinre is available under *either* the terms of the modified BSD license *or* the
-# MIT License (2008). See http:#opensource.org/licenses/alphabetical for full text.
+# 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
#
-# Copyright (c) 2010, 2011 IBM Corporation
+# 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.
#---------------------------------------------------------------------------------
ElementHighlighter = require('./ElementHighlighter')
diff --git a/weinre.web/tests/element-highlighter.html b/weinre.web/tests/element-highlighter.html
index d59ef61..f0cd264 100644
--- a/weinre.web/tests/element-highlighter.html
+++ b/weinre.web/tests/element-highlighter.html
@@ -1,3 +1,22 @@
+<!--
+ * 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.
+-->
+
<html>
<head>
diff --git a/weinre.web/tests/index.html b/weinre.web/tests/index.html
index 54b577a..ca9dd9c 100644
--- a/weinre.web/tests/index.html
+++ b/weinre.web/tests/index.html
@@ -1,3 +1,22 @@
+<!--
+ * 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.
+-->
+
<html>
<head>
<title>weinre.web/tests</title>
diff --git a/weinre.web/versions.js b/weinre.web/versions.js
index af1f435..0e4c545 100644
--- a/weinre.web/versions.js
+++ b/weinre.web/versions.js
@@ -1,8 +1,20 @@
/*
- * weinre is available under *either* the terms of the modified BSD license *or* the
- * MIT License (2008). See http://opensource.org/licenses/alphabetical for full text.
+ * 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
*
- * Copyright (c) 2010, 2011 IBM Corporation
+ * 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.
*/
if (typeof Weinre == "undefined") Weinre = {};