# Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements.  See the NOTICE file
# distributed with this work for additional information
# regarding copyright ownership.  The ASF licenses this file
# to you 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.

# Location of feature manifests (comma separated)
shindig.features.default=res://features/features.txt

# Location of container configurations (comma separated)
shindig.containers.default=res://containers/default/container.js

# A file containing blacklisted gadgets.
shindig.blacklist.file=

### Inbound OAuth support
# The URL base to use for full OAuth support (three-legged)
shindig.oauth.base-url=/oauth/
shindig.oauth.authorize-action=/WEB-INF/authorize.jsp

### Outbound OAuth support
shindig.signing.state-key=
shindig.signing.key-name=
shindig.signing.key-file=
shindig.signing.global-callback-url=http://localhost:8080/opensocial-portlet/gadgets/oauthcallback
shindig.signing.enable-signed-callbacks=true

# Set to true if you want to allow the use of 3-legged OAuth tokens when viewer != owner.
# This setting is not recommeneded for pages that allow user-controlled javascript, since
# that javascript could be used to make unauthorized requests on behalf of the viewer of the page
shindig.signing.viewer-access-tokens-enabled=true

# If enabled here, configuration values can be found in container configuration files.
shindig.locked-domain.enabled=false

# TODO: This needs to be moved to container configuration.
shindig.content-rewrite.only-allow-excludes=false
shindig.content-rewrite.include-urls=.*
shindig.content-rewrite.exclude-urls=
shindig.content-rewrite.include-tags=body,embed,img,input,link,script,style
shindig.content-rewrite.expires=86400
shindig.content-rewrite.proxy-url=/opensocial-portlet/gadgets/proxy?container=default&url=
shindig.content-rewrite.concat-url=/opensocial-portlet/gadgets/concat?container=default&
shindig.content-rewrite.enable-split-js-concat=true

#
# Default set of forced libs to allow for better caching
#
# NOTE: setting this causes the EndToEnd test to fail the opensocial-templates test
shindig.gadget-rewrite.default-forced-libs=core:rpc
#shindig.gadget-rewrite.default-forced-libs=

#
# Allow supported JavaScript features required by a gadget to be externalized on demand
shindig.gadget-rewrite.externalize-feature-libs=false

# Configuration for image rewriter
shindig.image-rewrite.max-inmem-bytes = 1048576
shindig.image-rewrite.max-palette-size = 256
shindig.image-rewrite.allow-jpeg-conversion = true
shindig.image-rewrite.jpeg-compression = 0.75
shindig.image-rewrite.min-threshold-bytes = 200

# Configuration for the os:Flash tag
shindig.flash.min-version = 9.0.115

# Configuration for template rewriter
shindig.template-rewrite.extension-tag-namespace=http://ns.opensocial.org/2009/extensions

# These values provide default TTLs for HTTP responses that don't use caching headers.
shindig.cache.http.defaultTtl=3600000
shindig.cache.http.negativeCacheTtl=60000

# A default refresh interval for XML files, since there is no natural way for developers to
# specify this value, and most HTTP responses don't include good cache control headers.
shindig.cache.xml.refreshInterval=300000

# Add entries in the form shindig.cache.lru.<name>.capacity to specify capacities for different
# caches when using the LruCacheProvider.
# It is highly recommended that the EhCache implementation be used instead of the LRU cache.
shindig.cache.lru.default.capacity=1000
shindig.cache.lru.expressions.capacity=1000
shindig.cache.lru.gadgetSpecs.capacity=1000
shindig.cache.lru.messageBundles.capacity=1000
shindig.cache.lru.httpResponses.capacity=10000

# The location of the EhCache configuration file.
shindig.cache.ehcache.config=res://org/apache/shindig/common/cache/ehcache/ehcacheConfig.xml

# True to enable JMX integration with cache stats
shindig.cache.ehcache.jmx.enabled=true

# true to enable JMX stats.
shindig.cache.ehcache.jmx.stats=true

# true to skip expensive encoding detection.
# if true, will only attempt to validate utf-8. Assumes all other encodings are ISO-8859-1.
shindig.http.fast-encoding-detection=true

# Configuration for the HttpFetcher
# Connection timeout, in milliseconds, for requests.
shindig.http.client.connection-timeout-ms=5000

# Maximum size, in bytes, of the object we fetched, 0 == no limit
shindig.http.client.max-object-size-bytes=0

# Strict-mode parsing for proxy and concat URIs ensures that the authority/host and path
# for the URIs match precisely what is found in the container config for it. This is
# useful where statistics and traffic routing patterns, typically in large installations,
# key on hostname (and occasionally path). Enforcing this does come at the cost that
# mismatches break, which in turn mandates that URI generation always happen in consistent
# fashion, ie. by the class itself or tightly controlled code.
shindig.uri.proxy.use-strict-parsing=false
shindig.uri.concat.use-strict-parsing=false

# Host:port of the proxy to use while fetching urls. Leave blank if proxy is
# not to be used.
org.apache.shindig.gadgets.http.basicHttpFetcherProxy=

org.apache.shindig.serviceExpirationDurationMinutes=60

#
# Older versions of shindig used 'data' in the json-rpc response format
# The spec calls for using 'result' instead, however to avoid breakage we
# allow you to set it back to the old way here
#
# valid values are
#  result  - new form
#  data    - old broken form
#  both    - return both fields for full compatibility
#
shindig.json-rpc.result-field=result

# Remap "Internal server error"s received from the basicHttpFetcherProxy server to
# "Bad Gateway error"s, so that it is clear to the user that the proxy server is
# the one that threw the exception.
shindig.accelerate.remapInternalServerError=true
shindig.proxy.remapInternalServerError=true
