001    /**
002     * Copyright 2008-2013 The Kuali Foundation
003     *
004     * Licensed under the Educational Community License, Version 2.0 (the "License");
005     * you may not use this file except in compliance with the License.
006     * You may obtain a copy of the License at
007     *
008     * http://www.opensource.org/licenses/ecl2.php
009     *
010     * Unless required by applicable law or agreed to in writing, software
011     * distributed under the License is distributed on an "AS IS" BASIS,
012     * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
013     * See the License for the specific language governing permissions and
014     * limitations under the License.
015     */
016    package org.codehaus.mojo.wagon;
017    
018    /*
019     * Licensed to the Apache Software Foundation (ASF) under one or more contributor license
020     * agreements. See the NOTICE file distributed with this work for additional information regarding
021     * copyright ownership. The ASF licenses this file to you under the Apache License, Version 2.0 (the
022     * "License"); you may not use this file except in compliance with the License. You may obtain a
023     * copy of the License at
024     *
025     * http://www.apache.org/licenses/LICENSE-2.0
026     *
027     * Unless required by applicable law or agreed to in writing, software distributed under the License
028     * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
029     * or implied. See the License for the specific language governing permissions and limitations under
030     * the License.
031     *//*
032     * Licensed to the Apache Software Foundation (ASF) under one or more contributor license
033     * agreements. See the NOTICE file distributed with this work for additional information regarding
034     * copyright ownership. The ASF licenses this file to you under the Apache License, Version 2.0 (the
035     * "License"); you may not use this file except in compliance with the License. You may obtain a
036     * copy of the License at
037     *
038     * http://www.apache.org/licenses/LICENSE-2.0
039     *
040     * Unless required by applicable law or agreed to in writing, software distributed under the License
041     * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
042     * or implied. See the License for the specific language governing permissions and limitations under
043     * the License.
044     */
045    import org.codehaus.mojo.wagon.shared.WagonDownload;
046    import org.codehaus.mojo.wagon.shared.WagonFileSet;
047    
048    /**
049     * Contains common configuration to scan for Wagon's files
050     */
051    public abstract class AbstractWagonListMojo extends AbstractSingleWagonMojo {
052    
053        /**
054         * Directory path relative to Wagon's URL
055         *
056         * @parameter expression="${wagon.fromDir}" default-value=""
057         */
058        protected String fromDir = "";
059    
060        /**
061         * Comma separated list of Ant's includes to scan for remote files
062         *
063         * @parameter expression="${wagon.includes}" default-value="**";
064         */
065        protected String includes;
066    
067        /**
068         * Comma separated list of Ant's excludes to scan for remote files
069         *
070         * @parameter expression="${wagon.excludes}"
071         *
072         */
073        protected String excludes;
074    
075        /**
076         * Whether to consider remote path case sensitivity during scan
077         *
078         * @parameter expression="${wagon.caseSensitive}" default-value="true"
079         */
080        protected boolean caseSensitive = true;
081    
082        /**
083         * @component
084         */
085        protected WagonDownload wagonDownload;
086    
087        protected WagonFileSet getWagonFileSet() {
088            return this.getWagonFileSet(fromDir, includes, excludes, caseSensitive, "");
089        }
090    
091    }