See comments in line.

On Wed, Jan 12, 2011 at 2:17 PM, indika kumara <indika.k...@gmail.com>wrote:

> +1 , Although I have not tested, I believed that the regular expression
> itself can express what charith needed (though you may need code changes
> because of Java API).
>

Can you show a solid example of what you say?
 AFAIK its a limitation is Regex.
http://www.wellho.net/mouth/943_Matching-within-multiline-strings-and-ignoring-case-in-regular-expressions.html

>From my point of view, trying to expose the JAVA API in the synapse API is
> not good. The synapse API is high level than Java and targets for high level
> users.


Yes . i know that  having too many attributes is confusing
But what i do not see is whats wrong with having the attribute 'flag' in
this context .

Its readable and does make sence for people who use it. (*DOTALL mode ,
MUTILINE , etc mode are quite standered modes in some languages *)

<filter source="." regex=".*connection.*" flag="DOTALL , CASE_INSENSITIVE"







>
>
> Problem -> Solution -> programing model -> synapse API -> implementation's
> language API  .... on in other direction.
>
> Thanks,
>
> Indika
>
>
>
> On Wed, Jan 12, 2011 at 2:37 PM, Hiranya Jayathilaka <hiranya...@gmail.com
> > wrote:
>
>> Yeah I also don't like adding a new XML attribute for this. Also the
>> syntax ('|' as a separator) is not very XML friendly.
>>
>>
Agreed here we can use comma (',') to separate

But i don't see any usability issue with this new attribute

<filter source="." regex=".*connection.*" flag="DOTALL , CASE_INSENSITIVE"

I also don't think case sensitivity needs to be a flag. Such constraints can
>> be specified in the regex itself AFAIK.
>>
>>
AFAIK it can't can you send a pointer for this ? Example : say i want to
match the regex  .*Hello.* in case insensitive way. So in that case how
filter mediator specify it ? In regular expression ? ( thease flags are wel
kown ones when it comes to regex compilers :))



Ok there we can use a regex with all case combination of world  "Hello"
sperated with a pipe but thats a pain :)

thanks,
Charith



> Thanks,
>> Hiranya
>>
>>
>> On Wed, Jan 12, 2011 at 1:46 PM, indika kumara <indika.k...@gmail.com>wrote:
>>
>>> Hi Charith,
>>>
>>> Is it a limitation in Java or regular expression? We usually try to
>>> reduce the number of attributes( from the language's perspective).
>>>
>>> Thanks,
>>>
>>> Indika
>>>
>>>
>>> On Wed, Jan 12, 2011 at 1:33 PM, Charith Wickramarachchi <
>>> charith.dhanus...@gmail.com> wrote:
>>>
>>>>
>>>>
>>>> On Wed, Jan 12, 2011 at 12:47 PM, indika kumara 
>>>> <indika.k...@gmail.com>wrote:
>>>>
>>>>> +1 for the idea. BTW, Is there any way to do this without introducing a
>>>>> new attribute? i.e only using the regex.
>>>>>
>>>>>
>>>> Hi Indika,
>>>>
>>>> We need to have the flags at the time we compile the regex
>>>>
>>>> ex :
>>>> Pattern pattern = Pattern.compile(patternStr, Pattern.MULTILINE |
>>>> Pattern.CASE_INSENSITIVE);
>>>>
>>>> So we need to configure the flags some how. Alternative is  having them
>>>> in the properties file but IMO that will reduce the flexibility.
>>>> I dont think having a new attribute is a problem since this change is
>>>> backward compatible (its a optional attribute)
>>>>
>>>> thanks,
>>>> Charith
>>>>
>>>>
>>>>
>>>>
>>>> Thanks,
>>>>>
>>>>> Indika
>>>>>
>>>>>
>>>>> On Wed, Jan 12, 2011 at 12:26 PM, Charith Wickramarachchi <
>>>>> charith.dhanus...@gmail.com> wrote:
>>>>>
>>>>>> Hi ,
>>>>>>
>>>>>> If we look at the current Synapse filter mediator it does not support
>>>>>> regex based filtering for multi-line Strings.
>>>>>> IMO having that feature is useful  since there are scenarios where we
>>>>>> need to do reg-ex filtering in multi-line Strings in message.
>>>>>>
>>>>>> So as a solution to that i thought of introducing  flag support to the
>>>>>> Filter mediator with the regex matching. So users can optionally 
>>>>>> configure
>>>>>> flags like
>>>>>> MULTILINE , DOTALL , CASE_INSENSITIVE with the filter mediator.
>>>>>>
>>>>>> And also they will be able to use the combination of flags
>>>>>>
>>>>>> ex :
>>>>>> DOTALL | CASE_INSENSITIVE
>>>>>>
>>>>>> after introducing this example filter mediator will look like this
>>>>>>
>>>>>> <filter source="." regex=".*connection.*" flag="DOTALL |
>>>>>> CASE_INSENSITIVE" xmlns:m="http://www.webserviceX.NET/";>
>>>>>>
>>>>>> you can find more information in [1]
>>>>>>
>>>>>> I'm going of introduce following flags which i think is useful.
>>>>>>
>>>>>>    - MULTILINE
>>>>>>    - DOTALL
>>>>>>    - UNIX_LINES
>>>>>>    - CASE_INSENSITIVE
>>>>>>
>>>>>> If devs are ok i'll go head and add this feature to trunk.
>>>>>>
>>>>>> [1]
>>>>>> http://www.javamex.com/tutorials/regular_expressions/multiline.shtml
>>>>>>
>>>>>> thanks,
>>>>>> Charith
>>>>>>
>>>>>>
>>>>>>
>>>>>> --
>>>>>> Charith Dhanushka Wickramarachchi
>>>>>> http://charithwiki.blogspot.com/
>>>>>>
>>>>>>
>>>>>
>>>>
>>>>
>>>> --
>>>> Charith Dhanushka Wickramarachchi
>>>> http://charithwiki.blogspot.com/
>>>>
>>>>
>>>
>>
>>
>> --
>> Hiranya Jayathilaka
>> Senior Software Engineer;
>> WSO2 Inc.;  http://wso2.org
>> E-mail: hira...@wso2.com;  Mobile: +94 77 633 3491
>> Blog: http://techfeast-hiranya.blogspot.com
>>
>
>


-- 
Charith Dhanushka Wickramarachchi
http://charithwiki.blogspot.com/

Reply via email to