Return-Path: X-Original-To: archive-asf-public-internal@cust-asf2.ponee.io Delivered-To: archive-asf-public-internal@cust-asf2.ponee.io Received: from cust-asf.ponee.io (cust-asf.ponee.io [163.172.22.183]) by cust-asf2.ponee.io (Postfix) with ESMTP id A4968200BCA for ; Mon, 21 Nov 2016 15:31:17 +0100 (CET) Received: by cust-asf.ponee.io (Postfix) id A343A160B1F; Mon, 21 Nov 2016 14:31:17 +0000 (UTC) Delivered-To: archive-asf-public@cust-asf.ponee.io Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by cust-asf.ponee.io (Postfix) with SMTP id 849E6160AEC for ; Mon, 21 Nov 2016 15:31:15 +0100 (CET) Received: (qmail 6009 invoked by uid 500); 21 Nov 2016 14:31:14 -0000 Mailing-List: contact commits-help@falcon.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@falcon.apache.org Delivered-To: mailing list commits@falcon.apache.org Received: (qmail 6000 invoked by uid 99); 21 Nov 2016 14:31:14 -0000 Received: from git1-us-west.apache.org (HELO git1-us-west.apache.org) (140.211.11.23) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 21 Nov 2016 14:31:14 +0000 Received: by git1-us-west.apache.org (ASF Mail Server at git1-us-west.apache.org, from userid 33) id 40191E00E5; Mon, 21 Nov 2016 14:31:14 +0000 (UTC) Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit From: pallavi@apache.org To: commits@falcon.apache.org Date: Mon, 21 Nov 2016 14:31:14 -0000 Message-Id: <2af1b99c192e488ab0577a13ec1bf196@git.apache.org> X-Mailer: ASF-Git Admin Mailer Subject: [1/5] falcon git commit: FALCON-2187 Refactoring to move entity xsd and jxb bindings to a new nmodule archived-at: Mon, 21 Nov 2016 14:31:17 -0000 Repository: falcon Updated Branches: refs/heads/master 3d61e96fa -> 9e25ede1f http://git-wip-us.apache.org/repos/asf/falcon/blob/9e25ede1/common-types/src/main/resources/feed-0.1.xsd ---------------------------------------------------------------------- diff --git a/common-types/src/main/resources/feed-0.1.xsd b/common-types/src/main/resources/feed-0.1.xsd new file mode 100644 index 0000000..cbc97b9 --- /dev/null +++ b/common-types/src/main/resources/feed-0.1.xsd @@ -0,0 +1,578 @@ + + + + + + + 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. + + + + + + + + + + + + + + name: A feed should have a unique name and this name is referenced + by processes as input or output feed. + tags: a feed specifies an optional list of comma separated tags + which is used for classification of data sets. + groups: a feed specifies a list of comma separated groups, + a group is a logical grouping of feeds and a group is said to be + available if all the feeds belonging to a group are available. + The frequency of all + the feed which belong to the same group + must be same. + availabilityFlag: specifies the name of a file which when + present/created + in a feeds data directory, the feed is + termed as available. ex: _SUCCESS, if + this element is ignored then Falcon would consider the presence of feed's + data directory as feed availability. + A feed has a + frequency and a periodicity which specifies the frequency by which + this feed is generated. ex: it can be generated every hour, every 5 minutes, daily, weekly etc. + valid frequency type for a feed are minutes, hours, days, months. + sla: A feed can have SLA and each SLA has two properties - slaLow and slaHigh. Both slaLow and slaHigh + are written using expressions like frequency. slaLow is intended to serve for alerting for feeds which + are in danger of missing their availability SLAs. slaHigh is intended to serve for reporting the feeds + which missed their SLAs. SLAs are relative to feed instance time. + + + + + + + tags: a feed specifies an optional list of comma separated tags, + Key Value Pairs, separated by comma, + which is used for classification of processes. + Example: consumer=consumer@xyz.com, owner=producer@xyz.com, department=forecasting + + + + + + + + + + + + + + + + + + + + + + + + + + + Notification will help to notify the users about the finished status of Falcon + Instance. Currently Email type notification is supported and users must specify the receiver's + email address. + + + + + + + + + + + + + + + + Feed references a cluster by it's name, before submitting a feed all the + referenced cluster should be submitted to Falcon. + type: specifies whether the + referenced cluster should be treated as a + source or target for a feed. + Validity of a feed on cluster specifies duration for which this feed is + valid on this cluster. + Retention specifies how long the feed is retained on this cluster and the + action to be taken on the feed after the expiry of retention period. + The retention limit is + specified by expression frequency(times), ex: if + feed should be retained for at least 6 hours then retention's limit="hours(6)". + The field partitionExp contains + partition tags. Number of partition tags has to be equal to number of partitions specified in feed + schema. + A partition tag can be a wildcard(*), a static string or + an expression. Atleast one of the strings has to be an expression. + + + + + + + + + + + + + + + + + + + + + + + + A list of partition, which is the logical partition of a feed and this + is maintained in Hcatalog registry. + + + + + + + + + A schema specifies the location of a schema file + for a feed and the provider of schema like protobuf, thrift etc. + + + + + + + + + A list of name-value pair of property. + + + + + + + + + + A validity has a start, which is the validity start date and end the + validity + end date. ex: start="2011-11-01T00:00Z" in TZ format. + timezone can be UTC, + GMT. + Processes referring this feed would consider the validity period for + validation. + + + + + + + + + sla has two properties - slaLow and slaHigh. Both slaLow and slaHigh + are written using expressions like frequency. slaLow is intended to serve for alerting for feeds which + are in danger of missing their availability SLAs. slaHigh is intended to serve for reporting the feeds + which missed their SLAs. SLAs are relative to feed instance time. + + + + + + + + + A list of locations on the file system. + + + + + + + + + + late-arrival specifies the cut-off period till which the feed is + expected to arrive late and should be honored be processes referring + to it as input + feed by rerunning the instances in case + the data arrives late with in a cut-off period. + The cut-off period is specified by expression + frequency(times), ex: if the feed + can arrive late + upto 8 hours then late-arrival's cut-off="hours(8)" + + + + + + + + A key-value pair, which are propagated to the + workflow engine. + + + + + + + + + A list of clusters. + + + + + + + + + + + + + + + + + + + + + + location specifies the type of location like data, meta, stats + and the corresponding paths for them. + A feed should at least define the location for type + data, which + specifies the HDFS path pattern where the feed is generated + periodically. ex: type="data" path="/projects/TrafficHourly/${YEAR}-${MONTH}-${DAY}/traffic" + + + + + + + + + + + + Notification specifies the "type" of notification to be used to send notification. + Currently email based notification type is supported and user can specify the comma + separated email address with "to" property. + e.g: type="email" to="falcon@localhost,hive@localhost" + "limit" property in notification will help to set the frequency of email notification + in case of Falcon instance failure. Incase of feed entity limit="attempt" is only supported + as there is no retry element. + + + + + + + + + + + + + + + + + + + + + + + Access control list for this feed. + + + + + + + + + + + action type specifies the action that should be taken on a feed + when the retention period of a feed expires on a cluster, + the only valid action is delete. + + + + + + + + + Lifecycle of the feed consists of various stages. For example typical stages of a feed are import, + replication, archival, retention and export. All these stages together are called lifecycle of a feed. + + + + + + + + + + + + + The clusters on feed can be either defined as source or target, + a feed + should at least have one source cluster defined. + the target clusters + are used for + replication of feed. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + catalog specifies the uri of a Hive table along with the partition spec. + uri="catalog:$database:$table#(partition-key=partition-value);+" + Example: catalog:logs-db:clicks#ds=${YEAR}-${MONTH}-${DAY} + + + + + + + + + + + + + + + + + + + + + + + + + Specifies the source entity name from which data can be imported or exported. + This can be Database or other data source types in the future. The connection + and authentication details of the data source are defined in the Datasource + entity. + Table name specifies the table to import or export depending on the action type. + Extract type specifies a extraction method (full or incremental). + DeltaColumn specifies the column name on source databbase table + to identify the new data since the last extraction. + Merge type specifies how the data will be organized on Hadoop. + The supported types are snapshot (as in a particular time) or append + (as in timeseries partitions). + Load type specifies if new rows are inserted (load type=insertallowed) into + the database table or updated (load type=updateonly). If updateonly load type + is specified, then update columns need to be passed via the arguments. + Fields can be specified as includes or excludes of fields. If exlusion list + is specified, all column except the ones specified will not be imported or exported. + If inclusion list is specified, only the specified columns are exported or imported. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Specifies either an include or exclude fields list. If include field list is specified, only + the specified fields will be imported. If exclude field list is specified, all fields except + the ones specified will be imported from datasource to HDFS. + + + + + + + + + + + + + + + + A list of name-value pair of extra arguments to be passed to the concrete implementation. + + + + + + + + + + A key-value pair, which are used while invoking + ingestion engines. + + + + + + + + + Retention stage is the new way to define retention for a feed using feed lifecycle feature. Retention + has a configurable policy which does the validation and the real execution through workflow engine. + This method of specifying retention gives you more control like using different queue name, priority + and execution-order for retention than other lifecycle stages of feed like replication. + + + + + + + + + + + http://git-wip-us.apache.org/repos/asf/falcon/blob/9e25ede1/common-types/src/main/resources/jaxb-binding.xjb ---------------------------------------------------------------------- diff --git a/common-types/src/main/resources/jaxb-binding.xjb b/common-types/src/main/resources/jaxb-binding.xjb new file mode 100644 index 0000000..978145f --- /dev/null +++ b/common-types/src/main/resources/jaxb-binding.xjb @@ -0,0 +1,72 @@ + + + + + + org.apache.falcon.entity.v0.Entity + + + + org.apache.falcon.entity.v0.AccessControlList + + + + org.apache.falcon.entity.v0.Entity + + + + org.apache.falcon.entity.v0.AccessControlList + + + + org.apache.falcon.entity.v0.EntityNotification + + + + org.apache.falcon.entity.v0.Entity + + + + org.apache.falcon.entity.v0.AccessControlList + + + + org.apache.falcon.entity.v0.EntityNotification + + + + + org.apache.falcon.entity.v0.Entity + + + + org.apache.falcon.entity.v0.AccessControlList + + + + + + + http://git-wip-us.apache.org/repos/asf/falcon/blob/9e25ede1/common-types/src/main/resources/mysql_database.xml ---------------------------------------------------------------------- diff --git a/common-types/src/main/resources/mysql_database.xml b/common-types/src/main/resources/mysql_database.xml new file mode 100644 index 0000000..5f88ba4 --- /dev/null +++ b/common-types/src/main/resources/mysql_database.xml @@ -0,0 +1,46 @@ + + + + owner=foobar@ambari.apache.org, consumer=phoe@ambari.apache.org + + + + + + sqoop_user + /user/ambari-qa/password-store/password_read_user + + + + + + + sqoop2_user + /user/ambari-qa/password-store/password_write_user + + + + + + sqoop2_user + /user/ambari-qa/password-store/password_write_user + + + + http://git-wip-us.apache.org/repos/asf/falcon/blob/9e25ede1/common-types/src/main/resources/process-0.1.xsd ---------------------------------------------------------------------- diff --git a/common-types/src/main/resources/process-0.1.xsd b/common-types/src/main/resources/process-0.1.xsd new file mode 100644 index 0000000..7ed8474 --- /dev/null +++ b/common-types/src/main/resources/process-0.1.xsd @@ -0,0 +1,477 @@ + + + + + + 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 process defines configuration for the workflow job like + frequency of the workflow, inputs and outputs for the workflow, how to + handle workflow failures, how to handle data that comes late and so on. + + + + + + + + + tags: a process specifies an optional list of comma separated tags, + Key Value Pairs, separated by comma, + which is used for classification of processes. + Example: consumer=consumer@xyz.com, owner=producer@xyz.com, department=forecasting + + + + + + + pipelines: a process specifies an optional list of comma separated pipelines, + separated by comma, which is used for classification of processes. + Example: dataReplicationPipeline, clickStreamPipeline + + + + + + Defines the clusters where the workflow should run + + + + + + Defines how many workflow instances can run concurrently + + + + + + + + + + + + Defines the order in which ready workflow instances should run + + + + + + Defines time after which instances will no longer be executed + + + + + + Defines workflow frequency + + + + + + + Defines SLA(Service Level Agreement) for process. + + + + + + + + + + + + + + + + Defines inputs for the workflow. The workflow will run only when the scheduled + time is up and all the inputs are available + + + + + + Defines outputs of the workflow + + + + + + + + Defines the workflow that should run. The workflow should be defined with respect + to the workflow specification of the workflow engine. + Only + oozie workflow engine is supported as of now. The workflow path is the path on hdfs which + contains the workflow xml + + + + + + Defines the spark related attributes to run the Spark application. Attributes + must be defined when workflow engine "spark" is selected. + + + + + + Retry defines how to handle workflow failures. Policy type - periodic, exponential + backoff, final along with the delay define how frequently the workflow should be re-tried. Number of + attempts define how many times to re-try the failures. + + + + + + Late process defines how the late data should be handled. Late policy - backoff, + exponential backoff, final along with delay + define how + frequently Falcon should check for late data. The late data handling can be customized for each + input separatly. + + + + + + Notification will help to notify the users about the finished status of Falcon + Instance. Currently Email type notification is supported and users must specify the receiver's + email address. + + + + + + + + + + + + + + + + + + + A list of clusters. + + + + + + + + + + + Defines the cluster where the workflow should run. In addition, it also defines the validity of the + workflow on this cluster + + + + + + + + + + + + + + Defines the vailidity of the workflow as start and end time + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + sla has 2 optional attributes - shouldStartIn and shouldEndIn. All the attributes + are written using expressions like frequency. shouldStartIn is the time in which the process should have + started. shouldEndIn is the time in which the process should have finished. + + + + + + + + + + + Defines input for the workflow. Each input maps to a feed. Input path and + frequency are picked from feed definition. + The input specifies the + start and end instance for the workflow. Falcon creates a property with input name which + contains paths of all input + instances between start and end. This + property will be available for the workflow to read inputs. + Input can also optionally specify the specific partition of feed that the workflow needs. + + + + + + + + + + + + + + + + + + + + Each output maps to a feed. The Output path and frequency are picked from the + corresponding feed definition. + The output also specifies the + instance that is created in terms of EL expression. + For each output, Falcon creates a property with the output name which can be used in workflows + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + List of Spark attributes to run Spark application: + master element is optional and indicates the url of the Spark Master. Ex: yarn-client, yarn-master, or local. This will override the Spark interface, if define in cluster entity. + mode element if present indicates the mode of spark, where to run spark driver program. Ex: client,cluster. + name element indicates the name of the spark application. + class element if present, indicates the spark's application main class. + jar element indicates a comma separated list of jars or python files. Also provide the jar or file directory path to workflow attribute path + spark-opts element if present, contains a list of spark options that can be passed to spark driver. + arg element if present, contains arguments that can be passed to spark application. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + For each input, defines the workflow that should be run when late data is detected + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Access control list for this process. + owner is the Owner of this entity. + group is the one which has access to read - not used at this time. + permission is not enforced at this time + + + + + + + + + + + Notification specifies the "type" of notification to be used to send notification. + Currently email based notification type is supported and user can specify the comma + separated email address with "to" property. + e.g: type="email" to="falcon@localhost,hive@localhost" + "limit" property in notification will help to set the frequency of email notification + in case of Falcon instance failure. + If limit="attempt" is set, for every instance failure email will be sent. + If limit="final" is set, failure email will be sent only when all the attempts has been + tried defined with retry element. + + + + + + + + + + + + + + + + + + + + http://git-wip-us.apache.org/repos/asf/falcon/blob/9e25ede1/common-types/src/test/java/org/apache/falcon/entity/v0/DateValidatorTest.java ---------------------------------------------------------------------- diff --git a/common-types/src/test/java/org/apache/falcon/entity/v0/DateValidatorTest.java b/common-types/src/test/java/org/apache/falcon/entity/v0/DateValidatorTest.java new file mode 100644 index 0000000..a1adb24 --- /dev/null +++ b/common-types/src/test/java/org/apache/falcon/entity/v0/DateValidatorTest.java @@ -0,0 +1,83 @@ +/** + * 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 org.apache.falcon.entity.v0; + +import org.testng.Assert; +import org.testng.annotations.DataProvider; +import org.testng.annotations.Test; + +/** + * Date format yyyy/mm/dd validator Testing. + */ +public class DateValidatorTest { + + @DataProvider + public Object[][] validDateProvider() { + return new Object[][]{ + new Object[]{"2011-11-01T00:00Z", }, new Object[]{"2020-01-01T00:00Z", }, + new Object[]{"2010-01-31T00:59Z", }, new Object[]{"2020-01-31T00:00Z", }, + new Object[]{"2008-02-29T01:00Z", }, new Object[]{"2008-02-29T00:00Z", }, + new Object[]{"2009-02-28T01:01Z", }, new Object[]{"2009-02-28T00:00Z", }, + new Object[]{"2010-03-31T23:00Z", }, new Object[]{"2010-03-31T00:00Z", }, + new Object[]{"2010-04-30T23:59Z", }, new Object[]{"2010-04-30T00:00Z", }, + new Object[]{"2010-05-31T23:23Z", }, new Object[]{"2010-05-31T00:00Z", }, + new Object[]{"2010-06-30T00:00Z", }, new Object[]{"2010-06-30T00:00Z", }, + new Object[]{"2010-07-31T00:00Z", }, new Object[]{"2010-07-31T00:00Z", }, + new Object[]{"2010-08-31T00:00Z", }, new Object[]{"2010-08-31T00:00Z", }, + new Object[]{"2010-09-30T00:00Z", }, new Object[]{"2010-09-30T00:00Z", }, + new Object[]{"2010-10-31T00:00Z", }, new Object[]{"2010-10-31T00:00Z", }, + new Object[]{"2010-11-30T00:00Z", }, new Object[]{"2010-11-30T00:00Z", }, + new Object[]{"2010-12-31T00:00Z", }, new Object[]{"2010-12-31T00:00Z", }, + new Object[]{"1999-01-30T01:00Z", }, new Object[]{"2999-12-31T00:00Z", }, + }; + } + + @DataProvider + public Object[][] invalidDateProvider() { + return new Object[][]{ + new Object[]{"2010-12-31T00:60Z", }, new Object[]{"2010-12-31T24:00Z", }, + new Object[]{"2010-01-32T00:00Z", }, new Object[]{"2020-01-32T00:00Z", }, + new Object[]{"2010-13-1T00:00Z", }, new Object[]{"1820-01-01T00:00Z", }, + new Object[]{"2007-2-29T00:00Z", }, new Object[]{"2007-02-29T00:00Z", }, + new Object[]{"2008-2-30T00:00Z", }, new Object[]{"2008-02-31T00:00Z", }, + new Object[]{"2008-a-29T00:00Z", }, new Object[]{"2008-02aT00:00Z", }, + new Object[]{"2008-2-333T00:00Z", }, new Object[]{"200a-02-29T00:00Z", }, + new Object[]{"2010-4-31T00:00Z", }, new Object[]{"2010-04-31T00:00Z", }, + new Object[]{"2010-6-31T00:00Z", }, new Object[]{"2010-06-31T00:00Z", }, + new Object[]{"2010-9-31T00:00Z", }, new Object[]{"2010-09-31T00:00Z", }, + new Object[]{"2010-11-31T00:00Z", }, new Object[]{"1999-04-31T01:00Z", }, + new Object[]{null, }, new Object[]{"", }, new Object[]{" ", }, + }; + } + + @Test(dataProvider = "validDateProvider") + public void validDateTest(String date) { + boolean valid = DateValidator.validate(date); + System.out.println("Date is valid : " + date + " , " + valid); + Assert.assertEquals(valid, true); + } + + @Test(dataProvider = "invalidDateProvider", + dependsOnMethods = "validDateTest") + public void invalidDateTest(String date) { + boolean valid = DateValidator.validate(date); + System.out.println("Date is valid : " + date + " , " + valid); + Assert.assertEquals(valid, false); + } +} http://git-wip-us.apache.org/repos/asf/falcon/blob/9e25ede1/common-types/src/test/java/org/apache/falcon/entity/v0/TestFrequency.java ---------------------------------------------------------------------- diff --git a/common-types/src/test/java/org/apache/falcon/entity/v0/TestFrequency.java b/common-types/src/test/java/org/apache/falcon/entity/v0/TestFrequency.java new file mode 100644 index 0000000..56e442f --- /dev/null +++ b/common-types/src/test/java/org/apache/falcon/entity/v0/TestFrequency.java @@ -0,0 +1,37 @@ +/** + * 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 org.apache.falcon.entity.v0; + +import org.testng.Assert; +import org.testng.annotations.Test; + +/** + * Test frequency. + */ +@Test +public class TestFrequency { + + public void testValidFrequency() { + String freqStr = "minutes(10)"; + Frequency freq = Frequency.fromString(freqStr); + Assert.assertEquals(freq.getTimeUnit().name(), "minutes"); + Assert.assertEquals(freq.getFrequency(), "10"); + Assert.assertEquals(freq.getFrequencyAsInt(), 10); + } +} http://git-wip-us.apache.org/repos/asf/falcon/blob/9e25ede1/common/pom.xml ---------------------------------------------------------------------- diff --git a/common/pom.xml b/common/pom.xml index 96cb7f5..34822aa 100644 --- a/common/pom.xml +++ b/common/pom.xml @@ -92,7 +92,8 @@ org.apache.falcon - falcon-client + falcon-common-types + ${project.version} http://git-wip-us.apache.org/repos/asf/falcon/blob/9e25ede1/extensions/pom.xml ---------------------------------------------------------------------- diff --git a/extensions/pom.xml b/extensions/pom.xml index 77821ca..df8f35f 100644 --- a/extensions/pom.xml +++ b/extensions/pom.xml @@ -71,7 +71,8 @@ org.apache.falcon - falcon-client + falcon-common-types + ${project.version} http://git-wip-us.apache.org/repos/asf/falcon/blob/9e25ede1/extensions/src/main/java/org/apache/falcon/extensions/ExtensionType.java ---------------------------------------------------------------------- diff --git a/extensions/src/main/java/org/apache/falcon/extensions/ExtensionType.java b/extensions/src/main/java/org/apache/falcon/extensions/ExtensionType.java deleted file mode 100644 index c4621cc..0000000 --- a/extensions/src/main/java/org/apache/falcon/extensions/ExtensionType.java +++ /dev/null @@ -1,37 +0,0 @@ -/** - * 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 org.apache.falcon.extensions; - -/** - * Enum to store ExtensionType. - */ -public enum ExtensionType { - TRUSTED("Trusted extension") , - CUSTOM("Custom extension"); - - private final String text; - - private ExtensionType(final String text) { - this.text = text; - } - @Override - public String toString(){ - return text; - } -} http://git-wip-us.apache.org/repos/asf/falcon/blob/9e25ede1/metrics/pom.xml ---------------------------------------------------------------------- diff --git a/metrics/pom.xml b/metrics/pom.xml index 8188e74..30aff8d 100644 --- a/metrics/pom.xml +++ b/metrics/pom.xml @@ -52,7 +52,8 @@ org.apache.falcon - falcon-client + falcon-common-types + ${project.version} http://git-wip-us.apache.org/repos/asf/falcon/blob/9e25ede1/pom.xml ---------------------------------------------------------------------- diff --git a/pom.xml b/pom.xml index 9e4d196..6a15987 100644 --- a/pom.xml +++ b/pom.xml @@ -370,6 +370,7 @@ falcon-ui build-tools + common-types client shell cli http://git-wip-us.apache.org/repos/asf/falcon/blob/9e25ede1/prism/pom.xml ---------------------------------------------------------------------- diff --git a/prism/pom.xml b/prism/pom.xml index 038a3ba..11f3944 100644 --- a/prism/pom.xml +++ b/prism/pom.xml @@ -82,7 +82,14 @@ org.apache.falcon - falcon-client + falcon-common-types + ${project.version} + + + + org.apache.falcon + falcon-common-types + ${project.version} http://git-wip-us.apache.org/repos/asf/falcon/blob/9e25ede1/test-util/pom.xml ---------------------------------------------------------------------- diff --git a/test-util/pom.xml b/test-util/pom.xml index 2a0fd6f..6e2303a 100644 --- a/test-util/pom.xml +++ b/test-util/pom.xml @@ -68,7 +68,8 @@ org.apache.falcon - falcon-client + falcon-common-types + ${project.version}