# BRMSpep component installation configuration parameters
BRMSGW_JMX_PORT=9989

COMPONENT_X_MX_MB=1024
COMPONENT_X_MS_MB=1024

REST_PAP_URL=http://pap:9091/pap/
REST_PDP_ID=http://pdp:8081/pdp/

PDP_HTTP_USER_ID=testpdp
PDP_HTTP_PASSWORD=alpha123
PDP_PAP_PDP_HTTP_USER_ID=testpap
PDP_PAP_PDP_HTTP_PASSWORD=alpha123

M2_HOME=/usr/share/maven
snapshotRepositoryID=policy-nexus-snapshots
snapshotRepositoryName=Snapshots
snapshotRepositoryURL=http://nexus:8081/nexus/content/repositories/snapshots
releaseRepositoryID=policy-nexus-releases
releaseRepositoryName=Releases
releaseRepositoryURL=http://nexus:8081/nexus/content/repositories/releases
repositoryUsername=admin
repositoryPassword=admin123
UEB_URL=vm1.mr.simpledemo.openecomp.org
UEB_TOPIC=PDPD-CONFIGURATION
UEB_API_KEY=
UEB_API_SECRET=

groupID=org.openecomp.policy-engine
artifactID=drlPDPGroup
VFW_GROUP_ID=org.openecomp.policy-engine.drools.vFW
VFW_ARTIFACT_ID=policy-vFW-rules
VDNS_GROUP_ID=org.openecomp.policy-engine.drools.vDNS
VDNS_ARTIFACT_ID=policy-vDNS-rules


# the java property is RESOURCE_NAME (uppercase), but the conf parameter is lowercase
resource_name=brmsgw_1
node_type=brms_gateway

#Environment should be Set either DEV, TEST or PROD
ENVIRONMENT=TEST

#Notification Properties... type can be either websocket, ueb, or dmaap
BRMS_NOTIFICATION_TYPE=websocket
BRMS_UEB_URL=
BRMS_UEB_TOPIC=
BRMS_UEB_DELAY=
BRMS_CLIENT_ID=
BRMS_CLIENT_KEY=
BRMS_UEB_API_KEY=
BRMS_UEB_API_SECRET=

#Dependency.json file version
BRMS_DEPENDENCY_VERSION=1.1.0-SNAPSHOT

