#
# Copyright (c) 2020 Oracle and/or its affiliates. All rights reserved.
#
# This program and the accompanying materials are made available under the
# terms of the Eclipse Public License v. 2.0 which is available at
# http://www.eclipse.org/legal/epl-2.0,
# or the Eclipse Distribution License v. 1.0 which is available at
# http://www.eclipse.org/org/documents/edl-v10.php.
#
# SPDX-License-Identifier: EPL-2.0 OR BSD-3-Clause
#

# DB Connection properties
# Test configuration for database on db
db.url=mongodb://localhost/ecl_test
db.user=
db.pwd=
db.platform=org.eclipse.persistence.nosql.adapters.mongo.MongoPlatform
#db.ddl.debug=true

#Server test (JPA) properties
db.driver=com.mongodb.MongoClient
db.xa.driver=com.mongodb.MongoClient
mongo.host=localhost
mongo.port=27017
mongo.db=ecl_test

# Logging option for debugging
logging.level=info
