PoolInternal.java revision 7c478bd95313f5f23a4c958a745db2134aa03244
/*
* CDDL HEADER START
*
* The contents of this file are subject to the terms of the
* Common Development and Distribution License, Version 1.0 only
* (the "License"). You may not use this file except in compliance
* with the License.
*
* You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
* or http://www.opensolaris.org/os/licensing.
* See the License for the specific language governing permissions
* and limitations under the License.
*
* When distributing Covered Code, include this CDDL HEADER in each
* file and include the License file at usr/src/OPENSOLARIS.LICENSE.
* If applicable, add the following below this CDDL HEADER, with the
* fields enclosed by brackets "[]" replaced with your own identifying
* information: Portions Copyright [yyyy] [name of copyright owner]
*
* CDDL HEADER END
*/
/*
* Copyright 2003 Sun Microsystems, Inc. All rights reserved.
* Use is subject to license terms.
*
* ident "%Z%%M% %I% %E% SMI"
*/
package com.sun.solaris.service.pools;
/**
* A thin layer over the libpool(3LIB) interface so that Java can be
* used to manipulate resource pools. For more information on this
* facility refer to the manpage and the developer documentation.
*
* Most of the functionality in this class is not intended to be
* exposed to users of the package. The other classes in the package
* provide appropriate Java abstractions for using this functionality.
*
* Refer to the package documentation and the documentation of the
* other publicly visible classes for more details.
*/
public class PoolInternal {
static {
System.loadLibrary("jpool");
PoolInternal.init();
}
final static native void init();
final static native long pool_version(long ver);
final static native int get_POX_NATIVE();
final static native int get_POX_TEXT();
final static native int get_POC_INVAL();
final static native int get_POC_UINT();
final static native int get_POC_INT();
final static native int get_POC_DOUBLE();
final static native int get_POC_BOOL();
final static native int get_POC_STRING();
final static native int get_POV_NONE();
final static native int get_POV_LOOSE();
final static native int get_POV_STRICT();
final static native int get_POV_RUNTIME();
final static native int get_POF_INVALID();
final static native int get_POF_VALID();
final static native int get_POF_DESTROY();
public final static native int pool_error();
public final static native String pool_strerror(int error);
public final static native String pool_strerror_sys();
public final static native int pool_resource_type_list(long types,
long numtypes);
public final static native int pool_get_status(long state);
public final static native int pool_set_status(int state);
final static native long pool_conf_alloc();
final static native void pool_conf_free(long conf);
final static native int pool_conf_status(long conf);
final static native int pool_conf_close(long conf);
final static native int pool_conf_remove(long conf);
final static native int pool_conf_open(long conf, String location,
int oflags);
final static native int pool_conf_rollback(long conf);
final static native int pool_conf_commit(long conf, int active);
final static native int pool_conf_export(long conf, String location,
int fmt);
final static native int pool_conf_validate(long conf, int level);
final static native int pool_conf_update(long conf);
final static native long pool_get_pool(long conf, String name);
final static native java.util.List pool_query_pools(long conf,
java.util.List props);
final static native long pool_get_resource(long conf, String type,
String name);
final static native java.util.List pool_query_resources(long conf,
java.util.List props);
final static native java.util.List pool_query_components(long conf,
java.util.List props);
final static native String pool_conf_location(long conf);
final static native String pool_conf_info(long conf, int deep);
final static native long pool_resource_create(long conf,
String type, String name);
final static native int pool_resource_destroy(long conf, long res);
final static native int pool_resource_transfer(long conf,
long src, long tgt, long size);
final static native int pool_resource_xtransfer(long conf,
long src, long tgt, java.util.List components);
final static native java.util.List pool_query_resource_components(
long conf, long res, java.util.List props);
final static native String pool_resource_info(long conf, long res,
int deep);
final static native long pool_create(long conf, String name);
final static native int pool_destroy(long conf, long pool);
final static native int pool_associate(long conf, long pool,
long res);
final static native int pool_dissociate(long conf, long pool,
long res);
final static native String pool_info(long conf, long pool, int deep);
final static native java.util.List pool_query_pool_resources(
long conf, long pool, java.util.List props);
final static native long pool_get_owning_resource(long conf,
long comp);
final static native String pool_component_info(long conf,
long comp, int deep);
final static native int pool_get_property(long conf, long elem,
String name, long val);
final static native int pool_put_property(long conf, long elem,
String name, long val);
final static native int pool_rm_property(long conf, long elem,
String name);
final static native int pool_walk_properties(long conf, long elem,
long user, long callback);
final static native long pool_conf_to_elem(long conf);
final static native long pool_to_elem(long conf, long pool);
final static native long pool_resource_to_elem(long conf, long res);
final static native long pool_component_to_elem(long conf, long comp);
final static native int pool_value_get_uint64(long pv, long result);
final static native int pool_value_get_int64(long pv, long result);
final static native int pool_value_get_double(long pv, long result);
final static native int pool_value_get_bool(long pv, long result);
final static native int pool_value_get_string(long pv, long result);
final static native int pool_value_get_type(long pv);
final static native void pool_value_set_uint64(long pv, long val);
final static native void pool_value_set_int64(long pv, long val);
final static native void pool_value_set_double(long pv, double val);
final static native void pool_value_set_bool(long pv, short val);
final static native int pool_value_set_string(long pv, String val);
final static native String pool_value_get_name(long pv);
final static native int pool_value_set_name(long pv, String val);
final static native long pool_value_alloc();
final static native void pool_value_free(long pv);
public final static native String pool_static_location();
public final static native String pool_dynamic_location();
public final static native int pool_set_binding(String name,
int idtype, int id);
public final static native String pool_get_binding(int pid);
public final static native String pool_get_resource_binding(
String type, int pid);
final static native int pool_walk_pools(long conf, long user,
long callback);
final static native int pool_walk_resources(long conf, long pool,
long user, long callback);
final static native int pool_walk_components(long conf, long res,
long user, long callback);
/*
* enums and constants
*/
public final static int POOL_VER_CURRENT = 1;
public final static int POOL_VER_NONE = 0;
public final static int PO_TRUE = 1;
public final static int PO_FALSE = 0;
public final static int PO_SUCCESS = 0;
public final static int PO_FAIL = -1;
public final static int POE_OK = 0;
public final static int POE_BAD_PROP_TYPE = 1;
public final static int POE_INVALID_CONF = 2;
public final static int POE_NOTSUP = 3;
public final static int POE_INVALID_SEARCH = 4;
public final static int POE_BADPARAM = 5;
public final static int POE_PUTPROP = 6;
public final static int POE_DATASTORE = 7;
public final static int POE_SYSTEM = 8;
public final static int POE_ACCESS = 9;
public final static int PO_RDONLY = 0x0;
public final static int PO_RDWR = 0x1;
public final static int PO_CREAT = 0x2;
public final static int PO_DISCO = 0x4;
public final static int PO_UPDATE = 0x8;
public final static String POA_IMPORTANCE = "importance based";
public final static String POA_SURPLUS_TO_DEFAULT =
"surplus to default";
public final static int POU_SYSTEM = 0x1;
public final static int POU_POOL = 0x2;
public final static int POU_PSET = 0x4;
public final static int POU_CPU = 0x8;
public final static int POX_NATIVE = get_POX_NATIVE();
public final static int POX_TEXT = get_POX_TEXT();
public final static int POC_INVAL = get_POC_INVAL();
public final static int POC_UINT = get_POC_UINT();
public final static int POC_INT = get_POC_INT();
public final static int POC_DOUBLE = get_POC_DOUBLE();
public final static int POC_BOOL = get_POC_BOOL();
public final static int POC_STRING = get_POC_STRING();
public final static int POV_NONE = get_POV_NONE();
public final static int POV_LOOSE = get_POV_LOOSE();
public final static int POV_STRICT = get_POV_STRICT();
public final static int POV_RUNTIME = get_POV_RUNTIME();
public final static int POF_INVALID = get_POF_INVALID();
public final static int POF_VALID = get_POF_VALID();
public final static int POF_DESTROY = get_POF_DESTROY();
}