1*9b5730f6SAndrew Rist /************************************************************** 2cdf0e10cSrcweir * 3*9b5730f6SAndrew Rist * Licensed to the Apache Software Foundation (ASF) under one 4*9b5730f6SAndrew Rist * or more contributor license agreements. See the NOTICE file 5*9b5730f6SAndrew Rist * distributed with this work for additional information 6*9b5730f6SAndrew Rist * regarding copyright ownership. The ASF licenses this file 7*9b5730f6SAndrew Rist * to you under the Apache License, Version 2.0 (the 8*9b5730f6SAndrew Rist * "License"); you may not use this file except in compliance 9*9b5730f6SAndrew Rist * with the License. You may obtain a copy of the License at 10cdf0e10cSrcweir * 11*9b5730f6SAndrew Rist * http://www.apache.org/licenses/LICENSE-2.0 12cdf0e10cSrcweir * 13*9b5730f6SAndrew Rist * Unless required by applicable law or agreed to in writing, 14*9b5730f6SAndrew Rist * software distributed under the License is distributed on an 15*9b5730f6SAndrew Rist * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 16*9b5730f6SAndrew Rist * KIND, either express or implied. See the License for the 17*9b5730f6SAndrew Rist * specific language governing permissions and limitations 18*9b5730f6SAndrew Rist * under the License. 19cdf0e10cSrcweir * 20*9b5730f6SAndrew Rist *************************************************************/ 21*9b5730f6SAndrew Rist 22*9b5730f6SAndrew Rist 23cdf0e10cSrcweir 24cdf0e10cSrcweir // MARKER(update_precomp.py): autogen include statement, do not remove 25cdf0e10cSrcweir #include "precompiled_connectivity.hxx" 26cdf0e10cSrcweir #include "java/sql/DriverPropertyInfo.hxx" 27cdf0e10cSrcweir #include "java/lang/Boolean.hxx" 28cdf0e10cSrcweir #include "java/tools.hxx" 29cdf0e10cSrcweir #include "java/lang/String.hxx" 30cdf0e10cSrcweir using namespace connectivity; 31cdf0e10cSrcweir using namespace ::com::sun::star::uno; 32cdf0e10cSrcweir using namespace ::com::sun::star::beans; 33cdf0e10cSrcweir // using namespace ::com::sun::star::sdbcx; 34cdf0e10cSrcweir using namespace ::com::sun::star::sdbc; 35cdf0e10cSrcweir using namespace ::com::sun::star::container; 36cdf0e10cSrcweir using namespace ::com::sun::star::lang; 37cdf0e10cSrcweir 38cdf0e10cSrcweir 39cdf0e10cSrcweir //************************************************************** 40cdf0e10cSrcweir //************ Class: java.sql.Driver 41cdf0e10cSrcweir //************************************************************** 42cdf0e10cSrcweir 43cdf0e10cSrcweir jclass java_sql_DriverPropertyInfo::theClass = 0; 44cdf0e10cSrcweir // -------------------------------------------------------------------------------- 45cdf0e10cSrcweir java_sql_DriverPropertyInfo::~java_sql_DriverPropertyInfo() 46cdf0e10cSrcweir {} 47cdf0e10cSrcweir // -------------------------------------------------------------------------------- 48cdf0e10cSrcweir jclass java_sql_DriverPropertyInfo::getMyClass() const 49cdf0e10cSrcweir { 50cdf0e10cSrcweir // die Klasse muss nur einmal geholt werden, daher statisch 51cdf0e10cSrcweir if( !theClass ) 52cdf0e10cSrcweir theClass = findMyClass("java/sql/DriverPropertyInfo"); 53cdf0e10cSrcweir return theClass; 54cdf0e10cSrcweir } 55cdf0e10cSrcweir 56cdf0e10cSrcweir // -------------------------------------------------------------------------------- 57cdf0e10cSrcweir java_sql_DriverPropertyInfo::operator starsdbc::DriverPropertyInfo() 58cdf0e10cSrcweir { 59cdf0e10cSrcweir starsdbc::DriverPropertyInfo aInfo; 60cdf0e10cSrcweir aInfo.Name = name(); 61cdf0e10cSrcweir aInfo.Description = description(); 62cdf0e10cSrcweir aInfo.IsRequired = required(); 63cdf0e10cSrcweir aInfo.Value = value(); 64cdf0e10cSrcweir aInfo.Choices = choices(); 65cdf0e10cSrcweir 66cdf0e10cSrcweir return aInfo; 67cdf0e10cSrcweir } 68cdf0e10cSrcweir // -------------------------------------------------------------------------------- 69cdf0e10cSrcweir ::rtl::OUString java_sql_DriverPropertyInfo::name() 70cdf0e10cSrcweir { 71cdf0e10cSrcweir ::rtl::OUString aStr; 72cdf0e10cSrcweir SDBThreadAttach t; OSL_ENSURE(t.pEnv,"Java Enviroment geloescht worden!"); 73cdf0e10cSrcweir 74cdf0e10cSrcweir { 75cdf0e10cSrcweir jfieldID id = t.pEnv->GetFieldID(getMyClass(),"name","Ljava/lang/String;"); 76cdf0e10cSrcweir if(id) 77cdf0e10cSrcweir aStr = JavaString2String(t.pEnv,(jstring)t.pEnv->GetObjectField( object, id)); 78cdf0e10cSrcweir } //t.pEnv 79cdf0e10cSrcweir return aStr; 80cdf0e10cSrcweir } 81cdf0e10cSrcweir // -------------------------------------------------------------------------------- 82cdf0e10cSrcweir ::rtl::OUString java_sql_DriverPropertyInfo::description() 83cdf0e10cSrcweir { 84cdf0e10cSrcweir ::rtl::OUString aStr; 85cdf0e10cSrcweir SDBThreadAttach t; OSL_ENSURE(t.pEnv,"Java Enviroment geloescht worden!"); 86cdf0e10cSrcweir 87cdf0e10cSrcweir { 88cdf0e10cSrcweir jfieldID id = t.pEnv->GetFieldID(getMyClass(),"description","Ljava/lang/String;"); 89cdf0e10cSrcweir if(id) 90cdf0e10cSrcweir aStr = JavaString2String(t.pEnv,(jstring)t.pEnv->GetObjectField( object, id)); 91cdf0e10cSrcweir } //t.pEnv 92cdf0e10cSrcweir return aStr; 93cdf0e10cSrcweir } 94cdf0e10cSrcweir // -------------------------------------------------------------------------------- 95cdf0e10cSrcweir ::rtl::OUString java_sql_DriverPropertyInfo::value() 96cdf0e10cSrcweir { 97cdf0e10cSrcweir ::rtl::OUString aStr; 98cdf0e10cSrcweir SDBThreadAttach t; OSL_ENSURE(t.pEnv,"Java Enviroment geloescht worden!"); 99cdf0e10cSrcweir 100cdf0e10cSrcweir { 101cdf0e10cSrcweir jfieldID id = t.pEnv->GetFieldID(getMyClass(),"value","Ljava/lang/String;"); 102cdf0e10cSrcweir if(id) 103cdf0e10cSrcweir aStr = JavaString2String(t.pEnv,(jstring)t.pEnv->GetObjectField( object, id)); 104cdf0e10cSrcweir } //t.pEnv 105cdf0e10cSrcweir return aStr; 106cdf0e10cSrcweir } 107cdf0e10cSrcweir // -------------------------------------------------------------------------------- 108cdf0e10cSrcweir sal_Bool java_sql_DriverPropertyInfo::required() 109cdf0e10cSrcweir { 110cdf0e10cSrcweir jboolean out(0); 111cdf0e10cSrcweir SDBThreadAttach t; OSL_ENSURE(t.pEnv,"Java Enviroment geloescht worden!"); 112cdf0e10cSrcweir 113cdf0e10cSrcweir { 114cdf0e10cSrcweir jfieldID id = t.pEnv->GetFieldID(getMyClass(),"required","Z"); 115cdf0e10cSrcweir if(id) 116cdf0e10cSrcweir out = t.pEnv->GetBooleanField( object, id); 117cdf0e10cSrcweir } //t.pEnv 118cdf0e10cSrcweir return out; 119cdf0e10cSrcweir } 120cdf0e10cSrcweir // -------------------------------------------------------------------------------- 121cdf0e10cSrcweir Sequence< ::rtl::OUString> java_sql_DriverPropertyInfo::choices() 122cdf0e10cSrcweir { 123cdf0e10cSrcweir SDBThreadAttach t; OSL_ENSURE(t.pEnv,"Java Enviroment geloescht worden!"); 124cdf0e10cSrcweir 125cdf0e10cSrcweir { 126cdf0e10cSrcweir jfieldID id = t.pEnv->GetFieldID(getMyClass(),"choices","[Ljava/lang/String;"); 127cdf0e10cSrcweir if(id) 128cdf0e10cSrcweir { 129cdf0e10cSrcweir const java_lang_String * pEmpty = NULL; 130cdf0e10cSrcweir const ::rtl::OUString * pEmpty2 = NULL; 131cdf0e10cSrcweir return copyArrayAndDelete(t.pEnv,(jobjectArray)t.pEnv->GetObjectField( object, id), pEmpty2, pEmpty); 132cdf0e10cSrcweir } 133cdf0e10cSrcweir } //t.pEnv 134cdf0e10cSrcweir return Sequence< ::rtl::OUString>(); 135cdf0e10cSrcweir } 136cdf0e10cSrcweir // -------------------------------------------------------------------------------- 137cdf0e10cSrcweir 138