BTW, if most of the community is OK with your solution, I am not against it.


On Wed, Jan 12, 2011 at 4:24 PM, indika kumara <[email protected]>wrote:

>
>
> On Wed, Jan 12, 2011 at 3:46 PM, Charith Wickramarachchi <
> [email protected]> wrote:
>
>> See comments in line.
>>
>> On Wed, Jan 12, 2011 at 2:17 PM, indika kumara <[email protected]>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?
>>
>
> I just believed and had not tested.  I can find from Google that
> 'a(?:)bc'  match for 'aBc' . So, implicitly, the compiler should be
> 'case-sensitive'. This may be for other cases.
>
> If it is a limitation is Regex, then you solution may be OK. (I have not
> checked)
>
>
>>   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 <
>>> [email protected]> 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 
>>>> <[email protected]>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 <
>>>>> [email protected]> wrote:
>>>>>
>>>>>>
>>>>>>
>>>>>> On Wed, Jan 12, 2011 at 12:47 PM, indika kumara <
>>>>>> [email protected]> 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 <
>>>>>>> [email protected]> 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: [email protected];  Mobile: +94 77 633 3491
>>>> Blog: http://techfeast-hiranya.blogspot.com
>>>>
>>>
>>>
>>
>>
>> --
>> Charith Dhanushka Wickramarachchi
>> http://charithwiki.blogspot.com/
>>
>>
>

Reply via email to