lib/helpers.rb in forj-0.0.35 vs lib/helpers.rb in forj-0.0.36

- old
+ new

@@ -13,16 +13,48 @@ # 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. +require 'fileutils' + module Helpers def get_home_path File.expand_path('~') end def create_directory(path) unless File.directory?(path) Dir.mkdir path end end + + def dir_exists?(path) + if File.exists?(path) + if not File.directory?(path) + msg = "'%s' is not a directory. Please fix it." % path + if $FORJ_LOGGER + Logging.fatal(1, msg) + else + raise msg + end + end + if not File.readable?(path) or not File.writable?(path) or not File.executable?(path) + msg = "%s is not a valid directory. Check permissions and fix it." % path + if $FORJ_LOGGER + Logging.fatal(1, msg) + else + raise msg + end + end + return true + end + false + end + + def ensure_dir_exists(path) + if not dir_exists?(path) + FileUtils.mkpath(path) if not File.directory?(path) + end + end + end