#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#     http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#

spring.cloud.refresh.refreshable=none
server.port=8000

mybatis.type-aliases-package=com.manager.pulsar

spring.datasource.driver-class-name=org.sqlite.JDBC
spring.datasource.url=jdbc:sqlite:example.db
spring.datasource.initialization-mode=always
spring.datasource.schema=classpath:/META-INF/sql/schema.sql
#spring.datasource.data=classpath:/META-INF/sql/data.sql
spring.datasource.username=
spring.datasource.password=

# zuul config
zuul.routes.broker.path=/admin/**
zuul.routes.broker.url=http://localhost:8080/admin/
        
# pagehelper plugin
pagehelper.helperDialect=sqlite
# DEBUG print execute sql
logging.level.com.manager.=DEBUG

# apache pulsar configuration
pulsar.client.serviceUrl=pulsar://localhost:6650
# pulsar.client.operationTimeout=
# pulsar.client.ioThreads=
# pulsar.client.listenerThreads=
# pulsar.client.connectionsPerBroker=
# pulsar.client.enableTcpNoDelay=
# pulsar.client.tlsTrustCertsFilePath=
# pulsar.client.allowTlsInsecureConnection=
# pulsar.client.enableTlsHostnameVerification=
# pulsar.client.statsInterval=
# pulsar.client.maxConcurrentLookupRequests=
# pulsar.client.maxLookupRequests=
# pulsar.client.maxNumberOfRejectedRequestPerConnection=
# pulsar.client.keepAliveInterval=
# pulsar.client.connectionTimeout=
# pulsar.client.startingBackoffInterval=
# pulsar.client.maxBackoffInterval=