anchor.diff:  	// Auto-map models
   	this.autoMapModels		= true;
   	// Module Dependencies That Must Be Loaded First, use internal names or aliases
  -	this.dependencies		= [ ];
  +	this.dependencies		= ["contentbox","contentbox-admin"];
   
   	/**
   	* Configure module
   	*/
   	function configure(){
  +
  +		// Interceptors
  +		interceptors = [
  +			// Rate Limiter
  +			{ class="contentbox-s3-filebrowser.interceptors.S3Filebrowser", name="S3FileBrowser@cb" }
  +		];
  +
  +		// Settings - s3SDK settings are merged in later
  +		settings = {
  +			"uploads" : {
  +				"bucket":"",
  +				"prefix":"",
  +				"region":"",
  +				"cacheControl":"",
  +				"expires" : "",
  +				"url":""
  +			},
  +			"filebrowser":{
  +				"enabled":false
  +			}
  +		};
  +
   		// SES Routes
   		routes = [
  -			// re-route the standard media manager route
  -			{ pattern="/mediamanager", handler="home",action="index" },
  +			// create folder
  +			{ pattern="/createFolder", handler="home",action="createfolder" },
  +			// remove stuff
  +			{ pattern="/remove", handler="home",action="remove" },
  +			// download
  +			{ pattern="/download", handler="home",action="download" },
  +			// rename
  +			{ pattern="/rename", handler="home",action="rename" },
  +			// upload
  +			{ pattern="/upload", handler="home",action="upload" },
  +			// traversal paths
  +			{ pattern="/d/:path", handler="home",action="index" },
   			// Module Entry Point
   			{ pattern="/", handler="home",action="index" },
   			// Convention Route
  
positive.code: 	* Fired when the module is registered and activated.
  	*/
  	function onLoad(){
  	}
  
  	/**
  
negative.code: 		
  	}
  
  	/**
  	* parse parent settings
  	*/
  	private function parseParentSettings(){
  
  		var oConfig 		= controller.getSetting( "ColdBoxConfig" );
  		var configStruct 	= controller.getConfigSettings();
  		var coldBoxSettings = controller.getSettingStructure();
  		var s3Settings 		= oConfig.getPropertyMixin( "s3sdk", "variables", structnew() );
  		
  		//defaults
  		configStruct[ "s3sdk" ] = variables.settings;			
  		
  		// incorporate environment settings
  		detectS3EnvironmentSettings( s3Settings );
  
  		//Set our URL to the bucket path, if it's not defined
  		if( structKeyExists( s3Settings, "uploads" ) && !len( s3Settings.uploads.url ) ){
  			s3Settings.uploads.url = "//" & s3Settings.uploads.bucket & ".s3.amazonaws.com";
  		}
  		//strip trailing slashes
  		if( structKeyExists( s3Settings, "uploads" ) && right( s3Settings.uploads.url, 1 ) == "/" ){
  			s3Settings.uploads.url = left( s3Settings.uploads.url, len( s3Settings.uploads.url )-1 );
  		}
  
  		structAppend( configStruct.s3sdk, s3Settings, true );
  
  	}
  
  	/**
  	* Detects Environment Variables and overrides the default settings for the SDK if they exist
  	**/
  	private function detectS3EnvironmentSettings( s3Settings ){
  		var system = createObject( "java", "java.lang.System" );
  		environment = system.getenv();
  
  		if( structKeyExists( environment, "S3_ACCESS_KEY" ) ){
  			s3Settings["accessKey"] = environment[ "S3_ACCESS_KEY" ];
  		}
  
  		if( structKeyExists( environment, "S3_SECRET_KEY" ) ){
  			s3Settings["secretKey"] = environment[ "S3_SECRET_KEY" ];
  		}
  
  		if( structKeyExists( environment, "S3_REGION" ) ){
  			s3Settings.uploads.region = environment[ "S3_REGION" ];
  		}
  
  		if( structKeyExists( environment, "S3_UPLOADS_BUCKET" ) ){
  			s3Settings.uploads.bucket = environment[ "S3_UPLOADS_BUCKET" ];
  		}
  
  		if( structKeyExists( environment, "S3_UPLOADS_PREFIX" ) ){
  			s3Settings.uploads.prefix = environment[ "S3_UPLOADS_PREFIX" ];
  		}
  
  		if( structKeyExists( environment, "S3_UPLOADS_PREFIX" ) ){
  			s3Settings.uploads.prefix = environment[ "S3_UPLOADS_PREFIX" ];
  		}
  
  		if( structKeyExists( environment, "S3_UPLOADS_URL" ) ){
  			s3Settings.uploads.url = environment[ "S3_UPLOADS_URL" ];
  		}
  
  
  
  	}
  
  }
  