On Thu, Feb 11, 2010 at 10:05 AM, Amila Suriarachchi <
amilasuriarach...@gmail.com> wrote:

>
>
> On Thu, Feb 11, 2010 at 8:11 AM, Ruwan Linton <ruwan.lin...@gmail.com>wrote:
>
>> Folks,
>>
>> Synapse has a requirement to have a directory called conf/synapse-config
>> in the repository and have its own space for sequences, endpoints, proxy
>> services so forth inside that.. So the expected deployer config within the
>> axis2.xml is as follows;
>>
>> <deployer extension="xml" directory="conf/synapse-config/sequences"
>> class="org.apache.synapse.deployers.SequenceDeployer"/>
>>
>> but because of the following code fragment it takes only the last director
>> specified in the directory declaration of the deployer. Is there any reason
>> for us to restrict the deployer to only one level, even in that case we
>> should be treating the directory as the top level direcotry so that the path
>> is correct, but here we are calculating a directory path which is not
>> existing. With the above case it computes the directory as
>> $AXIS2_REPOSITORY/sequences which is completely wrong :-(
>>
>> org.apache.axis2.deployment.RepositoryListener [267, 280]
>>
>> //This will load the files from the directories
>>     // specified by axis2.xml (As <deployer>)
>>     private void loadOtherDirectories() {
>>         for (Map.Entry<String, Map<String, Deployer>> entry :
>> deploymentEngine.getDeployers().entrySet()) {
>>             String directory = entry.getKey();
>>             Map<String, Deployer> extensionMap = entry.getValue();
>>             for (String extension : extensionMap.keySet()) {
>>                 String[] strings = directory.split("/");
>>                 File dirToSearch = new
>> File(deploymentEngine.getRepositoryDir(),
>>                         strings[strings.length - 1]);
>>                 findFileForGivenDirectory(dirToSearch, extension,
>> directory);
>>
> I think it may work if you specify only 'conf' and above method finds it
> recursively.
>

But if it is set to 'conf', the deployer will try to find sequences inside
all sub directories of the 'conf' dir. Therefore it won't be a good solution
I guess.

+1 for removing this splitting code and supporting a '/' separated path for
the directory attribute of the deployer, rather than only supporting one
level.

Thanks,
~Isuru


>
> +1 to remove spliting if there is no reason for that.
>
> thanks,
> Amila.
>
>>             }
>>         }
>>     }
>>
>> Can we get rid of the splitting and let the user declare inner directories
>> for the artifacts to be deployed??
>>
>> Thanks,
>> Ruwan
>>
>> --
>> Ruwan Linton
>> Technical Lead & Product Manager; WSO2 ESB; http://wso2.org/esb
>> WSO2 Inc.; http://wso2.org
>> email: ru...@wso2.com; cell: +94 77 341 3097
>> blog: http://ruwansblog.blogspot.com
>>
>
>
>
> --
> Amila Suriarachchi
> WSO2 Inc.
> blog: http://amilachinthaka.blogspot.com/
>



-- 
Senior Software Engineer,
WSO2 Inc. http://wso2.org/
Blog : http://isurues.wordpress.com/

Reply via email to