diff --git a/.classpath b/.classpath
index 1137ee62d..e2d9d4a17 100644
--- a/.classpath
+++ b/.classpath
@@ -11,15 +11,14 @@
-
-
+
+
-
@@ -76,6 +75,13 @@
+
+
+
+
+
+
+
diff --git a/.gitignore b/.gitignore
index 37aee476d..e13dc11a2 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,5 +1,8 @@
+*~
+\#*#
*.DS_Store
*.class
+.com.apple.timemachine.supported
.import-temp/
build/
dist/
@@ -18,4 +21,5 @@ broker/core/module/MOD-INF/classes/
broker/core/WEB-INF/lib/
broker/core/data/
broker/core/test-output/
+tmp/
/test-output
diff --git a/build.xml b/build.xml
index 0dbd25245..6b5119ff6 100644
--- a/build.xml
+++ b/build.xml
@@ -14,7 +14,6 @@
-
@@ -25,7 +24,7 @@
-
+
@@ -174,7 +173,7 @@
-
@@ -207,6 +206,7 @@
+
@@ -217,16 +217,17 @@
+
+
-
-
+
@@ -254,14 +255,13 @@
-
+
-
@@ -277,6 +277,7 @@
+ server/lib/*.jar
- -Djava.library.path=server/lib/native/windows -Drefine.version=${revision}
+ -Djava.library.path=server/lib/native/windows
-
+
@@ -372,7 +373,7 @@
-
+
diff --git a/extensions/freebase/module/MOD-INF/controller.js b/extensions/freebase/module/MOD-INF/controller.js
index d3a37f84a..206e395c9 100644
--- a/extensions/freebase/module/MOD-INF/controller.js
+++ b/extensions/freebase/module/MOD-INF/controller.js
@@ -59,7 +59,6 @@ function init() {
RS.registerCommand(module, "import-qa-data", new Packages.com.google.refine.freebase.commands.ImportQADataCommand());
RS.registerCommand(module, "mqlread", new Packages.com.google.refine.freebase.commands.MQLReadCommand());
RS.registerCommand(module, "mqlwrite", new Packages.com.google.refine.freebase.commands.MQLWriteCommand());
- RS.registerCommand(module, "load-language", new Packages.com.google.refine.freebase.commands.LoadLanguageCommand());
var OR = Packages.com.google.refine.operations.OperationRegistry;
diff --git a/extensions/freebase/module/langs/translation-default.json b/extensions/freebase/module/langs/translation-default.json
index f40a6d384..7659541d4 100644
--- a/extensions/freebase/module/langs/translation-default.json
+++ b/extensions/freebase/module/langs/translation-default.json
@@ -1,115 +1,125 @@
-{
- "fb-schema-alignment": {
- "close-confirm": "There are unsaved changes. Close anyway?",
- "status-warning": "There are unsaved changes.",
- "assert-link-found": "Assert link when 'true' is found in column",
- "search-pick-property": "Search for a property or pick one below",
- "search-property": "Search for a property",
- "cell": "cell",
- "cells": "cells",
- "which-column": "Which column?",
- "configure": "Configure...",
- "which-topic": "Which topic?",
- "what-value": "What value?",
- "anonymous": "anonymous",
- "add-property": "add property",
- "anonymous-node": "Anonymous Node",
- "freebase-topic": "Freebase Topic",
- "value": "Value",
- "skeleton-node": "Schema Alignment Skeleton Node",
- "text": "text",
- "int": "int",
- "float": "float",
- "double": "double",
- "boolean": "boolean",
- "date-time": "date/time",
- "rawstring": "rawstring",
- "set-to-cell": "Set to Cell in Column",
- "cell-content-used": "The cell's content is used ...",
- "specify-fb-topic": "to specify a Freebase topic, as reconciled",
- "type-new-topics": "Type new topics as",
- "literal-value": "as a literal value",
- "literal-type": "Literal type",
- "text-language": "Text language",
- "key-namespace": "as a key in a namespace",
- "namespace": "Namespace",
- "generate-anonymous": "Generate an anonymous graph node",
- "assign-type": "Assign a type to the node",
- "use-existing-topic": "Use one existing Freebase topic",
- "value-type": "Value type",
- "language": "Language",
- "use-literal-value": "Use a literal value",
- "column-warning": "You must select at least one column",
- "new-node-warning": "For creating a new graph node, you need to specify a type for it.",
- "namespace-warning": "Please specify the namespace.",
- "anonymous-node-warning": "For generating an anonymous graph node, you need to specify a type for it",
- "specify-topic-warning": "Please specify which existing Freebase topic to use",
- "specify-value-warning": "Please specify the value to use"
- },
- "fb-interface": {
- "dialog-header": "Align to Freebase's Schemas",
- "body-text": "The schema alignment skeleton below specifies how your grid-shaped data will be transformed into graph-shaped data in Freebase's schemas.",
- "find-more": "Find out more ...",
- "skeleton": "Skeleton",
- "mql-preview": "MQL-like Preview",
- "tripleloader-preview": "TripleLoader Preview"
- },
- "fb-dialogs": {
- "sign-in": "Sign into Freebase",
- "enable-loading": "to enable loading",
- "error-new-topic": "Error creating new topic",
- "error-loading-data": "Error loading data",
- "add-info-source": "Click here to add a new information source",
- "dialog-header": "Load Data into Freebase",
- "no-triples-dataset": "This dataset has no triples",
- "warning-aligned": "Have you aligned it with Freebase's schemas yet?",
- "name-of-data": "Name of data load",
- "source-id": "Source ID (optional)",
- "bodytext-1": "Note: Your data will only be loaded into",
- "bodytext-2": "Sandbox is where everyone can experiment with Freebase technologies without disruption to the official",
- "bodytext-3": "Sandbox gets",
- "sandbox-link": " Sandbox",
- "freebase-link": " Freebase",
- "refreshed-link": " refreshed periodically",
- "bodytext-4": "In order to load your data into the official Freebase, you must first load it into Sandbox. Then it must pass a Quality Assurance (QA) process before it can be loaded into Freebase proper.",
- "quality-assurance": "Quality assurance",
- "bodytext-5": "After loaded into Sandbox, enlist other people's help to double-check this data load's quality so that it can be loaded into Freebase.",
- "triple-schedule": "triples successfully scheduled for loading",
- "follow-progress": "Follow the loading progress in the ",
- "refinery-link": "Freebase Refinery",
- "signed-as": "Signed in as:",
- "sign-out": "Sign Out"
- },
- "fb-qa": {
- "header": "QA Data Load?",
- "bodytext-1": "Other people will be enlisted to help double-check your data load for quality assurance purposes. Their time and labor have a cost.",
- "bodytext-2": "You yourself should have taken all reasonable measures to eliminate errors from your data load. Your prudence is greatly appreciated.",
- "tell-more": "Tell me more ...",
- "ok-button": "Yes, QA Data Load"
- },
- "fb-extend": {
- "add-column": "Add Columns from Freebase Based on Column",
- "warning-add-properties": "Please add some properties first.",
- "querying-freebase": "Querying Freebase ...",
- "remove-column": "Remove this column",
- "add-constraints": "Add constraints to this column",
- "mql-constraints": "Enter MQL query constraints as JSON",
- "warning-valid-json": "Please ensure that the JSON you enter is valid.",
- "warning-json-obj": "The JSON you enter must be an object, that is, it is of this form { ... }.",
- "add-property": "Add Property",
- "suggested-properties": "Suggested Properties",
- "constraint": "Constraint"
- },
- "fb-buttons": {
- "save": "Save",
- "save-load": "Save & Load",
- "close": "Close",
- "reset": "Reset",
- "cancel": "Cancel",
- "align-now": "Align Now",
- "settings": "Settings",
- "preview": "Preview",
- "load-sandbox": "Load to Sandbox",
- "ok": "Ok"
- }
-}
\ No newline at end of file
+{
+ "fb-schema-alignment": {
+ "close-confirm": "There are unsaved changes. Close anyway?",
+ "status-warning": "There are unsaved changes.",
+ "assert-link-found": "Assert link when 'true' is found in column",
+ "search-pick-property": "Search for a property or pick one below",
+ "search-property": "Search for a property",
+ "cell": "cell",
+ "cells": "cells",
+ "which-column": "Which column?",
+ "configure": "Configure...",
+ "which-topic": "Which topic?",
+ "what-value": "What value?",
+ "anonymous": "anonymous",
+ "add-property": "add property",
+ "anonymous-node": "Anonymous Node",
+ "freebase-topic": "Freebase Topic",
+ "value": "Value",
+ "skeleton-node": "Schema Alignment Skeleton Node",
+ "text": "text",
+ "int": "int",
+ "float": "float",
+ "double": "double",
+ "boolean": "boolean",
+ "date-time": "date/time",
+ "rawstring": "rawstring",
+ "set-to-cell": "Set to Cell in Column",
+ "cell-content-used": "The cell's content is used ...",
+ "specify-fb-topic": "to specify a Freebase topic, as reconciled",
+ "type-new-topics": "Type new topics as",
+ "literal-value": "as a literal value",
+ "literal-type": "Literal type",
+ "text-language": "Text language",
+ "key-namespace": "as a key in a namespace",
+ "namespace": "Namespace",
+ "generate-anonymous": "Generate an anonymous graph node",
+ "assign-type": "Assign a type to the node",
+ "use-existing-topic": "Use one existing Freebase topic",
+ "value-type": "Value type",
+ "language": "Language",
+ "use-literal-value": "Use a literal value",
+ "column-warning": "You must select at least one column",
+ "new-node-warning": "For creating a new graph node, you need to specify a type for it.",
+ "namespace-warning": "Please specify the namespace.",
+ "anonymous-node-warning": "For generating an anonymous graph node, you need to specify a type for it.",
+ "specify-topic-warning": "Please specify which existing Freebase topic to use",
+ "specify-value-warning": "Please specify the value to use"
+ },
+ "fb-interface": {
+ "dialog-header": "Align to Freebase's Schemas",
+ "body-text": "The schema alignment skeleton below specifies how your grid-shaped data will be transformed into graph-shaped data in Freebase's schemas.",
+ "find-more": "Find out more ...",
+ "skeleton": "Skeleton",
+ "mql-preview": "MQL-like Preview",
+ "tripleloader-preview": "TripleLoader Preview"
+ },
+ "fb-dialogs": {
+ "sign-in": "Sign into Freebase",
+ "enable-loading": "to enable loading",
+ "error-new-topic": "Error creating new topic",
+ "error-loading-data": "Error loading data",
+ "add-info-source": "Click here to add a new information source",
+ "dialog-header": "Load Data into Freebase",
+ "no-triples-dataset": "This dataset has no triples",
+ "warning-aligned": "Have you aligned it with Freebase's schemas yet?",
+ "name-of-data": "Name of data load",
+ "source-id": "Source ID (optional)",
+ "bodytext-1": "Note: Your data will only be loaded into",
+ "bodytext-2": "Sandbox is where everyone can experiment with Freebase technologies without disruption to the official",
+ "bodytext-3": "Sandbox gets",
+ "sandbox-link": " Sandbox",
+ "freebase-link": " Freebase",
+ "refreshed-link": " refreshed periodically",
+ "bodytext-4": "In order to load your data into the official Freebase, you must first load it into Sandbox. Then it must pass a Quality Assurance (QA) process before it can be loaded into Freebase proper.",
+ "quality-assurance": "Quality assurance",
+ "bodytext-5": "After loaded into Sandbox, enlist other people's help to double-check this data load's quality so that it can be loaded into Freebase.",
+ "triple-schedule": "triples successfully scheduled for loading",
+ "follow-progress": "Follow the loading progress in the ",
+ "refinery-link": "Freebase Refinery",
+ "signed-as": "Signed in as:",
+ "sign-out": "Sign Out"
+ },
+ "fb-qa": {
+ "header": "QA Data Load?",
+ "bodytext-1": "Other people will be enlisted to help double-check your data load for quality assurance purposes. Their time and labor have a cost.",
+ "bodytext-2": "You yourself should have taken all reasonable measures to eliminate errors from your data load. Your prudence is greatly appreciated.",
+ "tell-more": "Tell me more ...",
+ "ok-button": "Yes, QA Data Load"
+ },
+ "fb-extend": {
+ "add-column": "Add Columns from Freebase Based on Column",
+ "warning-add-properties": "Please add some properties first.",
+ "querying-freebase": "Querying Freebase ...",
+ "remove-column": "Remove this column",
+ "add-constraints": "Add constraints to this column",
+ "mql-constraints": "Enter MQL query constraints as JSON",
+ "warning-valid-json": "Please ensure that the JSON you enter is valid.",
+ "warning-json-obj": "The JSON you enter must be an object, that is, it is of this form { ... }.",
+ "add-property": "Add Property",
+ "suggested-properties": "Suggested Properties",
+ "constraint": "Constraint"
+ },
+ "fb-menu": {
+ "freebase": "Freebase",
+ "set-api-key": "Set Freebase API Key",
+ "align-schema": "Align to Freebase's schemas...",
+ "load": "Load into Freebase...",
+ "browse-data-load": "Browse data load details...",
+ "import-qa": "Import QA data",
+ "add-columns": "Add columns from Freebase ...",
+ "warning-load": "You have not tried to load the data in this project into Freebase yet."
+ },
+ "fb-buttons": {
+ "save": "Save",
+ "save-load": "Save & Load",
+ "close": "Close",
+ "reset": "Reset",
+ "cancel": "Cancel",
+ "align-now": "Align Now",
+ "settings": "Settings",
+ "preview": "Preview",
+ "load-sandbox": "Load to Sandbox",
+ "ok": "Ok"
+ }
+}
diff --git a/extensions/freebase/module/langs/translation-en.json b/extensions/freebase/module/langs/translation-en.json
index 2c9584b83..7659541d4 100644
--- a/extensions/freebase/module/langs/translation-en.json
+++ b/extensions/freebase/module/langs/translation-en.json
@@ -1,125 +1,125 @@
-{
- "fb-schema-alignment": {
- "close-confirm": "There are unsaved changes. Close anyway?",
- "status-warning": "There are unsaved changes.",
- "assert-link-found": "Assert link when 'true' is found in column",
- "search-pick-property": "Search for a property or pick one below",
- "search-property": "Search for a property",
- "cell": "cell",
- "cells": "cells",
- "which-column": "Which column?",
- "configure": "Configure...",
- "which-topic": "Which topic?",
- "what-value": "What value?",
- "anonymous": "anonymous",
- "add-property": "add property",
- "anonymous-node": "Anonymous Node",
- "freebase-topic": "Freebase Topic",
- "value": "Value",
- "skeleton-node": "Schema Alignment Skeleton Node",
- "text": "text",
- "int": "int",
- "float": "float",
- "double": "double",
- "boolean": "boolean",
- "date-time": "date/time",
- "rawstring": "rawstring",
- "set-to-cell": "Set to Cell in Column",
- "cell-content-used": "The cell's content is used ...",
- "specify-fb-topic": "to specify a Freebase topic, as reconciled",
- "type-new-topics": "Type new topics as",
- "literal-value": "as a literal value",
- "literal-type": "Literal type",
- "text-language": "Text language",
- "key-namespace": "as a key in a namespace",
- "namespace": "Namespace",
- "generate-anonymous": "Generate an anonymous graph node",
- "assign-type": "Assign a type to the node",
- "use-existing-topic": "Use one existing Freebase topic",
- "value-type": "Value type",
- "language": "Language",
- "use-literal-value": "Use a literal value",
- "column-warning": "You must select at least one column",
- "new-node-warning": "For creating a new graph node, you need to specify a type for it.",
- "namespace-warning": "Please specify the namespace.",
- "anonymous-node-warning": "For generating an anonymous graph node, you need to specify a type for it.",
- "specify-topic-warning": "Please specify which existing Freebase topic to use",
- "specify-value-warning": "Please specify the value to use"
- },
- "fb-interface": {
- "dialog-header": "Align to Freebase's Schemas",
- "body-text": "The schema alignment skeleton below specifies how your grid-shaped data will be transformed into graph-shaped data in Freebase's schemas.",
- "find-more": "Find out more ...",
- "skeleton": "Skeleton",
- "mql-preview": "MQL-like Preview",
- "tripleloader-preview": "TripleLoader Preview"
- },
- "fb-dialogs": {
- "sign-in": "Sign into Freebase",
- "enable-loading": "to enable loading",
- "error-new-topic": "Error creating new topic",
- "error-loading-data": "Error loading data",
- "add-info-source": "Click here to add a new information source",
- "dialog-header": "Load Data into Freebase",
- "no-triples-dataset": "This dataset has no triples",
- "warning-aligned": "Have you aligned it with Freebase's schemas yet?",
- "name-of-data": "Name of data load",
- "source-id": "Source ID (optional)",
- "bodytext-1": "Note: Your data will only be loaded into",
- "bodytext-2": "Sandbox is where everyone can experiment with Freebase technologies without disruption to the official",
- "bodytext-3": "Sandbox gets",
- "sandbox-link": " Sandbox",
- "freebase-link": " Freebase",
- "refreshed-link": " refreshed periodically",
- "bodytext-4": "In order to load your data into the official Freebase, you must first load it into Sandbox. Then it must pass a Quality Assurance (QA) process before it can be loaded into Freebase proper.",
- "quality-assurance": "Quality assurance",
- "bodytext-5": "After loaded into Sandbox, enlist other people's help to double-check this data load's quality so that it can be loaded into Freebase.",
- "triple-schedule": "triples successfully scheduled for loading",
- "follow-progress": "Follow the loading progress in the ",
- "refinery-link": "Freebase Refinery",
- "signed-as": "Signed in as:",
- "sign-out": "Sign Out"
- },
- "fb-qa": {
- "header": "QA Data Load?",
- "bodytext-1": "Other people will be enlisted to help double-check your data load for quality assurance purposes. Their time and labor have a cost.",
- "bodytext-2": "You yourself should have taken all reasonable measures to eliminate errors from your data load. Your prudence is greatly appreciated.",
- "tell-more": "Tell me more ...",
- "ok-button": "Yes, QA Data Load"
- },
- "fb-extend": {
- "add-column": "Add Columns from Freebase Based on Column",
- "warning-add-properties": "Please add some properties first.",
- "querying-freebase": "Querying Freebase ...",
- "remove-column": "Remove this column",
- "add-constraints": "Add constraints to this column",
- "mql-constraints": "Enter MQL query constraints as JSON",
- "warning-valid-json": "Please ensure that the JSON you enter is valid.",
- "warning-json-obj": "The JSON you enter must be an object, that is, it is of this form { ... }.",
- "add-property": "Add Property",
- "suggested-properties": "Suggested Properties",
- "constraint": "Constraint"
- },
- "fb-menu": {
- "freebase": "Freebase",
- "set-api-key": "Set Freebase API Key",
- "align-schema": "Align to Freebase's schemas...",
- "load": "Load into Freebase...",
- "browse-data-load": "Browse data load details...",
- "import-qa": "Import QA data",
- "add-columns": "Add columns from Freebase ...",
- "warning-load": "You have not tried to load the data in this project into Freebase yet."
- },
- "fb-buttons": {
- "save": "Save",
- "save-load": "Save & Load",
- "close": "Close",
- "reset": "Reset",
- "cancel": "Cancel",
- "align-now": "Align Now",
- "settings": "Settings",
- "preview": "Preview",
- "load-sandbox": "Load to Sandbox",
- "ok": "Ok"
- }
-}
\ No newline at end of file
+{
+ "fb-schema-alignment": {
+ "close-confirm": "There are unsaved changes. Close anyway?",
+ "status-warning": "There are unsaved changes.",
+ "assert-link-found": "Assert link when 'true' is found in column",
+ "search-pick-property": "Search for a property or pick one below",
+ "search-property": "Search for a property",
+ "cell": "cell",
+ "cells": "cells",
+ "which-column": "Which column?",
+ "configure": "Configure...",
+ "which-topic": "Which topic?",
+ "what-value": "What value?",
+ "anonymous": "anonymous",
+ "add-property": "add property",
+ "anonymous-node": "Anonymous Node",
+ "freebase-topic": "Freebase Topic",
+ "value": "Value",
+ "skeleton-node": "Schema Alignment Skeleton Node",
+ "text": "text",
+ "int": "int",
+ "float": "float",
+ "double": "double",
+ "boolean": "boolean",
+ "date-time": "date/time",
+ "rawstring": "rawstring",
+ "set-to-cell": "Set to Cell in Column",
+ "cell-content-used": "The cell's content is used ...",
+ "specify-fb-topic": "to specify a Freebase topic, as reconciled",
+ "type-new-topics": "Type new topics as",
+ "literal-value": "as a literal value",
+ "literal-type": "Literal type",
+ "text-language": "Text language",
+ "key-namespace": "as a key in a namespace",
+ "namespace": "Namespace",
+ "generate-anonymous": "Generate an anonymous graph node",
+ "assign-type": "Assign a type to the node",
+ "use-existing-topic": "Use one existing Freebase topic",
+ "value-type": "Value type",
+ "language": "Language",
+ "use-literal-value": "Use a literal value",
+ "column-warning": "You must select at least one column",
+ "new-node-warning": "For creating a new graph node, you need to specify a type for it.",
+ "namespace-warning": "Please specify the namespace.",
+ "anonymous-node-warning": "For generating an anonymous graph node, you need to specify a type for it.",
+ "specify-topic-warning": "Please specify which existing Freebase topic to use",
+ "specify-value-warning": "Please specify the value to use"
+ },
+ "fb-interface": {
+ "dialog-header": "Align to Freebase's Schemas",
+ "body-text": "The schema alignment skeleton below specifies how your grid-shaped data will be transformed into graph-shaped data in Freebase's schemas.",
+ "find-more": "Find out more ...",
+ "skeleton": "Skeleton",
+ "mql-preview": "MQL-like Preview",
+ "tripleloader-preview": "TripleLoader Preview"
+ },
+ "fb-dialogs": {
+ "sign-in": "Sign into Freebase",
+ "enable-loading": "to enable loading",
+ "error-new-topic": "Error creating new topic",
+ "error-loading-data": "Error loading data",
+ "add-info-source": "Click here to add a new information source",
+ "dialog-header": "Load Data into Freebase",
+ "no-triples-dataset": "This dataset has no triples",
+ "warning-aligned": "Have you aligned it with Freebase's schemas yet?",
+ "name-of-data": "Name of data load",
+ "source-id": "Source ID (optional)",
+ "bodytext-1": "Note: Your data will only be loaded into",
+ "bodytext-2": "Sandbox is where everyone can experiment with Freebase technologies without disruption to the official",
+ "bodytext-3": "Sandbox gets",
+ "sandbox-link": " Sandbox",
+ "freebase-link": " Freebase",
+ "refreshed-link": " refreshed periodically",
+ "bodytext-4": "In order to load your data into the official Freebase, you must first load it into Sandbox. Then it must pass a Quality Assurance (QA) process before it can be loaded into Freebase proper.",
+ "quality-assurance": "Quality assurance",
+ "bodytext-5": "After loaded into Sandbox, enlist other people's help to double-check this data load's quality so that it can be loaded into Freebase.",
+ "triple-schedule": "triples successfully scheduled for loading",
+ "follow-progress": "Follow the loading progress in the ",
+ "refinery-link": "Freebase Refinery",
+ "signed-as": "Signed in as:",
+ "sign-out": "Sign Out"
+ },
+ "fb-qa": {
+ "header": "QA Data Load?",
+ "bodytext-1": "Other people will be enlisted to help double-check your data load for quality assurance purposes. Their time and labor have a cost.",
+ "bodytext-2": "You yourself should have taken all reasonable measures to eliminate errors from your data load. Your prudence is greatly appreciated.",
+ "tell-more": "Tell me more ...",
+ "ok-button": "Yes, QA Data Load"
+ },
+ "fb-extend": {
+ "add-column": "Add Columns from Freebase Based on Column",
+ "warning-add-properties": "Please add some properties first.",
+ "querying-freebase": "Querying Freebase ...",
+ "remove-column": "Remove this column",
+ "add-constraints": "Add constraints to this column",
+ "mql-constraints": "Enter MQL query constraints as JSON",
+ "warning-valid-json": "Please ensure that the JSON you enter is valid.",
+ "warning-json-obj": "The JSON you enter must be an object, that is, it is of this form { ... }.",
+ "add-property": "Add Property",
+ "suggested-properties": "Suggested Properties",
+ "constraint": "Constraint"
+ },
+ "fb-menu": {
+ "freebase": "Freebase",
+ "set-api-key": "Set Freebase API Key",
+ "align-schema": "Align to Freebase's schemas...",
+ "load": "Load into Freebase...",
+ "browse-data-load": "Browse data load details...",
+ "import-qa": "Import QA data",
+ "add-columns": "Add columns from Freebase ...",
+ "warning-load": "You have not tried to load the data in this project into Freebase yet."
+ },
+ "fb-buttons": {
+ "save": "Save",
+ "save-load": "Save & Load",
+ "close": "Close",
+ "reset": "Reset",
+ "cancel": "Cancel",
+ "align-now": "Align Now",
+ "settings": "Settings",
+ "preview": "Preview",
+ "load-sandbox": "Load to Sandbox",
+ "ok": "Ok"
+ }
+}
diff --git a/extensions/freebase/module/langs/translation-it.json b/extensions/freebase/module/langs/translation-it.json
index dfc7aa1b3..0df0c9c0f 100644
--- a/extensions/freebase/module/langs/translation-it.json
+++ b/extensions/freebase/module/langs/translation-it.json
@@ -1,125 +1,125 @@
-{
- "fb-schema-alignment": {
- "close-confirm": "Ci sono cambiamenti non salvati. Chiudere comunque?",
- "status-warning": "Ci sono cambiamenti non salvati.",
- "assert-link-found": "Assert link when 'true' is found in column",
- "search-pick-property": "Cerca una proprietà o scegline una dalle seguenti",
- "search-property": "Cerca una proprietà",
- "cell": "cella",
- "cells": "celle",
- "which-column": "Quale colonna?",
- "configure": "Configura...",
- "which-topic": "Quale topic?",
- "what-value": "Quale valore?",
- "anonymous": "anonimo",
- "add-property": "aggiungi proprietà",
- "anonymous-node": "Nodo Anonimo",
- "freebase-topic": "Topic Freebase",
- "value": "Valore",
- "skeleton-node": "Schema Alignment Skeleton Node",
- "text": "testo",
- "int": "int",
- "float": "float",
- "double": "double",
- "boolean": "boolean",
- "date-time": "data/ora",
- "rawstring": "rawstring",
- "set-to-cell": "Set to Cell in Column",
- "cell-content-used": "Il contenuto della cella è usato ...",
- "specify-fb-topic": "per specificare un topic Freebase, come riconciliato",
- "type-new-topics": "Inserisci il nuovo topic come",
- "literal-value": "come un valore letterale",
- "literal-type": "Tipo letterale",
- "text-language": "Lingua di testo",
- "key-namespace": "come una chiave nel namespace",
- "namespace": "Namespace",
- "generate-anonymous": "Genera un nodo anonimo nel grafo",
- "assign-type": "Assegna un tipo al nodo",
- "use-existing-topic": "Usa un topic Freebase esistente",
- "value-type": "Tipo valore",
- "language": "Lingua",
- "use-literal-value": "Usa un valore letterale",
- "column-warning": "Devi selezionare almeno una colonna",
- "new-node-warning": "Per creare un nuovo nodo nel grafo, devi specificarne un tipo.",
- "namespace-warning": "Specifica il namespace.",
- "anonymous-node-warning": "Per generare un nodo anonimo nel grafo, devi specificarne un tipo.",
- "specify-topic-warning": "Per favore specifica quale topic esistente di Freebase usare",
- "specify-value-warning": "Per favore specifica il valore da usare"
- },
- "fb-interface": {
- "dialog-header": "Allinea con gli schemi Freebase",
- "body-text": "Lo scheletro per l'allineamento della schema specifica come i tuoi dati in formato tabellare saranno trasformati in un formato a grafo con lo schema di Freebase.",
- "find-more": "Per saperne di più ...",
- "skeleton": "Scheletro",
- "mql-preview": "Anteprima MQL-like",
- "tripleloader-preview": "Anteprima TripleLoader"
- },
- "fb-dialogs": {
- "sign-in": "Accedi a Freebase",
- "enable-loading": "per abilitare il caricamento",
- "error-new-topic": "Errore nella creazione di un nuovo topic",
- "error-loading-data": "Errore durante il caricamento dei dati",
- "add-info-source": "Clicca qui per aggiungere una nuova sorgente di informazioni",
- "dialog-header": "Carica i dati in Freebase",
- "no-triples-dataset": "Questo dataset non ha triple",
- "warning-aligned": "Hai già effettuato l'allineamento con lo schema Freebase?",
- "name-of-data": "Nome del caricamento dati",
- "source-id": "ID sorgente (opzionale)",
- "bodytext-1": "Nota: i tuoi dati saranno caricati solamente in",
- "bodytext-2": "Sandbox è dove chiunque può sperimentare le tecnologie Freebase senza creare danni all'ufficiale",
- "bodytext-3": "Sandbox viene",
- "sandbox-link": " Sandbox",
- "freebase-link": " Freebase",
- "refreshed-link": " aggiornata periodicamente",
- "bodytext-4": "Per caricare i tuoi data su Freebase ufficiale, devi prima caricarli nel Sandbox. Successivamente, devono passare un processo di analisi qualitativa prima di essere caricati su Freebase.",
- "quality-assurance": "Analisi qualitativa",
- "bodytext-5": "Dopo essere caricati nella Sandbox, viene chiesto l'aiuto di altre persone per controllare due volte la qualità di questi dati in modo da poter poi essere caricati in Freebase.",
- "triple-schedule": "triple pianificate con successo per il caricamento",
- "follow-progress": "Segui il processo di caricamento nel ",
- "refinery-link": "Freebase Refinery",
- "signed-as": "Accesso effettuato come:",
- "sign-out": "Esci"
- },
- "fb-qa": {
- "header": "Caricamento dati con analisi qualitativa?",
- "bodytext-1": "Alcune persone verranno incaricate per controllare i tuoi dati allo scopo di verificarne la qualità. Il loro tempo e lavoro ha un costo.",
- "bodytext-2": "Tu stesso dovresti aver già effettuato la maggior parte dei controlli per assicurarti di aver rimosso errori dai dati. La tua prudenza è enormemente apprezzata.",
- "tell-more": "Dimmi di più ...",
- "ok-button": "Si, Caricamento dati con analisi qualitativa"
- },
- "fb-extend": {
- "add-column": "Aggiungi colonne da Freebase basandoti sulla colonna",
- "warning-add-properties": "Prima aggiungi delle proprietà.",
- "querying-freebase": "Interrogando Freebase ...",
- "remove-column": "Rimuovi questa colonna",
- "add-constraints": "Aggiungi vincoli a questa colonna",
- "mql-constraints": "Inserisci i vincoli per la query MQL come JSON",
- "warning-valid-json": "Assicurati che l'oggetto JSON inserito sia valido.",
- "warning-json-obj": "Il JSON che inserisci deve essere un oggetto, cioè in questa forma: { ... }.",
- "add-property": "Aggiungi Proprietà",
- "suggested-properties": "Proprietà suggerite",
- "constraint": "Vincoli"
- },
- "fb-menu": {
- "freebase": "Freebase",
- "set-api-key": "Imposta l'API Key Freebase",
- "align-schema": "Allinea con lo schema Freebase...",
- "load": "Carica in Freebase...",
- "browse-data-load": "Vedi i dettagli per il caricamento dati...",
- "import-qa": "Importa dati con controllo qualità",
- "add-columns": "Aggiungi colonne da Freebase ...",
- "warning-load": "Non hai ancora provato a caricare i dati di questo progetto in Freebase."
- },
- "fb-buttons": {
- "save": "Salva",
- "save-load": "Salva & Carica",
- "close": "Chiudi",
- "reset": "Reset",
- "cancel": "Cancella",
- "align-now": "Allinea adesso",
- "settings": "Settings",
- "preview": "Anteprima",
- "load-sandbox": "Carica nella Sandbox",
- "ok": "Ok"
- }
-}
\ No newline at end of file
+{
+ "fb-schema-alignment": {
+ "close-confirm": "Ci sono cambiamenti non salvati. Chiudere comunque?",
+ "status-warning": "Ci sono cambiamenti non salvati.",
+ "assert-link-found": "Assert link when 'true' is found in column",
+ "search-pick-property": "Cerca una proprietà o scegline una dalle seguenti",
+ "search-property": "Cerca una proprietà",
+ "cell": "cella",
+ "cells": "celle",
+ "which-column": "Quale colonna?",
+ "configure": "Configura...",
+ "which-topic": "Quale topic?",
+ "what-value": "Quale valore?",
+ "anonymous": "anonimo",
+ "add-property": "aggiungi proprietà",
+ "anonymous-node": "Nodo Anonimo",
+ "freebase-topic": "Topic Freebase",
+ "value": "Valore",
+ "skeleton-node": "Schema Alignment Skeleton Node",
+ "text": "testo",
+ "int": "int",
+ "float": "float",
+ "double": "double",
+ "boolean": "boolean",
+ "date-time": "data/ora",
+ "rawstring": "rawstring",
+ "set-to-cell": "Set to Cell in Column",
+ "cell-content-used": "Il contenuto della cella è usato ...",
+ "specify-fb-topic": "per specificare un topic Freebase, come riconciliato",
+ "type-new-topics": "Inserisci il nuovo topic come",
+ "literal-value": "come un valore letterale",
+ "literal-type": "Tipo letterale",
+ "text-language": "Lingua di testo",
+ "key-namespace": "come una chiave nel namespace",
+ "namespace": "Namespace",
+ "generate-anonymous": "Genera un nodo anonimo nel grafo",
+ "assign-type": "Assegna un tipo al nodo",
+ "use-existing-topic": "Usa un topic Freebase esistente",
+ "value-type": "Tipo valore",
+ "language": "Lingua",
+ "use-literal-value": "Usa un valore letterale",
+ "column-warning": "Devi selezionare almeno una colonna",
+ "new-node-warning": "Per creare un nuovo nodo nel grafo, devi specificarne un tipo.",
+ "namespace-warning": "Specifica il namespace.",
+ "anonymous-node-warning": "Per generare un nodo anonimo nel grafo, devi specificarne un tipo.",
+ "specify-topic-warning": "Per favore specifica quale topic esistente di Freebase usare",
+ "specify-value-warning": "Per favore specifica il valore da usare"
+ },
+ "fb-interface": {
+ "dialog-header": "Allinea con gli schemi Freebase",
+ "body-text": "Lo scheletro per l'allineamento della schema specifica come i tuoi dati in formato tabellare saranno trasformati in un formato a grafo con lo schema di Freebase.",
+ "find-more": "Per saperne di più ...",
+ "skeleton": "Scheletro",
+ "mql-preview": "Anteprima MQL-like",
+ "tripleloader-preview": "Anteprima TripleLoader"
+ },
+ "fb-dialogs": {
+ "sign-in": "Accedi a Freebase",
+ "enable-loading": "per abilitare il caricamento",
+ "error-new-topic": "Errore nella creazione di un nuovo topic",
+ "error-loading-data": "Errore durante il caricamento dei dati",
+ "add-info-source": "Clicca qui per aggiungere una nuova sorgente di informazioni",
+ "dialog-header": "Carica i dati in Freebase",
+ "no-triples-dataset": "Questo dataset non ha triple",
+ "warning-aligned": "Hai già effettuato l'allineamento con lo schema Freebase?",
+ "name-of-data": "Nome del caricamento dati",
+ "source-id": "ID sorgente (opzionale)",
+ "bodytext-1": "Nota: i tuoi dati saranno caricati solamente in",
+ "bodytext-2": "Sandbox è dove chiunque può sperimentare le tecnologie Freebase senza creare danni all'ufficiale",
+ "bodytext-3": "Sandbox viene",
+ "sandbox-link": " Sandbox",
+ "freebase-link": " Freebase",
+ "refreshed-link": " aggiornata periodicamente",
+ "bodytext-4": "Per caricare i tuoi data su Freebase ufficiale, devi prima caricarli nel Sandbox. Successivamente, devono passare un processo di analisi qualitativa prima di essere caricati su Freebase.",
+ "quality-assurance": "Analisi qualitativa",
+ "bodytext-5": "Dopo essere caricati nella Sandbox, viene chiesto l'aiuto di altre persone per controllare due volte la qualità di questi dati in modo da poter poi essere caricati in Freebase.",
+ "triple-schedule": "triple pianificate con successo per il caricamento",
+ "follow-progress": "Segui il processo di caricamento nel ",
+ "refinery-link": "Freebase Refinery",
+ "signed-as": "Accesso effettuato come:",
+ "sign-out": "Esci"
+ },
+ "fb-qa": {
+ "header": "Caricamento dati con analisi qualitativa?",
+ "bodytext-1": "Alcune persone verranno incaricate per controllare i tuoi dati allo scopo di verificarne la qualità. Il loro tempo e lavoro ha un costo.",
+ "bodytext-2": "Tu stesso dovresti aver già effettuato la maggior parte dei controlli per assicurarti di aver rimosso errori dai dati. La tua prudenza è enormemente apprezzata.",
+ "tell-more": "Dimmi di più ...",
+ "ok-button": "Si, Caricamento dati con analisi qualitativa"
+ },
+ "fb-extend": {
+ "add-column": "Aggiungi colonne da Freebase basandoti sulla colonna",
+ "warning-add-properties": "Prima aggiungi delle proprietà.",
+ "querying-freebase": "Interrogando Freebase ...",
+ "remove-column": "Rimuovi questa colonna",
+ "add-constraints": "Aggiungi vincoli a questa colonna",
+ "mql-constraints": "Inserisci i vincoli per la query MQL come JSON",
+ "warning-valid-json": "Assicurati che l'oggetto JSON inserito sia valido.",
+ "warning-json-obj": "Il JSON che inserisci deve essere un oggetto, cioè in questa forma: { ... }.",
+ "add-property": "Aggiungi Proprietà",
+ "suggested-properties": "Proprietà suggerite",
+ "constraint": "Vincoli"
+ },
+ "fb-menu": {
+ "freebase": "Freebase",
+ "set-api-key": "Imposta l'API Key Freebase",
+ "align-schema": "Allinea con lo schema Freebase...",
+ "load": "Carica in Freebase...",
+ "browse-data-load": "Vedi i dettagli per il caricamento dati...",
+ "import-qa": "Importa dati con controllo qualità",
+ "add-columns": "Aggiungi colonne da Freebase ...",
+ "warning-load": "Non hai ancora provato a caricare i dati di questo progetto in Freebase."
+ },
+ "fb-buttons": {
+ "save": "Salva",
+ "save-load": "Salva & Carica",
+ "close": "Chiudi",
+ "reset": "Reset",
+ "cancel": "Cancella",
+ "align-now": "Allinea adesso",
+ "settings": "Settings",
+ "preview": "Anteprima",
+ "load-sandbox": "Carica nella Sandbox",
+ "ok": "Ok"
+ }
+}
diff --git a/extensions/freebase/module/scripts/dialogs/schema-alignment/schema-alignment-dialog.html b/extensions/freebase/module/scripts/dialogs/schema-alignment/schema-alignment-dialog.html
index f9e855526..bd6750e2e 100644
--- a/extensions/freebase/module/scripts/dialogs/schema-alignment/schema-alignment-dialog.html
+++ b/extensions/freebase/module/scripts/dialogs/schema-alignment/schema-alignment-dialog.html
@@ -2,7 +2,7 @@
-
+
diff --git a/extensions/freebase/module/scripts/dialogs/schema-alignment/ui-node.js b/extensions/freebase/module/scripts/dialogs/schema-alignment/ui-node.js
index a0fb6f989..354ca3e7c 100644
--- a/extensions/freebase/module/scripts/dialogs/schema-alignment/ui-node.js
+++ b/extensions/freebase/module/scripts/dialogs/schema-alignment/ui-node.js
@@ -471,7 +471,7 @@ SchemaAlignmentDialog.UINode.prototype._showNodeConfigDialog = function() {
});
if (column.name in columnMap) {
- radio.attr("checked", "true");
+ radio.prop("checked", true);
}
$('').text(column.name).appendTo(tr.insertCell(1));
diff --git a/extensions/freebase/module/scripts/extension.js b/extensions/freebase/module/scripts/extension.js
index a56faac14..f15d04cb6 100644
--- a/extensions/freebase/module/scripts/extension.js
+++ b/extensions/freebase/module/scripts/extension.js
@@ -39,11 +39,12 @@ var lang = navigator.language.split("-")[0]
|| navigator.userLanguage.split("-")[0];
var dictionary = "";
$.ajax({
- url : "/command/freebase/load-language?",
+ url : "/command/core/load-language?",
type : "POST",
async : false,
data : {
- lng : lang
+ module : "freebase",
+// lang : lang
},
success : function(data) {
dictionary = data;
diff --git a/extensions/freebase/src/com/google/refine/freebase/commands/LoadLanguageCommand.java b/extensions/freebase/src/com/google/refine/freebase/commands/LoadLanguageCommand.java
deleted file mode 100644
index bbb5661e3..000000000
--- a/extensions/freebase/src/com/google/refine/freebase/commands/LoadLanguageCommand.java
+++ /dev/null
@@ -1,73 +0,0 @@
-
-package com.google.refine.freebase.commands;
-
-import java.io.BufferedReader;
-import java.io.File;
-import java.io.FileInputStream;
-import java.io.FileNotFoundException;
-import java.io.IOException;
-import java.io.InputStreamReader;
-
-import javax.servlet.ServletException;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
-
-import com.google.refine.ProjectManager;
-import com.google.refine.commands.Command;
-
-public class LoadLanguageCommand extends Command {
-
- public LoadLanguageCommand() {
- // TODO Auto-generated constructor stub
- }
-
- @Override
- public void doGet(HttpServletRequest request, HttpServletResponse response)
- throws ServletException, IOException {
- doPost(request, response);
- }
-
- public void doPost(HttpServletRequest request, HttpServletResponse response)
- throws ServletException, IOException {
-
- String rawDirectoryFile = request.getSession().getServletContext()
- .getRealPath("extensions/freebase/module/langs/");
- String cleanedDirectory = rawDirectoryFile.replace("main" + File.separator + "webapp" + File.separator, "");
-
- BufferedReader reader = null;String param = null;
- try {
- param = (String) ProjectManager.singleton.getPreferenceStore().get("userLang");
- } catch (NullPointerException e) {
- }
- if (param == null) param = request.getParameter("lng");
-
- String[] langs = param.split(" ");
- try {
- String file = cleanedDirectory + File.separator + "translation-" + langs[0] + ".json";
- reader = new BufferedReader(new InputStreamReader(new FileInputStream(file), "UTF-8"));
- } catch (FileNotFoundException e1) {
- try {
- String file = cleanedDirectory + File.separator + "translation-default.json";
- reader = new BufferedReader(new InputStreamReader(new FileInputStream(file), "UTF-8"));
- } catch (FileNotFoundException e3) {
- e3.printStackTrace();
- }
- }
-
- String line = null;
- String message = new String();
- if (reader != null) {
- while ((line = reader.readLine()) != null) {
- // buffer.append(line);
- message += line + System.getProperty("line.separator");
- }
- }
-
- response.setCharacterEncoding("UTF-8");
- response.setContentType("application/json");
- response.getWriter().println(message);
- response.getWriter().flush();
- response.getWriter().close();
- }
-
-}
diff --git a/extensions/freebase/src/com/google/refine/freebase/util/FreebaseUtils.java b/extensions/freebase/src/com/google/refine/freebase/util/FreebaseUtils.java
index 82f98ac66..a805e9210 100644
--- a/extensions/freebase/src/com/google/refine/freebase/util/FreebaseUtils.java
+++ b/extensions/freebase/src/com/google/refine/freebase/util/FreebaseUtils.java
@@ -430,6 +430,9 @@ public class FreebaseUtils {
/**
* This RPC call works for the Reconcile API, but MQLread is not supported over JSONRPC
+ *
+ * NOTE: JSONRPC has been deprecated and replaced by HTTP Batch (which also
+ * doesn't support MQLread, so perhaps we should just remove this))
*/
@SuppressWarnings("unused")
static private JSONObject mqlreadRpc(String query) throws JSONException, UnsupportedEncodingException, IOException {
diff --git a/extensions/gdata/build.xml b/extensions/gdata/build.xml
index 0a344cbf2..5f52bda74 100644
--- a/extensions/gdata/build.xml
+++ b/extensions/gdata/build.xml
@@ -63,7 +63,9 @@
-
+
+
+
diff --git a/extensions/gdata/module/MOD-INF/controller.js b/extensions/gdata/module/MOD-INF/controller.js
index 9fc49b2db..428941de3 100644
--- a/extensions/gdata/module/MOD-INF/controller.js
+++ b/extensions/gdata/module/MOD-INF/controller.js
@@ -31,6 +31,13 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
+/*
+ * Controller for GData extension.
+ *
+ * This is run in the Butterfly (ie Refine) server context using the Rhino
+ * Javascript interpreter.
+ */
+
var html = "text/html";
var encoding = "UTF-8";
var version = "0.2";
@@ -43,7 +50,7 @@ function init() {
var RS = Packages.com.google.refine.RefineServlet;
RS.registerCommand(module, "deauthorize", Packages.com.google.refine.extension.gdata.DeAuthorizeCommand());
RS.registerCommand(module, "upload", Packages.com.google.refine.extension.gdata.UploadCommand());
- RS.registerCommand(module, "load-language", Packages.com.google.refine.extension.gdata.commands.LoadLanguageCommand());
+ // TODO: Need a new OAUTH2 authorize command for FusionTables
// Register importer and exporter
var IM = Packages.com.google.refine.importing.ImportingManager;
@@ -101,21 +108,13 @@ function process(path, request, response) {
} else if (path == "authorized") {
var context = {};
context.winname = request.getParameter("winname");
- context.callback = request.getParameter("callback");
+ context.callback = request.getParameter("cb");
(function() {
- var queryString = request.getQueryString();
- if (queryString != null) {
- var AuthSubUtil = Packages.com.google.gdata.client.http.AuthSubUtil;
-
- // FIXME(SM): can we safely assume UTF-8 encoding here?
- var onetimeUseToken = AuthSubUtil.getTokenFromReply(
- Packages.java.net.URLDecoder.decode(queryString, "UTF-8"));
- if (onetimeUseToken) {
- var sessionToken = AuthSubUtil.exchangeForSessionToken(onetimeUseToken, null);
- Packages.com.google.refine.extension.gdata.TokenCookie.setToken(request, response, sessionToken);
- return;
- }
+ var token = Packages.com.google.refine.extension.gdata.GDataExtension.getTokenFromCode(module,request);
+ if (token) {
+ Packages.com.google.refine.extension.gdata.TokenCookie.setToken(request, response, token);
+ return;
}
Packages.com.google.refine.extension.gdata.TokenCookie.deleteToken(request, response);
})();
diff --git a/extensions/gdata/module/MOD-INF/lib-src/google-api-client-1.13.2-beta-sources.jar b/extensions/gdata/module/MOD-INF/lib-src/google-api-client-1.13.2-beta-sources.jar
new file mode 100644
index 000000000..c82833329
Binary files /dev/null and b/extensions/gdata/module/MOD-INF/lib-src/google-api-client-1.13.2-beta-sources.jar differ
diff --git a/extensions/gdata/module/MOD-INF/lib-src/google-api-services-fusiontables-v1-rev17-1.13.2-beta-sources.jar b/extensions/gdata/module/MOD-INF/lib-src/google-api-services-fusiontables-v1-rev17-1.13.2-beta-sources.jar
new file mode 100644
index 000000000..b5a54736c
Binary files /dev/null and b/extensions/gdata/module/MOD-INF/lib-src/google-api-services-fusiontables-v1-rev17-1.13.2-beta-sources.jar differ
diff --git a/extensions/gdata/module/MOD-INF/lib-src/google-http-client-1.13.1-beta-sources.jar b/extensions/gdata/module/MOD-INF/lib-src/google-http-client-1.13.1-beta-sources.jar
new file mode 100644
index 000000000..6377cbf92
Binary files /dev/null and b/extensions/gdata/module/MOD-INF/lib-src/google-http-client-1.13.1-beta-sources.jar differ
diff --git a/extensions/gdata/module/MOD-INF/lib-src/google-http-client-jackson-1.13.1-beta-sources.jar b/extensions/gdata/module/MOD-INF/lib-src/google-http-client-jackson-1.13.1-beta-sources.jar
new file mode 100644
index 000000000..a06710c27
Binary files /dev/null and b/extensions/gdata/module/MOD-INF/lib-src/google-http-client-jackson-1.13.1-beta-sources.jar differ
diff --git a/extensions/gdata/module/MOD-INF/lib-src/google-oauth-client-1.13.1-beta-sources.jar b/extensions/gdata/module/MOD-INF/lib-src/google-oauth-client-1.13.1-beta-sources.jar
new file mode 100644
index 000000000..f14e3a43f
Binary files /dev/null and b/extensions/gdata/module/MOD-INF/lib-src/google-oauth-client-1.13.1-beta-sources.jar differ
diff --git a/extensions/gdata/module/MOD-INF/lib-src/google-oauth-client-servlet-1.13.1-beta-sources.jar b/extensions/gdata/module/MOD-INF/lib-src/google-oauth-client-servlet-1.13.1-beta-sources.jar
new file mode 100644
index 000000000..0af6258ba
Binary files /dev/null and b/extensions/gdata/module/MOD-INF/lib-src/google-oauth-client-servlet-1.13.1-beta-sources.jar differ
diff --git a/extensions/gdata/module/MOD-INF/lib/google-api-client-1.13.2-beta.jar b/extensions/gdata/module/MOD-INF/lib/google-api-client-1.13.2-beta.jar
new file mode 100644
index 000000000..2086bdcf3
Binary files /dev/null and b/extensions/gdata/module/MOD-INF/lib/google-api-client-1.13.2-beta.jar differ
diff --git a/extensions/gdata/module/MOD-INF/lib/google-api-services-fusiontables-v1-rev17-1.13.2-beta.jar b/extensions/gdata/module/MOD-INF/lib/google-api-services-fusiontables-v1-rev17-1.13.2-beta.jar
new file mode 100644
index 000000000..803f758c0
Binary files /dev/null and b/extensions/gdata/module/MOD-INF/lib/google-api-services-fusiontables-v1-rev17-1.13.2-beta.jar differ
diff --git a/extensions/gdata/module/MOD-INF/lib/google-http-client-1.13.1-beta.jar b/extensions/gdata/module/MOD-INF/lib/google-http-client-1.13.1-beta.jar
new file mode 100644
index 000000000..a36330873
Binary files /dev/null and b/extensions/gdata/module/MOD-INF/lib/google-http-client-1.13.1-beta.jar differ
diff --git a/extensions/gdata/module/MOD-INF/lib/google-http-client-jackson-1.13.1-beta.jar b/extensions/gdata/module/MOD-INF/lib/google-http-client-jackson-1.13.1-beta.jar
new file mode 100644
index 000000000..8d38f7710
Binary files /dev/null and b/extensions/gdata/module/MOD-INF/lib/google-http-client-jackson-1.13.1-beta.jar differ
diff --git a/extensions/gdata/module/MOD-INF/lib/google-oauth-client-1.13.1-beta.jar b/extensions/gdata/module/MOD-INF/lib/google-oauth-client-1.13.1-beta.jar
new file mode 100644
index 000000000..9faf0614c
Binary files /dev/null and b/extensions/gdata/module/MOD-INF/lib/google-oauth-client-1.13.1-beta.jar differ
diff --git a/extensions/gdata/module/MOD-INF/lib/google-oauth-client-servlet-1.13.1-beta.jar b/extensions/gdata/module/MOD-INF/lib/google-oauth-client-servlet-1.13.1-beta.jar
new file mode 100644
index 000000000..9970472a2
Binary files /dev/null and b/extensions/gdata/module/MOD-INF/lib/google-oauth-client-servlet-1.13.1-beta.jar differ
diff --git a/extensions/gdata/module/MOD-INF/lib/jsr305-1.3.9.jar b/extensions/gdata/module/MOD-INF/lib/jsr305-1.3.9.jar
new file mode 100644
index 000000000..a9afc6619
Binary files /dev/null and b/extensions/gdata/module/MOD-INF/lib/jsr305-1.3.9.jar differ
diff --git a/extensions/gdata/module/langs/translation-default.json b/extensions/gdata/module/langs/translation-default.json
index c34c60fa7..089eaeac7 100644
--- a/extensions/gdata/module/langs/translation-default.json
+++ b/extensions/gdata/module/langs/translation-default.json
@@ -1,56 +1,56 @@
-{
- "gdata-import": {
- "preparing": "Preparing ...",
- "creating": "Creating project ...",
- "title": "Public Documents",
- "import-by-url": "Import a public Google Spreadsheet or Fusion Table by its URL:",
- "next->": "Next »",
- "auth-doc": "Authorized Documents",
- "please": "Please",
- "sign-in": "sign in and authorize",
- "sign-out": "sign out",
- "access-data": "access to your Google data.",
- "retrieving": "Retrieving Google Docs documents ...",
- "re-sign-in": "re-sign in",
- "another-account": "with another account"
- },
- "gdata-parsing": {
- "start-over": "« Start Over",
- "conf-pars": "Configure Parsing Options",
- "proj-name": "Project name",
- "create-proj": "Create Project »",
- "updating-preview": "Updating preview ...",
- "worksheet": "Worksheets",
- "option": "Options",
- "preview-button": "Update Preview",
- "ignore-first": "Ignore first",
- "ignore": "line(s) at beginning of file",
- "parse-next": "Parse next",
- "parse": "line(s) as column headers",
- "discard-next": "Discard initial",
- "discard": "row(s) of data",
- "limit-next": "Load at most",
- "limit": "row(s) of data",
- "store-row": "Store blank rows",
- "store-cell": "Store blank cells as nulls"
- },
- "gdata-source": {
- "alert-url": "You must specify a web address (URL) to import.",
- "type": "Type",
- "title": "Title",
- "authors": "Authors",
- "updated": "Updated"
- },
- "gdata-exporter": {
- "uploading": "Uploading...",
- "upload-error": "Upload error: ",
- "new-spreadsheet": "A new Google spreadsheet",
- "enter-spreadsheet": "Enter a name for the new Google spreadsheet",
- "new-fusion": "A new Google Fusion table",
- "enter-fusion": "Enter a name for the new Google Fusion table"
- },
- "gdata-auth": {
- "authorize-label": "OpenRefine - Authorization",
- "authorized-label": "Authorization process completed. Close this window and return to OpenRefine."
- }
-}
\ No newline at end of file
+{
+ "gdata-import": {
+ "preparing": "Preparing ...",
+ "creating": "Creating project ...",
+ "title": "Public Documents",
+ "import-by-url": "Import a public Google Spreadsheet or Fusion Table by its URL:",
+ "next->": "Next »",
+ "auth-doc": "Authorized Documents",
+ "please": "Please",
+ "sign-in": "sign in and authorize",
+ "sign-out": "sign out",
+ "access-data": "access to your Google data.",
+ "retrieving": "Retrieving Google Docs documents ...",
+ "re-sign-in": "re-sign in",
+ "another-account": "with another account"
+ },
+ "gdata-parsing": {
+ "start-over": "« Start Over",
+ "conf-pars": "Configure Parsing Options",
+ "proj-name": "Project name",
+ "create-proj": "Create Project »",
+ "updating-preview": "Updating preview ...",
+ "worksheet": "Worksheets",
+ "option": "Options",
+ "preview-button": "Update Preview",
+ "ignore-first": "Ignore first",
+ "ignore": "line(s) at beginning of file",
+ "parse-next": "Parse next",
+ "parse": "line(s) as column headers",
+ "discard-next": "Discard initial",
+ "discard": "row(s) of data",
+ "limit-next": "Load at most",
+ "limit": "row(s) of data",
+ "store-row": "Store blank rows",
+ "store-cell": "Store blank cells as nulls"
+ },
+ "gdata-source": {
+ "alert-url": "You must specify a web address (URL) to import.",
+ "type": "Type",
+ "title": "Title",
+ "authors": "Authors",
+ "updated": "Updated"
+ },
+ "gdata-exporter": {
+ "uploading": "Uploading...",
+ "upload-error": "Upload error: ",
+ "new-spreadsheet": "A new Google spreadsheet",
+ "enter-spreadsheet": "Enter a name for the new Google spreadsheet",
+ "new-fusion": "A new Google Fusion table",
+ "enter-fusion": "Enter a name for the new Google Fusion table"
+ },
+ "gdata-auth": {
+ "authorize-label": "OpenRefine - Authorization",
+ "authorized-label": "Authorization process completed. Close this window and return to OpenRefine."
+ }
+}
diff --git a/extensions/gdata/module/langs/translation-en.json b/extensions/gdata/module/langs/translation-en.json
index c34c60fa7..089eaeac7 100644
--- a/extensions/gdata/module/langs/translation-en.json
+++ b/extensions/gdata/module/langs/translation-en.json
@@ -1,56 +1,56 @@
-{
- "gdata-import": {
- "preparing": "Preparing ...",
- "creating": "Creating project ...",
- "title": "Public Documents",
- "import-by-url": "Import a public Google Spreadsheet or Fusion Table by its URL:",
- "next->": "Next »",
- "auth-doc": "Authorized Documents",
- "please": "Please",
- "sign-in": "sign in and authorize",
- "sign-out": "sign out",
- "access-data": "access to your Google data.",
- "retrieving": "Retrieving Google Docs documents ...",
- "re-sign-in": "re-sign in",
- "another-account": "with another account"
- },
- "gdata-parsing": {
- "start-over": "« Start Over",
- "conf-pars": "Configure Parsing Options",
- "proj-name": "Project name",
- "create-proj": "Create Project »",
- "updating-preview": "Updating preview ...",
- "worksheet": "Worksheets",
- "option": "Options",
- "preview-button": "Update Preview",
- "ignore-first": "Ignore first",
- "ignore": "line(s) at beginning of file",
- "parse-next": "Parse next",
- "parse": "line(s) as column headers",
- "discard-next": "Discard initial",
- "discard": "row(s) of data",
- "limit-next": "Load at most",
- "limit": "row(s) of data",
- "store-row": "Store blank rows",
- "store-cell": "Store blank cells as nulls"
- },
- "gdata-source": {
- "alert-url": "You must specify a web address (URL) to import.",
- "type": "Type",
- "title": "Title",
- "authors": "Authors",
- "updated": "Updated"
- },
- "gdata-exporter": {
- "uploading": "Uploading...",
- "upload-error": "Upload error: ",
- "new-spreadsheet": "A new Google spreadsheet",
- "enter-spreadsheet": "Enter a name for the new Google spreadsheet",
- "new-fusion": "A new Google Fusion table",
- "enter-fusion": "Enter a name for the new Google Fusion table"
- },
- "gdata-auth": {
- "authorize-label": "OpenRefine - Authorization",
- "authorized-label": "Authorization process completed. Close this window and return to OpenRefine."
- }
-}
\ No newline at end of file
+{
+ "gdata-import": {
+ "preparing": "Preparing ...",
+ "creating": "Creating project ...",
+ "title": "Public Documents",
+ "import-by-url": "Import a public Google Spreadsheet or Fusion Table by its URL:",
+ "next->": "Next »",
+ "auth-doc": "Authorized Documents",
+ "please": "Please",
+ "sign-in": "sign in and authorize",
+ "sign-out": "sign out",
+ "access-data": "access to your Google data.",
+ "retrieving": "Retrieving Google Docs documents ...",
+ "re-sign-in": "re-sign in",
+ "another-account": "with another account"
+ },
+ "gdata-parsing": {
+ "start-over": "« Start Over",
+ "conf-pars": "Configure Parsing Options",
+ "proj-name": "Project name",
+ "create-proj": "Create Project »",
+ "updating-preview": "Updating preview ...",
+ "worksheet": "Worksheets",
+ "option": "Options",
+ "preview-button": "Update Preview",
+ "ignore-first": "Ignore first",
+ "ignore": "line(s) at beginning of file",
+ "parse-next": "Parse next",
+ "parse": "line(s) as column headers",
+ "discard-next": "Discard initial",
+ "discard": "row(s) of data",
+ "limit-next": "Load at most",
+ "limit": "row(s) of data",
+ "store-row": "Store blank rows",
+ "store-cell": "Store blank cells as nulls"
+ },
+ "gdata-source": {
+ "alert-url": "You must specify a web address (URL) to import.",
+ "type": "Type",
+ "title": "Title",
+ "authors": "Authors",
+ "updated": "Updated"
+ },
+ "gdata-exporter": {
+ "uploading": "Uploading...",
+ "upload-error": "Upload error: ",
+ "new-spreadsheet": "A new Google spreadsheet",
+ "enter-spreadsheet": "Enter a name for the new Google spreadsheet",
+ "new-fusion": "A new Google Fusion table",
+ "enter-fusion": "Enter a name for the new Google Fusion table"
+ },
+ "gdata-auth": {
+ "authorize-label": "OpenRefine - Authorization",
+ "authorized-label": "Authorization process completed. Close this window and return to OpenRefine."
+ }
+}
diff --git a/extensions/gdata/module/langs/translation-it.json b/extensions/gdata/module/langs/translation-it.json
index 7c9953a25..42ed8a6cf 100644
--- a/extensions/gdata/module/langs/translation-it.json
+++ b/extensions/gdata/module/langs/translation-it.json
@@ -1,56 +1,56 @@
-{
- "gdata-import": {
- "preparing": "In preparazione ...",
- "creating": "Creazione il progetto ...",
- "title": "Documenti Pubblici",
- "import-by-url": "Importa un Google Spreadsheet o Fusion Table pubblico inserendo l'URL:",
- "next->": "Avanti »",
- "auth-doc": "Documenti Autorizzati",
- "please": "Per piacere",
- "sign-in": "autenticati ed autorizza",
- "sign-out": "esci",
- "access-data": "accedi ai tuoi dati Google.",
- "retrieving": "Recuperando i documenti Google Doc ...",
- "re-sign-in": "rieffettua l'autenticazione",
- "another-account": "con un altro account"
- },
- "gdata-parsing": {
- "start-over": "« Ricomincia",
- "conf-pars": "Configura le opzioni per il parsing",
- "proj-name": "Nome del progetto",
- "create-proj": "Crea un progetto »",
- "updating-preview": "Aggiornando la preview ...",
- "worksheet": "Worksheets",
- "option": "Opzioni",
- "preview-button": "Aggiorna la Preview",
- "ignore-first": "Ignora le prime",
- "ignore": "linee all'inizio del file",
- "parse-next": "Parsa le prossime",
- "parse": "linee come nomi delle colonne",
- "discard-next": "Scarta le prime",
- "discard": "righe di dati",
- "limit-next": "Carica al massimo",
- "limit": "righe di dati",
- "store-row": "Salva righe vuote",
- "store-cell": "Salva le celle vuote come 'null'"
- },
- "gdata-source": {
- "alert-url": "Devi specificare un indirizzo web (URL) per l'import.",
- "type": "Tipo",
- "title": "Titolo",
- "authors": "Autori",
- "updated": "Aggiornato"
- },
- "gdata-exporter": {
- "uploading": "Caricando...",
- "upload-error": "Errore durante il caricamento: ",
- "new-spreadsheet": "Un nuovo Google spreadsheet",
- "enter-spreadsheet": "Inserisci un nome per il nuovo Google spreadsheet",
- "new-fusion": "Una nuova tabella Google Fusion",
- "enter-fusion": "Inserisci un nome per la nuova tabella Google Fusion"
- },
- "gdata-auth": {
- "authorize-label": "OpenRefine - Autorizzazione",
- "authorized-label": "Processo di autorizzazione completato. Chiudi questa finestra e torna ad OpenRefine."
- }
-}
\ No newline at end of file
+{
+ "gdata-import": {
+ "preparing": "In preparazione ...",
+ "creating": "Creazione il progetto ...",
+ "title": "Documenti Pubblici",
+ "import-by-url": "Importa un Google Spreadsheet o Fusion Table pubblico inserendo l'URL:",
+ "next->": "Avanti »",
+ "auth-doc": "Documenti Autorizzati",
+ "please": "Per piacere",
+ "sign-in": "autenticati ed autorizza",
+ "sign-out": "esci",
+ "access-data": "accedi ai tuoi dati Google.",
+ "retrieving": "Recuperando i documenti Google Doc ...",
+ "re-sign-in": "rieffettua l'autenticazione",
+ "another-account": "con un altro account"
+ },
+ "gdata-parsing": {
+ "start-over": "« Ricomincia",
+ "conf-pars": "Configura le opzioni per il parsing",
+ "proj-name": "Nome del progetto",
+ "create-proj": "Crea un progetto »",
+ "updating-preview": "Aggiornando la preview ...",
+ "worksheet": "Worksheets",
+ "option": "Opzioni",
+ "preview-button": "Aggiorna la Preview",
+ "ignore-first": "Ignora le prime",
+ "ignore": "linee all'inizio del file",
+ "parse-next": "Parsa le prossime",
+ "parse": "linee come nomi delle colonne",
+ "discard-next": "Scarta le prime",
+ "discard": "righe di dati",
+ "limit-next": "Carica al massimo",
+ "limit": "righe di dati",
+ "store-row": "Salva righe vuote",
+ "store-cell": "Salva le celle vuote come 'null'"
+ },
+ "gdata-source": {
+ "alert-url": "Devi specificare un indirizzo web (URL) per l'import.",
+ "type": "Tipo",
+ "title": "Titolo",
+ "authors": "Autori",
+ "updated": "Aggiornato"
+ },
+ "gdata-exporter": {
+ "uploading": "Caricando...",
+ "upload-error": "Errore durante il caricamento: ",
+ "new-spreadsheet": "Un nuovo Google spreadsheet",
+ "enter-spreadsheet": "Inserisci un nome per il nuovo Google spreadsheet",
+ "new-fusion": "Una nuova tabella Google Fusion",
+ "enter-fusion": "Inserisci un nome per la nuova tabella Google Fusion"
+ },
+ "gdata-auth": {
+ "authorize-label": "OpenRefine - Autorizzazione",
+ "authorized-label": "Processo di autorizzazione completato. Chiudi questa finestra e torna ad OpenRefine."
+ }
+}
diff --git a/extensions/gdata/module/scripts/gdata-extension.js b/extensions/gdata/module/scripts/gdata-extension.js
index 57e9a2e26..02196c8a4 100644
--- a/extensions/gdata/module/scripts/gdata-extension.js
+++ b/extensions/gdata/module/scripts/gdata-extension.js
@@ -34,7 +34,7 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
var GdataExtension = {};
GdataExtension.isAuthorized = function() {
- return $.cookie('authsub_token') !== null;
+ return $.cookie('oauth2_token') !== null;
};
GdataExtension.showAuthorizationDialog = function(onAuthorized, onNotAuthorized) {
@@ -57,6 +57,6 @@ GdataExtension.showAuthorizationDialog = function(onAuthorized, onNotAuthorized)
};
window[callbackName] = callback;
- var url = ModuleWirings['gdata'] + "authorize?winname=" + escape(windowName) + "&callback=" + escape(callbackName);
+ var url = ModuleWirings['gdata'] + "authorize?winname=" + escape(windowName) + "&cb=" + escape(callbackName);
var win = window.open(url, "openrefinegdataauth", "resizable=1,width=800,height=600");
};
diff --git a/extensions/gdata/module/scripts/index/gdata-fusion-tables-parsing-panel.html b/extensions/gdata/module/scripts/index/gdata-fusion-tables-parsing-panel.html
index 89abae151..2e5b018f5 100644
--- a/extensions/gdata/module/scripts/index/gdata-fusion-tables-parsing-panel.html
+++ b/extensions/gdata/module/scripts/index/gdata-fusion-tables-parsing-panel.html
@@ -9,12 +9,12 @@