001/* 002 * Copyright (c) 2010-2012 The Regents of the University of California. 003 * All rights reserved. 004 * 005 * '$Author: crawl $' 006 * '$Date: 2014-07-21 20:32:19 +0000 (Mon, 21 Jul 2014) $' 007 * '$Revision: 32849 $' 008 * 009 * Permission is hereby granted, without written agreement and without 010 * license or royalty fees, to use, copy, modify, and distribute this 011 * software and its documentation for any purpose, provided that the above 012 * copyright notice and the following two paragraphs appear in all copies 013 * of this software. 014 * 015 * IN NO EVENT SHALL THE UNIVERSITY OF CALIFORNIA BE LIABLE TO ANY PARTY 016 * FOR DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES 017 * ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN IF 018 * THE UNIVERSITY OF CALIFORNIA HAS BEEN ADVISED OF THE POSSIBILITY OF 019 * SUCH DAMAGE. 020 * 021 * THE UNIVERSITY OF CALIFORNIA SPECIFICALLY DISCLAIMS ANY WARRANTIES, 022 * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF 023 * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE 024 * PROVIDED HEREUNDER IS ON AN "AS IS" BASIS, AND THE UNIVERSITY OF 025 * CALIFORNIA HAS NO OBLIGATION TO PROVIDE MAINTENANCE, SUPPORT, UPDATES, 026 * ENHANCEMENTS, OR MODIFICATIONS. 027 * 028 */ 029 030package org.kepler.modulemanager; 031 032import org.kepler.build.modules.Module; 033import org.kepler.build.project.PrintError; 034import org.kepler.configuration.ConfigurationManager; 035import org.kepler.configuration.ConfigurationProperty; 036 037/** 038 * Created by David Welker. 039 * Date: Apr 16, 2010 040 * Time: 1:46:58 AM 041 */ 042public class RepositoryLocations 043{ 044 private static String releaseLocation = null; 045 046 public static String getReleaseLocation() 047 { 048 if( releaseLocation == null ) 049 { 050 releaseLocation = initReleaseLocation(); 051 } 052 return releaseLocation; 053 } 054 055 private static String initReleaseLocation() 056 { 057 Module mmModule = ConfigurationManager.getModule("module-manager"); 058 if(mmModule == null) { 059 PrintError.message("Did not find module-manager in modules.txt"); 060 } else { 061 ConfigurationProperty mmProperty = ConfigurationManager.getInstance().getProperty(mmModule); 062 if(mmProperty == null) { 063 PrintError.message("Did not find module-manager configuration."); 064 } else { 065 ConfigurationProperty releaseProperty = mmProperty.getProperty("releaseLocation"); 066 if(releaseProperty == null) { 067 PrintError.message("Missing property releaseLocation in module-manager configuration.xml"); 068 } else { 069 return releaseProperty.getValue(); 070 } 071 } 072 } 073 074 return null; 075 //return mmProperty.getProperty("releaseLocation").getValue(); 076 } 077 078}