001 /**
002 * Copyright (C) 2009-2013 Barchart, Inc. <http://www.barchart.com/>
003 *
004 * All rights reserved. Licensed under the OSI BSD License.
005 *
006 * http://www.opensource.org/licenses/bsd-license.php
007 */
008 package com.barchart.udt;
009
010 import com.barchart.udt.lib.LibraryLoaderUDT;
011
012 public final class ResourceUDT {
013
014 private ResourceUDT() {
015 //
016 }
017
018 /** */
019 public static final String PACKAGE_NAME = //
020 ResourceUDT.class.getPackage().getName();
021
022 /**
023 * system property which if provided will override
024 * {@link ResourceUDT#DEFAULT_LIBRARY_EXTRACT_LOCATION}
025 */
026 public static final String PROPERTY_LIBRARY_EXTRACT_LOCATION = //
027 PACKAGE_NAME + ".library.extract.location";
028
029 /** system property which if provided will override default native loader */
030 public static final String PROPERTY_LOADER_CLASS_NAME = //
031 PACKAGE_NAME + ".loader.class.name";
032
033 /**
034 * target destination of native wrapper library *.dll or *.so files that are
035 * extracted from this library jar;
036 */
037 public static final String DEFAULT_LIBRARY_EXTRACT_LOCATION = //
038 "./lib/bin";
039
040 /** */
041 public static final String DEFAULT_LIBRARY_LOADER_CLASS = //
042 LibraryLoaderUDT.class.getName();
043
044 /***/
045 public static String getLibraryExtractLocation() {
046 return System.getProperty( //
047 PROPERTY_LIBRARY_EXTRACT_LOCATION, //
048 DEFAULT_LIBRARY_EXTRACT_LOCATION);
049 }
050
051 /***/
052 public static void setLibraryExtractLocation(final String location) {
053 System.setProperty(PROPERTY_LIBRARY_EXTRACT_LOCATION, location);
054 }
055
056 /***/
057 public static String getLibraryLoaderClassName() {
058 return System.getProperty( //
059 PROPERTY_LOADER_CLASS_NAME, //
060 DEFAULT_LIBRARY_LOADER_CLASS);
061 }
062
063 /***/
064 public static void setLibraryLoaderClassName(final String className) {
065 System.setProperty(PROPERTY_LOADER_CLASS_NAME, className);
066 }
067
068 }