Re: Gradle ‘gretty’ Plugin

2018-07-26 Thread Yash Sharma
Hello Mathieu,

I have tried jRebel link: https://zeroturnaround.com/software/jrebel/
 with IntelliJ.

+1 Taher for the change in architecture from a single huge monolithic to
some microservice hot swap (dynamic loading) flexible architecture.


Thanks & Regards,
Pradhan Yash Sharma

On Thu, Jul 26, 2018 at 2:38 PM, Mathieu Lirzin 
wrote:

> Hello,
>
> Being a bit frustrated by the slowness of having to stop/compile/restart
> OFBiz manually each time a java file is changed, I have been searching
> for a way to make Java code hot-deployable, meaning recompiling and
> redeploying Java classes each time a ‘.java’ file is saved.
>
> The ‘gretty’ Gradle plugin seems to provide such feature [1][2].
>
> I would like to know if somebody has already tried to integrate it in
> OFBiz build system? and if there is any OFBiz singularitiy preventing
> its use?
>
> Thanks.
>
> [1] https://guides.gradle.org/building-java-web-applications/
> [2] https://akhikhl.github.io/gretty-doc/Hot-deployment.html
>
> --
> Mathieu Lirzin
> GPG: F2A3 8D7E EB2B 6640 5761  070D 0ADE E100 9460 4D37
>


Re: Welcome to Swapnil M. Mane as new committer!

2018-07-01 Thread Yash Sharma
Many Congratulations Swapnil !!

Thanks & Regards,
Pradhan Yash Sharma


On Mon, Jul 2, 2018 at 9:12 AM Suraj Khurana <
suraj.khur...@hotwaxsystems.com> wrote:

> Many Congratulations Swapnil !!
>
> --
> Thanks and Regards,
> Suraj Khurana | Omni-channel OMS Technical Expert
>
>
> On Fri, Jun 29, 2018 at 2:49 PM, Swapnil Shah <
> swapnil.s...@hotwaxsystems.com> wrote:
>
> > Many Congratulations Swapnil !!
> >
> > Thanks & Regards,
> > Swapnil
> >
> > -Original Message-
> > From: Jacques Le Roux 
> > Sent: Wednesday, June 27, 2018 1:31 AM
> > To: dev@ofbiz.apache.org
> > Subject: Welcome to Swapnil M. Mane as new committer!
> >
> > The OFBiz PMC has invited Swapnil to become a new committer and we
> > arepleased  to announce that he has accepted.
> >
> > Swapnil has a high level of commitment for Apache OFBiz and consistently
> > works with the community.
> >
> > He is one of the most advanced contributors (including committers) in the
> > functional domain.
> >
> > Please join me in welcoming and congratulating Swapnil.
> >
> > Jacques
> >
>


Re: Welcome to Suraj Khurana as new committer!

2018-07-01 Thread Yash Sharma
Many Congratulations Suraj !!

Thanks & Regards,
Pradhan Yash Sharma


On Mon, Jul 2, 2018 at 9:10 AM Suraj Khurana <
suraj.khur...@hotwaxsystems.com> wrote:

> Thanks a lot everyone for your warm wishes !!
>
> --
> Best Regards,
> Suraj Khurana | Omni-channel OMS Technical Expert
>
> On Fri, Jun 29, 2018 at 2:48 PM, Swapnil Shah <
> swapnil.s...@hotwaxsystems.com> wrote:
>
> > Many Congratulations Suraj !!
> >
> > Thanks & Regards,
> > Swapnil
> >
> > -Original Message-
> > From: Jacques Le Roux 
> > Sent: Wednesday, June 27, 2018 1:30 AM
> > To: dev@ofbiz.apache.org
> > Subject: Welcome to Suraj Khurana as new committer!
> >
> > The OFBiz PMC has invited Suraj to become a new committer and we
> arepleased
> > to announce that he has accepted.
> >
> > Suraj has proved to be committed for a long time now and is doing a very
> > good work as a contributor.
> >
> > He helped in a lot of Jiras, answered properly on MLs and proposed a few
> > quite interesting subjects.
> >
> > Please join me in welcoming and congratulating Suraj.
> >
> > Jacques
> >
>


Re: Welcome to Aditya Sharma as new committer!

2018-07-01 Thread Yash Sharma
Many Congratulations Aditya !!

Thanks & Regards,
Pradhan Yash Sharma


On Mon, Jul 2, 2018 at 9:12 AM Suraj Khurana <
suraj.khur...@hotwaxsystems.com> wrote:

> Many Congratulations Aditya !!
>
> --
> Thanks and Regards,
> Suraj Khurana | Omni-channel OMS Technical Expert
>
>
> *Suraj Khurana* | Omni-channel OMS Technical Expert
> HotWax Commerce <http://www.hotwax.co/>  by  HotWax Systems
> <http://www.hotwaxsystems.com/>
> Plot no. 80, Scheme no. 78, Vijay Nagar, Indore, M.P. India 452010
> Cell phone: +91 96697-50002
> <https://about.me/surajkhurana?promo=email_sig>
>
>
>
> HotWax Systems <http://www.hotwaxsystems.com/> recently received 8
> mentions in *The Gartner Digital Commerce Vendor Guide, 2016 *by Gartner,
> Inc., the world's leading IT research and advisory company.
>
> [image: Inline image 1]
>
> On Fri, Jun 29, 2018 at 2:48 PM, Swapnil Shah <
> swapnil.s...@hotwaxsystems.com> wrote:
>
>> Many Congratulations Aditya !!
>>
>>
>> Thanks & Regards,
>> Swapnil
>>
>> -Original Message-
>> From: Jacques Le Roux 
>> Sent: Wednesday, June 27, 2018 1:30 AM
>> To: dev@ofbiz.apache.org
>> Subject: Welcome to Aditya Sharma as new committer!
>>
>> The OFBiz PMC has invited Aditya to become a new committer and we
>> arepleased
>> to announce that he has accepted.
>>
>> Aditya has proved to be committed and doing a very good work as a
>> contributor.
>>
>> He notably coordinated the work around the refactoring of the data model
>> documents, helped in a lot of Jiras and answered appropriately on MLs.
>>
>> Please join me in welcoming and congratulating Aditya.
>>
>> Jacques
>>
>
>


Re: New ASF Member from OFBiz Community

2018-05-02 Thread Yash Sharma
Many Congratulations Deepak!

Thanks & Regards,
--
*Pradhan Yash Sharma*


On Thu, May 3, 2018 at 11:04 AM Vaibhav Jain 
wrote:

> Congratulations Deepak!
>
> Vaibhav Jain
> Sr. Enterprise Software Engineer
> HotWax Systems
> m: 782-834-1900 e: vaibhav.j...@hotwaxsystems.com
>
> On Thu, May 3, 2018 at 10:56 AM, Suraj Khurana <
> suraj.khur...@hotwaxsystems.com> wrote:
>
> > Many congratulations Deepak.
> >
> > --
> > Best Regards,
> > *Suraj Khurana* | Sr. Enterprise Software Engineer
> > *HotWax Commerce*  by  *HotWax Systems*
> > Plot no. 80, Scheme no. 78, Vijay Nagar, Indore, M.P. India 452010
> >
> >
> >
> > On Thu, May 3, 2018 at 10:47 AM Amit Gadaley  > com>
> > wrote:
> >
> > > Congratulations Deepak!!
> > >
> > > On Thu, May 3, 2018 at 10:24 AM, Akash Jain <
> > akash.j...@hotwaxsystems.com>
> > > wrote:
> > >
> > > > Many Congratulations Deepak!
> > > >
> > > > Thanks and Regards
> > > > --
> > > > Akash Jain
> > > >
> > > >
> > > > On Wed, May 2, 2018 at 9:08 PM, Jacopo Cappellato <
> > > > jacopo.cappell...@hotwaxsystems.com> wrote:
> > > >
> > > > > Hi Everyone,
> > > > >
> > > > > today the ASF has published the list of newly nominated members and
> > > "our"
> > > > > Deepak Dixit is one of them:
> > > > >
> > > > > https://blogs.apache.org/foundation/entry/the-apache-
> > > > > software-foundation-welcomes2
> > > > > <https://www.google.com/url?q=https://blogs.apache.org/
> > > > > foundation/entry/the-apache-software-foundation-welcomes2&
> > > > > sa=D&source=hangouts&ust=1525357595561000&usg=
> > > > > AFQjCNHXDpgnyJ1wgnbZ06kEPTsbXs9MDQ>
> > > > >
> > > > > Congratulations Deepak!
> > > > >
> > > > > Jacopo
> > > > >
> > > >
> > >
> > >
> > >
> > > --
> > > Thanks and Regards,
> > > *Amit Gadaley <https://about.me/amit_gadaley>* | Senior Enterprise
> > > Software
> > > Engineer
> > > HotWax Commerce <http://www.hotwax.co/> by HotWax Systems
> > > <http://www.hotwaxsystems.com/>
> > > Plot no. 80, Scheme no. 78 Part 2, Near Brilliant Convention Center,
> > > Indore,
> > > M.P., India - 452010
> > > Cell phone: +91 958.459.3069
> > >
> > > <https://about.me/amit_gadaley?promo=email_sig>
> > >
> >
>


Re: Accessibility scope of variables in Java packages and modules

2018-05-01 Thread Yash Sharma
Hello Taher,

Yes certainly you cleared my doubts, and Yes I am confirming your point
with the feedback.

What I get after this entire discussion is, I was concentrating on
Refactoring and you are emphasizing on Re-Engineering (it will not be an
OFBiz Update with new tricks it will be an OFBiz Upgrade with workflow and
may involve some new tricks).

If this is what you meant, then I observe the pathway will be challenging
but, I guess everyone will understand it will be pleasant to do so.

Looking forward to your approval. It would be a great help if you could
propose an action plan.

Thanks & Regards,
--
*Pradhan Yash Sharma*


On Tue, May 1, 2018 at 3:59 PM Taher Alkhateeb 
wrote:

> Hello Yash,
>
> So you are proving my point with your feedback. What do I mean by that?
>
> You are focusing on things like the below and then you are submitting
> a patch accordingly.
> - use lambda expressions
> - Type inference
> - Using quotes
> - whatever else pattern you seek
>
> My recommendation instead is to rework this into:
> - I want to refactor this class, and make sure all the code is cleaned up.
> - I want to make sure all the methods in this class have a correct
> simple signature and I need to make sure everything else works
> - These three classes over there are responsible for initiating X, but
> they are too complex and have many flaws, we need to set public fields
> to private and do A B C ...
>
> The difference between the two above approaches is subtle but very
> important. In the first case you are looking at a pattern and you want
> to apply it everywhere. The problem is that with this mentality you
> are not looking deeply into the code because you are focused on the
> pattern. In the second case, you are in fact isolating a single class
> or group of related classes and refactoring them very carefully, you
> don't care about patterns, you just want to improve the code.
>
> My recommendation is to change the strategy such that your refactoring
> one-piece-at-a-time, not one-pattern-at-a-time. I hope this clears up
> my perspective
>
> On Mon, Apr 30, 2018 at 9:21 AM, Yash Sharma
>  wrote:
> > *
> > I am not pen downing things, but yea I am really full on high energy to
> > work on these front.
> >
> >
> > Thanks & Regards,
> > --
> > *Pradhan Yash Sharma*
> >
> > On Mon, Apr 30, 2018 at 11:37 AM, Yash Sharma <
> yash.sha...@hotwaxsystems.com
> >> wrote:
> >
> >> Hello,
> >>
> >> Thank you for the response, I was wondering about the volume of
> >> refactoring we can do at each component, so let's apply Divide and
> Conquer
> >> approach for each component upgrading work.
> >>
> >> I can see a few patterns for the update which I've listed down in my
> >> previous mail. We can pick any piece of code and apply focused
> refactoring
> >> on each component, and then we can do it with others as well when we are
> >> through with one. It would be a great help if you could suggest a
> sequence
> >> to do so for example :
> >> *I --> 4.) Use of single quote for a character *(this is a
> >> straightforward work and the easiest one :) ).
> >> *II --> **3.) Using Type Inference *(We can pick this as it will never
> >> impact any working code).
> >> III --> *5.) Updated Variable Declaration.*
> >> *IV --> **1.) **Downsize Accessibility Scope *(If tested this is also a
> >> not a big deal).
> >> *V --> **2.) Using **Lambda Expressions *(This can impact on working
> >> hence put at last)
> >>
> >> This is what I can think :) Please mentor me on this and suggest any
> >> better action plan we can opt for.
> >>
> >> I am very much excited to work on and implement some really cool things
> >> that Java Ecosystem can offer us like Functional Programming, Jigsaw
> >> <http://openjdk.java.net/projects/jigsaw/>, or Local Variable Type
> >> Inference
> >> <https://developer.oracle.com/java/jdk-10-local-variable-type-inference
> >,
> >> I am not penning dowing
> >>
> >>
> >> Thanks & Regards,
> >> --
> >> *Pradhan Yash Sharma*
> >>
> >> On Sat, Apr 28, 2018 at 6:59 PM, Taher Alkhateeb <
> >> slidingfilame...@gmail.com> wrote:
> >>
> >>> Hello Yash,
> >>>
> >>> Thank you for your work on this so far. It's great to see people
> >>> focusing on refactoring, which I think should probably be the top
> >>> priority for all of us.
> >>>
> >>&g

Re: Accessibility scope of variables in Java packages and modules

2018-04-29 Thread Yash Sharma
*
I am not pen downing things, but yea I am really full on high energy to
work on these front.


Thanks & Regards,
--
*Pradhan Yash Sharma*

On Mon, Apr 30, 2018 at 11:37 AM, Yash Sharma  wrote:

> Hello,
>
> Thank you for the response, I was wondering about the volume of
> refactoring we can do at each component, so let's apply Divide and Conquer
> approach for each component upgrading work.
>
> I can see a few patterns for the update which I've listed down in my
> previous mail. We can pick any piece of code and apply focused refactoring
> on each component, and then we can do it with others as well when we are
> through with one. It would be a great help if you could suggest a sequence
> to do so for example :
> *I --> 4.) Use of single quote for a character *(this is a
> straightforward work and the easiest one :) ).
> *II --> **3.) Using Type Inference *(We can pick this as it will never
> impact any working code).
> III --> *5.) Updated Variable Declaration.*
> *IV --> **1.) **Downsize Accessibility Scope *(If tested this is also a
> not a big deal).
> *V --> **2.) Using **Lambda Expressions *(This can impact on working
> hence put at last)
>
> This is what I can think :) Please mentor me on this and suggest any
> better action plan we can opt for.
>
> I am very much excited to work on and implement some really cool things
> that Java Ecosystem can offer us like Functional Programming, Jigsaw
> <http://openjdk.java.net/projects/jigsaw/>, or Local Variable Type
> Inference
> <https://developer.oracle.com/java/jdk-10-local-variable-type-inference>,
> I am not penning dowing
>
>
> Thanks & Regards,
> --
> *Pradhan Yash Sharma*
>
> On Sat, Apr 28, 2018 at 6:59 PM, Taher Alkhateeb <
> slidingfilame...@gmail.com> wrote:
>
>> Hello Yash,
>>
>> Thank you for your work on this so far. It's great to see people
>> focusing on refactoring, which I think should probably be the top
>> priority for all of us.
>>
>> I will review the JIRAs some more over the coming days, but I have a
>> concern that some of the patches are very large.
>>
>> We had many discussions in the past about focused refactoring vs.
>> general trends. Focused refactoring means you go after a specific
>> piece of code like a class or group of related classes / artifacts and
>> fixing them. General trends, on the other hand, means that you
>> identify a certain pattern and then making a sweeping change across
>> the entire code base.
>>
>> General trends refactorings can be very dangerous, because you are
>> running after a "trend" not isolating a specific piece of code and
>> fixing it.
>>
>> So my recommendation, especially for the bigger patches that you have,
>> is to redesign / refactor so that it is a topic-based, not
>> trend-based. We need to make these commits in isolated bite-sized
>> chunks that focus on a specific area instead of a specific trend (make
>> public to private, add try-with-resources, or whatever else)
>>
>> Cheers,
>> Taher
>>
>> On Thu, Apr 19, 2018 at 3:24 PM, Yash Sharma
>>  wrote:
>> > Hi Devs,
>> >
>> > Here is the detailed information about the things I am working on for
>> > performance optimization in our OFBiz code.
>> >
>> > *1.) Downsize Accessibility Scope*
>> > I've tried to downsize accessibility scope of classes, interfaces,
>> abstract
>> > class, declared member variables, enumerations, methods, and
>> constructors
>> > to as minimum as possible as per OFBIz current implementation, still
>> there
>> > is a lot of scope for improvement but it would require changes at the
>> > granular level. I've used this
>> > <https://docs.oracle.com/javase/tutorial/java/javaOO/accesscontrol.html>
>> as
>> > my reference point. example:
>> >
>> > -public void noteKeyRemoval(UtilCache cache, K key, V
>> oldValue);
>> > +void noteKeyRemoval(UtilCache cache, K key, V oldValue);
>> >
>> > Limiting the scope of the method from public modifier to package level.
>> >
>> > *2.) Using Lambda Expressions*
>> > Then tried to use lambda expressions on simple functional work to
>> leverage
>> > implicit type of coding an example:
>> >
>> > -Map initParameters = new
>> LinkedHashMap<>();
>> > -for (Element e : initParamList) {
>> > -initParameters.put(e.getAttribute("name"),
>> > e.getAttri

Re: Accessibility scope of variables in Java packages and modules

2018-04-29 Thread Yash Sharma
Hello,

Thank you for the response, I was wondering about the volume of refactoring
we can do at each component, so let's apply Divide and Conquer approach for
each component upgrading work.

I can see a few patterns for the update which I've listed down in my
previous mail. We can pick any piece of code and apply focused refactoring
on each component, and then we can do it with others as well when we are
through with one. It would be a great help if you could suggest a sequence
to do so for example :
*I --> 4.) Use of single quote for a character *(this is a straightforward
work and the easiest one :) ).
*II --> **3.) Using Type Inference *(We can pick this as it will never
impact any working code).
III --> *5.) Updated Variable Declaration.*
*IV --> **1.) **Downsize Accessibility Scope *(If tested this is also a not
a big deal).
*V --> **2.) Using **Lambda Expressions *(This can impact on working hence
put at last)

This is what I can think :) Please mentor me on this and suggest any better
action plan we can opt for.

I am very much excited to work on and implement some really cool things
that Java Ecosystem can offer us like Functional Programming, Jigsaw
<http://openjdk.java.net/projects/jigsaw/>, or Local Variable Type Inference
<https://developer.oracle.com/java/jdk-10-local-variable-type-inference>, I
am not penning dowing


Thanks & Regards,
--
*Pradhan Yash Sharma*

On Sat, Apr 28, 2018 at 6:59 PM, Taher Alkhateeb  wrote:

> Hello Yash,
>
> Thank you for your work on this so far. It's great to see people
> focusing on refactoring, which I think should probably be the top
> priority for all of us.
>
> I will review the JIRAs some more over the coming days, but I have a
> concern that some of the patches are very large.
>
> We had many discussions in the past about focused refactoring vs.
> general trends. Focused refactoring means you go after a specific
> piece of code like a class or group of related classes / artifacts and
> fixing them. General trends, on the other hand, means that you
> identify a certain pattern and then making a sweeping change across
> the entire code base.
>
> General trends refactorings can be very dangerous, because you are
> running after a "trend" not isolating a specific piece of code and
> fixing it.
>
> So my recommendation, especially for the bigger patches that you have,
> is to redesign / refactor so that it is a topic-based, not
> trend-based. We need to make these commits in isolated bite-sized
> chunks that focus on a specific area instead of a specific trend (make
> public to private, add try-with-resources, or whatever else)
>
> Cheers,
> Taher
>
> On Thu, Apr 19, 2018 at 3:24 PM, Yash Sharma
>  wrote:
> > Hi Devs,
> >
> > Here is the detailed information about the things I am working on for
> > performance optimization in our OFBiz code.
> >
> > *1.) Downsize Accessibility Scope*
> > I've tried to downsize accessibility scope of classes, interfaces,
> abstract
> > class, declared member variables, enumerations, methods, and constructors
> > to as minimum as possible as per OFBIz current implementation, still
> there
> > is a lot of scope for improvement but it would require changes at the
> > granular level. I've used this
> > <https://docs.oracle.com/javase/tutorial/java/javaOO/accesscontrol.html>
> as
> > my reference point. example:
> >
> > -public void noteKeyRemoval(UtilCache cache, K key, V
> oldValue);
> > +void noteKeyRemoval(UtilCache cache, K key, V oldValue);
> >
> > Limiting the scope of the method from public modifier to package level.
> >
> > *2.) Using Lambda Expressions*
> > Then tried to use lambda expressions on simple functional work to
> leverage
> > implicit type of coding an example:
> >
> > -Map initParameters = new
> LinkedHashMap<>();
> > -for (Element e : initParamList) {
> > -initParameters.put(e.getAttribute("name"),
> > e.getAttribute("value"));
> > -}
> > +Map initParameters =
> > initParamList.stream().collect(Collectors.toMap(e ->
> > e.getAttribute("name"), e -> e.getAttribute("value"), (a, b) -> b,
> > LinkedHashMap::new));
> >
> >
> > Some of the key benefits of using lambdas will introduce Functional
> > style over Imperative style
> > <https://stackoverflow.com/questions/2078978/functional-
> programming-vs-object-oriented-programming>,
> > we can use method referencing
> > <https://docs.oracle.com/javase/tutorial/java/javaOO/
> methodreferences.html&

Re: buildbot failure in on ofbizTrunkFramework

2018-04-28 Thread Yash Sharma
Hello,

I guess we need to fix test cases also and the implementation, for now, we
can revert this revision #1830303 and commit a change in the implementation
as well as test cases.
I would be happy to help!


Thanks & Regards,
--
*Pradhan Yash Sharma*

On Sat, Apr 28, 2018 at 5:53 PM, Rishi Solanki 
wrote:

> Here is the  ticket and reason why that work goes in
> https://issues.apache.org/jira/browse/OFBIZ-10369
>
>
>
> Rishi Solanki
> Sr Manager, Enterprise Software Development
> HotWax Systems Pvt. Ltd.
> Direct: +91-9893287847
> http://www.hotwaxsystems.com
> www.hotwax.co
>
> On Sat, Apr 28, 2018 at 5:41 PM, Taher Alkhateeb <
> slidingfilame...@gmail.com
> > wrote:
>
> > Hi Suraj, did you get the latest revision and applied cleanAll first? I
> > notice that the error is emanating from the converter class for
> > LinkedHashMap for some reason.
> >
> > On Sat, Apr 28, 2018, 3:04 PM Suraj Khurana  > com>
> > wrote:
> >
> > > Hello all,
> > > I tried ./gradlew testIntegration locally.
> > >
> > > All test passed.
> > > Is there a connection problem or something else causing this build
> fail?
> > >
> > > --
> > > Best Regards,
> > > *Suraj Khurana* | Sr. Enterprise Software Engineer
> > > *HotWax Commerce*  by  *HotWax Systems*
> > > Plot no. 80, Scheme no. 78, Vijay Nagar, Indore, M.P. India 452010
> > > Cell phone: +91 96697-50002
> > >
> > > On Sat, Apr 28, 2018 at 5:15 PM,  wrote:
> > >
> > > > The Buildbot has detected a new failure on builder
> ofbizTrunkFramework
> > > > while building . Full details are available at:
> > > > https://ci.apache.org/builders/ofbizTrunkFramework/builds/204
> > > >
> > > > Buildbot URL: https://ci.apache.org/
> > > >
> > > > Buildslave for this Build: lares_ubuntu
> > > >
> > > > Build Reason: The AnyBranchScheduler scheduler named
> > > > 'onTrunkFrameworkCommit' triggered this build
> > > > Build Source Stamp: [branch ofbiz/ofbiz-framework/trunk] 1830429
> > > > Blamelist: rishi
> > > >
> > > > BUILD FAILED: failed shell_2
> > > >
> > > > Sincerely,
> > > >  -The Buildbot
> > > >
> > > >
> > > >
> > > >
> > >
> >
>


Re: Accessibility scope of variables in Java packages and modules

2018-04-19 Thread Yash Sharma
Hi Devs,

Here is the detailed information about the things I am working on for
performance optimization in our OFBiz code.

*1.) Downsize Accessibility Scope*
I've tried to downsize accessibility scope of classes, interfaces, abstract
class, declared member variables, enumerations, methods, and constructors
to as minimum as possible as per OFBIz current implementation, still there
is a lot of scope for improvement but it would require changes at the
granular level. I've used this
<https://docs.oracle.com/javase/tutorial/java/javaOO/accesscontrol.html> as
my reference point. example:

-public void noteKeyRemoval(UtilCache cache, K key, V oldValue);
+void noteKeyRemoval(UtilCache cache, K key, V oldValue);

Limiting the scope of the method from public modifier to package level.

*2.) Using Lambda Expressions*
Then tried to use lambda expressions on simple functional work to leverage
implicit type of coding an example:

-Map initParameters = new LinkedHashMap<>();
-for (Element e : initParamList) {
-initParameters.put(e.getAttribute("name"),
e.getAttribute("value"));
-}
+Map initParameters =
initParamList.stream().collect(Collectors.toMap(e ->
e.getAttribute("name"), e -> e.getAttribute("value"), (a, b) -> b,
LinkedHashMap::new));


Some of the key benefits of using lambdas will introduce Functional
style over Imperative style
<https://stackoverflow.com/questions/2078978/functional-programming-vs-object-oriented-programming>,
we can use method referencing
<https://docs.oracle.com/javase/tutorial/java/javaOO/methodreferences.html>,
usage of aggregate operations, and it will help developers to write
memory efficient code.


*3.) Using Type Inference*
Java uses type inference so to make code lightweight I've updated
code constructs as shown in the example for more on this refer this article
<https://docs.oracle.com/javase/tutorial/java/generics/genTypeInference.htmlv>
.

-Map systemProps =
UtilGenerics. checkMap(System.getProperties());
+Map systemProps =
UtilGenerics.checkMap(System.getProperties());


*4.) Use of single quote for character*
There is a significant usage of <"Single Character"> in the codebase for
example:

-throw new GenericConfigException("Error opening file at
location [" + fileUrl.toExternalForm() + "]", e);
+throw new GenericConfigException("Error opening file at
location [" + fileUrl.toExternalForm() + ']', e);


"]" is comparativlelly slower then ']' Java internally uses Flyweight
Design pattern to create String literals so for every call it will not
create a new Object and used an existing one this will improve
performace to some extend an study can be seen on this
<https://stackoverflow.com/questions/24859500/concatenate-char-literal-x-vs-single-char-string-literal-x>
page.


*5.) Updated Variable Declaration*

Lastly some of the variable declaration is updated this doesn't create
a huge difference but helps JVM at the from implicit conversion.

-private long cumulativeEvents = 0;
+private long cumulativeEvents = 0L;


Based on above findings, I have done some code improvement and
provided following patches. *And need community help for reviewing
these changes.*
Kindly provide any improvents or suggestion you have in mind :)


   1. [OFBIZ-10344] Refactoring Variable Scope for
org.apache.ofbiz.base package
<https://issues.apache.org/jira/browse/OFBIZ-10344>
   2. [OFBIZ-10345] Refactoring Variable Scope for
org.apache.ofbiz.catalina.container
<https://issues.apache.org/jira/browse/OFBIZ-10345>
   3. [OFBIZ-10346] Refactoring Variable Scope for
org.apache.ofbiz.common
<https://issues.apache.org/jira/browse/OFBIZ-10346>
   4. [OFBIZ-10347] Refactoring Variable Scope for
org.apache.ofbiz.datafile
<https://issues.apache.org/jira/browse/OFBIZ-10347>
   5. [OFBIZ-10348] Refactoring Variable Scope for
org.apache.ofbiz.entity
<https://issues.apache.org/jira/browse/OFBIZ-10348>


P.S. Apart from this I am also working on performance matrix and will share
it soon.


Thanks & Regards,

--
*Pradhan Yash Sharma*


On Tue, Apr 17, 2018 at 11:28 AM, Yash Sharma  wrote:

> Thank you for the feedback I've created a Jira ticket OFBIZ-10343
> <https://issues.apache.org/jira/browse/OFBIZ-10343> and I will add
> patches for the same for your review.
>
> Thanks & Regards,
> --
> *Pradhan Yash Sharma*
>
> On Fri, Apr 13, 2018 at 5:50 PM, Taher Alkhateeb <
> slidingfilame...@gmail.com> wrote:
>
>> Hello Pradhan,
>>
>> Refactoring is exactly what we need and is a welcomed activity. I
>> think we should, however, try to avoid "big ideas" across the entire
>> cod

Re: Accessibility scope of variables in Java packages and modules

2018-04-16 Thread Yash Sharma
Thank you for the feedback I've created a Jira ticket OFBIZ-10343
<https://issues.apache.org/jira/browse/OFBIZ-10343> and I will add patches
for the same for your review.

Thanks & Regards,
--
*Pradhan Yash Sharma*

On Fri, Apr 13, 2018 at 5:50 PM, Taher Alkhateeb  wrote:

> Hello Pradhan,
>
> Refactoring is exactly what we need and is a welcomed activity. I
> think we should, however, try to avoid "big ideas" across the entire
> code base. The subject of your message is the reason why I say that.
>
> So, if you want to start refactoring, I suggest to start with one
> piece of code, study it careful, issue a JIRA, and provide a patch.
> This should be focused similar to your notes on UtilCache.
>
> On Fri, Apr 13, 2018 at 12:14 PM, Pradhan Yash Sharma
>  wrote:
> > Hello,
> >
> > While I was working on UtilCache.java file came across some improvements,
> > they are as follows:
> >
> > 1) Method and Variable access modifiers can be narrowed down to private
> > access modifier.
> >
> > 2) Then AtomicLong can be given value 0L instead of 0.
> >
> > 3) Some Variables is used in both synchronized and unsynchronized blocks,
> > so they can be declared final. eg,
> >
> >
> >
> > *protected AtomicLong hitCount = new AtomicLong(0);
> private
> > final AtomicLong hitCount = new AtomicLong(0L);*
> > One variable was able to get most of my attention is
> >
> > *protected ConcurrentMap>
> memoryTable
> > = null;*
> >
> > This is used in synchronized and unsynchronized blocks, this Object can
> be
> > converted into ThreadLocal or AtomicReference but it would require
> changes
> > in the current implementation as well.
> >
> > Lastly, there is extensive use of for loops for iteration we can use
> Java 8
> > Streams, Collector, and other functions to leverage implicit looping
> > mechanism.
> >
> >
> > --
> > Pradhan Yash Sharma
>


Accessibility scope of variables in Java packages and modules

2018-04-13 Thread Pradhan Yash Sharma
Hello,

While I was working on UtilCache.java file came across some improvements,
they are as follows:

1) Method and Variable access modifiers can be narrowed down to private
access modifier.

2) Then AtomicLong can be given value 0L instead of 0.

3) Some Variables is used in both synchronized and unsynchronized blocks,
so they can be declared final. eg,



*protected AtomicLong hitCount = new AtomicLong(0);private
final AtomicLong hitCount = new AtomicLong(0L);*
One variable was able to get most of my attention is

*protected ConcurrentMap> memoryTable
= null;*

This is used in synchronized and unsynchronized blocks, this Object can be
converted into ThreadLocal or AtomicReference but it would require changes
in the current implementation as well.

Lastly, there is extensive use of for loops for iteration we can use Java 8
Streams, Collector, and other functions to leverage implicit looping
mechanism.


--
Pradhan Yash Sharma


Re: Updates to EntityQuery

2017-10-25 Thread Yash Sharma
I am all up for it, please let me know if I could help.

Thanks & Regards,
--
*Pradhan Yash Sharma*
*HotWax Systems* | www.hotwaxsystems.com

On Wed, Oct 25, 2017 at 6:23 PM, Yash Sharma 
wrote:

> Yes, Usage of the stream will surely enhance performance to a certain
> extent and removes ceremony from the code base. I think Parallel streams
> will add enhancements in many folds as we are using a multicore processor
> (I have not tested yet), but the Functional approach seems promising.
>
> Thanks & Regards,
> --
> *Pradhan Yash Sharma*
> *HotWax Systems* | www.hotwaxsystems.com
>
> On Wed, Oct 25, 2017 at 5:59 PM, Gareth Carter <
> gareth.car...@stannah.co.uk> wrote:
>
>> forUpdate
>>
>> We patched EntityFindOptions with a new field "forUpdate" with shorthand
>> methods in EntityQuery to enable. We then made a change to
>> GenericDAO.selectListIteratorByCondition to add "FOR UPDATE" on the end
>> of the SQL select statement - this allows for DB row locks (we use postgres
>> and works but have not tested other databases). I believe there may have
>> been a discussion about this before
>>
>>
>> forEach on EntityQuery
>>
>> Use Consumer in java and groovy to iterate over a query. This can reduce
>> memory consumption (replacement for queryList()) and boiler plate code (eg
>> queryIterator(), while loop and close)
>>
>> Example:
>>
>> EntityQuery.use(delegator).from("Foobar")
>> .forEach(item ->
>> Debug.logInfo(item.toString(), module);
>> );
>>
>> A further update could be to provide stream capabilities
>>
>> Hope this helps, I can provide a patch aswell
>>
>> Gareth Carter
>> Software Development Analyst
>> Stannah Management Services Ltd
>> IT Department
>> Ext:
>> 7036
>> DDI:
>> 01264 364311
>>
>>
>> Please consider the environment before printing this email.
>>
>> -Original Message-
>> From: Arun Patidar [mailto:arun.pati...@hotwaxsystems.com]
>> Sent: 25 October 2017 5:49 AM
>> To: dev@ofbiz.apache.org
>> Cc: arunpati...@apache.org
>> Subject: Re: Updates to EntityQuery
>>
>> Hello Gareth,
>>
>> Please provide some more details or patch to understand  - forUpdate and
>> forEach method utility.
>>
>> getFieldMap method looks good to me.
>>
>>
>>
>> --
>> Thanks & Regards
>> ---
>> Arun Patidar
>> Manager, Enterprise Software Development
>>
>> HotWax Systems Pvt Ltd.
>>
>> www.hotwaxsystems.com
>>
>>
>> On Tue, Oct 24, 2017 at 9:06 PM, Gareth Carter <
>> gareth.car...@stannah.co.uk>
>> wrote:
>>
>> > Hi all
>> >
>> > We have internally patched EntityQuery with some additional
>> > functionality and before I create a Jira was going to see what the
>> community thinks.
>> >
>> > New functionality:
>> >
>> > -   New method getFieldMap which returns a Map object of selected
>> > fields from GenericValue objects, useful for creating cache map
>> > objects for lookup
>> >
>> > -   Support forUpdate
>> >
>> > -   forEach method to accept Consumer
>> >
>> > We have found these useful and believe the project can benefit, let me
>> > know what you think
>> >
>> > Regards
>> >
>> > Gareth Carter
>> >
>> >
>> > Software Development Analyst
>> >
>> >
>> > Stannah Management Services Ltd
>> >
>> >
>> > IT Department
>> >
>> >
>> > Ext:
>> >
>> >
>> > 7036
>> >
>> >
>> > DDI:
>> >
>> >
>> > 01264 364311
>> >
>> >
>> >
>> >
>> > [http://logos.stannah.co.uk/stan150.jpg]
>> >
>> >
>> > [http://logos.stannah.co.uk/enviro.jpg]Please consider the environment
>> > before printing this email.
>> >
>> >
>> >
>> > This email is intended only for the above addressee. It may contain
>> > privileged information. If you are not the addressee you must not
>> > copy, distribute, disclose or use any of the information in it. If you
>> > have received it in error, please delete it and notify the sender.
>> >
>> > Stannah Lift Holdings Ltd registered No. 686996, Stannah Management
>> > Services Ltd registered No. 2483693, Stannah Lift Services Ltd
>> > registered No. 1189799, Stannah Microlifts Ltd registered No. 964804,
>> > Stannah Lifts Ltd registered No. 1189836, Stannah Stairlifts Ltd
>> > registered No. 1401451, Global Upholstery Solutions Ltd registered No.
>> 02452728.
>> >
>> > All registered offices at Watt Close, East Portway, Andover,
>> > Hampshire,
>> > SP10 3SD, England.
>> >
>> > All Registered in England and Wales.
>> >
>> > This message has been scanned for malware by Websense.
>> > www.websense.com
>> >
>>
>>
>> To report this email as spam, please send the original message, complete
>> with headers to s...@websense.com
>>
>
>


Re: Updates to EntityQuery

2017-10-25 Thread Yash Sharma
Yes, Usage of the stream will surely enhance performance to a certain
extent and removes ceremony from the code base. I think Parallel streams
will add enhancements in many folds as we are using a multicore processor
(I have not tested yet), but the Functional approach seems promising.

Thanks & Regards,
--
*Pradhan Yash Sharma*
*HotWax Systems* | www.hotwaxsystems.com

On Wed, Oct 25, 2017 at 5:59 PM, Gareth Carter 
wrote:

> forUpdate
>
> We patched EntityFindOptions with a new field "forUpdate" with shorthand
> methods in EntityQuery to enable. We then made a change to 
> GenericDAO.selectListIteratorByCondition
> to add "FOR UPDATE" on the end of the SQL select statement - this allows
> for DB row locks (we use postgres and works but have not tested other
> databases). I believe there may have been a discussion about this before
>
>
> forEach on EntityQuery
>
> Use Consumer in java and groovy to iterate over a query. This can reduce
> memory consumption (replacement for queryList()) and boiler plate code (eg
> queryIterator(), while loop and close)
>
> Example:
>
> EntityQuery.use(delegator).from("Foobar")
> .forEach(item ->
> Debug.logInfo(item.toString(), module);
> );
>
> A further update could be to provide stream capabilities
>
> Hope this helps, I can provide a patch aswell
>
> Gareth Carter
> Software Development Analyst
> Stannah Management Services Ltd
> IT Department
> Ext:
> 7036
> DDI:
> 01264 364311
>
>
> Please consider the environment before printing this email.
>
> -Original Message-
> From: Arun Patidar [mailto:arun.pati...@hotwaxsystems.com]
> Sent: 25 October 2017 5:49 AM
> To: dev@ofbiz.apache.org
> Cc: arunpati...@apache.org
> Subject: Re: Updates to EntityQuery
>
> Hello Gareth,
>
> Please provide some more details or patch to understand  - forUpdate and
> forEach method utility.
>
> getFieldMap method looks good to me.
>
>
>
> --
> Thanks & Regards
> ---
> Arun Patidar
> Manager, Enterprise Software Development
>
> HotWax Systems Pvt Ltd.
>
> www.hotwaxsystems.com
>
>
> On Tue, Oct 24, 2017 at 9:06 PM, Gareth Carter <
> gareth.car...@stannah.co.uk>
> wrote:
>
> > Hi all
> >
> > We have internally patched EntityQuery with some additional
> > functionality and before I create a Jira was going to see what the
> community thinks.
> >
> > New functionality:
> >
> > -   New method getFieldMap which returns a Map object of selected
> > fields from GenericValue objects, useful for creating cache map
> > objects for lookup
> >
> > -   Support forUpdate
> >
> > -   forEach method to accept Consumer
> >
> > We have found these useful and believe the project can benefit, let me
> > know what you think
> >
> > Regards
> >
> > Gareth Carter
> >
> >
> > Software Development Analyst
> >
> >
> > Stannah Management Services Ltd
> >
> >
> > IT Department
> >
> >
> > Ext:
> >
> >
> > 7036
> >
> >
> > DDI:
> >
> >
> > 01264 364311
> >
> >
> >
> >
> > [http://logos.stannah.co.uk/stan150.jpg]
> >
> >
> > [http://logos.stannah.co.uk/enviro.jpg]Please consider the environment
> > before printing this email.
> >
> >
> >
> > This email is intended only for the above addressee. It may contain
> > privileged information. If you are not the addressee you must not
> > copy, distribute, disclose or use any of the information in it. If you
> > have received it in error, please delete it and notify the sender.
> >
> > Stannah Lift Holdings Ltd registered No. 686996, Stannah Management
> > Services Ltd registered No. 2483693, Stannah Lift Services Ltd
> > registered No. 1189799, Stannah Microlifts Ltd registered No. 964804,
> > Stannah Lifts Ltd registered No. 1189836, Stannah Stairlifts Ltd
> > registered No. 1401451, Global Upholstery Solutions Ltd registered No.
> 02452728.
> >
> > All registered offices at Watt Close, East Portway, Andover,
> > Hampshire,
> > SP10 3SD, England.
> >
> > All Registered in England and Wales.
> >
> > This message has been scanned for malware by Websense.
> > www.websense.com
> >
>
>
> To report this email as spam, please send the original message, complete
> with headers to s...@websense.com
>


Re: Implement AutoCloseable interface in SQLProcessor Class

2017-10-12 Thread Yash Sharma
Thank You, Jacques, I have created a Jira Ticket for the same OFBIZ-9841
<https://issues.apache.org/jira/browse/OFBIZ-9841> and will provide the
patch soon.


On Thu, Oct 12, 2017 at 9:04 PM Jacques Le Roux <
jacques.le.r...@les7arts.com> wrote:

> Le 12/10/2017 à 16:09, Yash Sharma a écrit :
> > Hello All,
> >
> > SQLProcessor class has a close method which does work of closing of
> > ResultSet, PreparedStatement and Connection, we can use AutoCloseable
> > interface to do that.
> >
> > Please share your thoughts.
> Hi Yash,
>
> I see no reasons why we would not, cleaner and safer code
>
> Jacques
>
> --
Thanks,
*Pradhan Yash Sharma*


Implement AutoCloseable interface in SQLProcessor Class

2017-10-12 Thread Yash Sharma
Hello All,

SQLProcessor class has a close method which does work of closing of
ResultSet, PreparedStatement and Connection, we can use AutoCloseable
interface to do that.

Please share your thoughts.
-- 
Thanks,
*Pradhan Yash Sharma*


Re: Components loading twice while starting OFBiz

2017-10-06 Thread Yash Sharma
Hello Taher,

Thanks for your quick response, I am a big fan of your work for that. Yes
this behaviour exists in 14.12 also, I have created JIRA ticket for that
OFBIZ-9827 <https://issues.apache.org/jira/browse/OFBIZ-9827>.

Thanks & Regards,
--
*Pradhan Yash Sharma*
*HotWax Systems* | www.hotwaxsystems.com

On Fri, Oct 6, 2017 at 10:57 PM, Taher Alkhateeb  wrote:

> Hello Yash,
>
> I've made a full refactoring exercise of the CatalinaContainer a while
> ago, however I don't think that work altered the behavior. Perhaps
> this is an existing bug (not sure).
>
> Either way, I'm familiar with that code and if you'd like to open a
> JIRA I can try to help out. I never liked the whole logic for loading
> webapps, so this might be a good time to fix the bug and improve the
> logic in this class.
>
> On Fri, Oct 6, 2017 at 3:57 PM, Yash Sharma
>  wrote:
> > Hi Dev,
> >
> > I was looking at some components loading twice while starting OFBiz.
> > While digging it deep down I found CatalinaContainer calls loadWebapps
> > which creates a future task which depends on numbers of System cores.
> > If web app mounts are not available it removes all and adds again all
> Apps
> > Mounts which submits all task to future. Which creates a condition where
> >
> > 1) if 2 cores are available task some task is added to the future pool
> > twice.
> > 2) if 4 cores are available only task one task is added to the future
> pool
> > twice.
> >
> > (These values totally depend on system speed and number of cores
> available
> > but the point is slow system will submit few task more than once and
> faster
> > vice versa)
> >
> > I am looking around this piece of code and trying to resolve this problem
> > if someone else has gone through this please let me know.
> >
> >
> > Thanks & Regards,
> > --
> > *Pradhan Yash Sharma*
> > *HotWax Systems* | www.hotwaxsystems.com
>


Components loading twice while starting OFBiz

2017-10-06 Thread Yash Sharma
Hi Dev,

I was looking at some components loading twice while starting OFBiz.
While digging it deep down I found CatalinaContainer calls loadWebapps
which creates a future task which depends on numbers of System cores.
If web app mounts are not available it removes all and adds again all Apps
Mounts which submits all task to future. Which creates a condition where

1) if 2 cores are available task some task is added to the future pool
twice.
2) if 4 cores are available only task one task is added to the future pool
twice.

(These values totally depend on system speed and number of cores available
but the point is slow system will submit few task more than once and faster
vice versa)

I am looking around this piece of code and trying to resolve this problem
if someone else has gone through this please let me know.


Thanks & Regards,
--
*Pradhan Yash Sharma*
*HotWax Systems* | www.hotwaxsystems.com


Re: [ANNOUNCE] The Big Book for Apache OFBiz Data Model 2017 Released

2017-10-04 Thread Yash Sharma
Great Effort !!

On Wed, Oct 4, 2017 at 4:46 PM Aditya Sharma <
aditya.sha...@hotwaxsystems.com> wrote:

> Hello All,
>
> It gives me immense pleasure informing you all that we have updated *The
> Big
> Book of Apache OFBiz Data Model* according to the latest trunk version.
>
> The key features:
> * Colored content with titles according to the internal color pattern.
> * Addition of a separate page for integration specific entities.
> * Removal of technical process diagrams, making it specific for entities.
> * Addition of 77 new entities.
> * Removal of 8 entities.
> * Addition of around 200+ new fields in entities (Though major portion
> includes the addition of description or attrDescription fields in
> *Attribute or *TypeAttr entities).
> * Removal of 24 fields.
>
> I have uploaded the files on Data Model Diagrams page. Here is the link
> <https://cwiki.apache.org/confluence/x/8ILK>.
>
> Cheers!
>
> *Aditya Sharma* | Enterprise Software Engineer
> HotWax Systems <http://www.hotwaxsystems.com/>
> <https://www.linkedin.com/in/aditya-sharma-78291810a/>
>
-- 
Thanks,
*Pradhan Yash Sharma*


Re: [MODERATE EMAIL] Proposal to use Servlet annotations for configuration.

2017-09-26 Thread Yash Sharma
Thank you, Jacques.
We can even take it further with @*WebInitParam *annotation to
initialize values once it for all for all webapps and @*ServletSecurity *for
basic servlet security.

On Tue, Sep 26, 2017 at 2:23 PM Jacques Le Roux <
jacques.le.r...@les7arts.com> wrote:

> Le 24/09/2017 à 10:27, Jacques Le Roux a écrit :
> > and certainly more things using @WebInitParam and @WebInitParam
> Not sure what I wanted to add there :D
>
> Jacques
>
> --
Thanks,
*Pradhan Yash Sharma*


Re: [MODERATE EMAIL] Proposal to use Servlet annotations for configuration.

2017-09-23 Thread Yash Sharma
Hello Jacques,

First of all, thank you for your response, while we declare Servlet
definition in web.xml file we can also do it the java file itself.
Here is an example of declaring a Servlet through annotation:

@WebServlet(name = "/mypluginweb/WelcomeServlet", urlPatterns =
"/mypluginweb/WelcomeServlet", loadOnStartup = 1, description = "Welcome
Servlet")

and for Filters:

@WebFilter(filterName = "MyFilter", displayName = "MyFilter", initParams =
@WebInitParam(name = "allowedPaths", value =
"/error:/control:/select:/index.html:/index.jsp:/default.html:/default.jsp:/images"),
@WebInitParam(name = "redirectPath", value = "/control/main"))

Web components are configurable through annotations it reduces ceremony of
1) Writing XML files
2) Validating and storing Document
3) And finally converting them into Java objects.
4) Annotations based configuration is concise in comparison to XML based
configuration.



On Mon, Sep 18, 2017 at 12:27 PM Jacques Le Roux <
jacques.le.r...@les7arts.com> wrote:

> Hi Pradhan,
>
> Could you give us a quick example of what you want to do with it exactly?
>
> Actually more to the point, what advantages this gives to us?
>
> TIA
>
> Jacques
>
>
> Le 18/09/2017 à 07:19, Deepak Dixit a écrit :
> > Hi Yash,
> >
> > Your email has been moderated,
> > Please subscribe to mailing list
> >
> > http://ofbiz.apache.org/mailing-lists.html
> >
> >
> > Thanks & Regards
> > --
> > Deepak Dixit
> > www.hotwaxsystems.com
> > www.hotwax.co
> >
> >
> > -- Forwarded message --
> > From: Pradhan Yash Sharma 
> > To: dev@ofbiz.apache.org
> > Cc: Yash Sharma 
> > Bcc:
> > Date: Sun, 17 Sep 2017 15:52:51 +0530
> > Subject: Proposal to use Servlet annotations for configuration.
> > Hello All,
> >
> > I would like to propose to use annotations for configuring Servlets. We
> > have declared web.xml file in every webapp to modularize code. I would
> like
> > to use Web Servlet annotations
> > <
> http://docs.oracle.com/javaee/6/api/javax/servlet/annotation/package-summary.html
> >
> > to
> > configure:
> >
> > 1) context params
> > 2) filters
> > 3) listeners
> > 4) servlet
> > 5) session configurations
> >
> > Please let me know your thoughts.
> >
>
> --
Thanks,
*Pradhan Yash Sharma*


Re: Importance of programming in our community

2017-09-10 Thread Yash Sharma
A big +1

On Mon, Sep 4, 2017 at 4:17 PM Taher Alkhateeb 
wrote:

> Hello everyone,
>
> I've been thinking for a few weeks about this topic, so I thought I'd
> just share my thoughts here.
>
> OFBiz has great DSL, it is a blessing, it makes things easier
> OFBiz has great DSL, it is a curse, it makes things sloppy
>
> I think OFBiz is unique and it's rare to find software projects where
> non-programmers can participate. It makes the pool of participants
> bigger. But there is a price to pay in terms of quality.
>
> problem
> ---
>
> OFBiz has too much DSL. The amount of XML in the code base makes
> everything else looks tiny in comparison. As many programmers know, a
> DSL (Domain Specific Language) is just a tool to make certain things
> easier / faster. It is not _the_ solution for everything. In many
> frameworks that I use when things get too complicated I drop down to
> programming because the DSL hits certain limits and becomes a pain to
> deal with.
>
> When we write everything at a high level (DSL) we can accomplish a
> lot, but the drawbacks include:
> - Verbosity
> - Copy-paste patterns
> - Repetition due to inability to reuse
> - Inflexible architecture:
>   - services do not compose
>   - debugging becomes hard
>   - reusability is low
>   - modularity is low
>
> proposed direction
> --
>
> We have a word in the community: "Functional". We mean by this word a
> person who is familiar with the entity model of OFBiz and understands
> how the system works through the DSL but has limited or no ability to
> program in a general purpose programming language. Many times when we
> hit an architectural problem, a solution at the programming language
> level can be as dramatic as 1% the size of the DSL solution and maybe
> 100 times faster. It can also be cleaner and more re-usable.
>
> I think maybe part of the solution is to encourage some of our
> "Functional" community members to embrace and enhance their
> programming skills and not settle for only functional knowledge.
> Examples for doing that:
> - Embrace Java, it's the number 1 programming language on the planet
> - Maybe attend basic coding lessons if possible
> - Read online, plenty for resources
> - Ask for help, from my experience people _love_ giving it here in the ASF
> - Before writing a custom widget, think, maybe you can resolve it with
> an FTL macro and make a root solution for many other widgets
> - Before repeating a CRUD service for the 100th time, think, maybe you
> can factor out common code into a nice Java service with parameters.
> - Why not replace all this wiring of events, services and ECAs and
> very complex route with a simple single service?
>
> Do i make sense? Sorry if babbled a lot, and congratulations if you
> made it to this line :) I'd love to hear your thoughts.
>
> Cheers,
>
> Taher Alkhateeb
>
-- 
Thanks,
*Pradhan Yash Sharma*


Re: New ASF Members from OFBiz Community

2017-04-04 Thread Yash Sharma
Many congratulations to Michael Brohl, Taher Alkhateeb, Anil Patel, Ashish
Vijaywargiya and Bilgin !

On Wed, Apr 5, 2017 at 10:44 AM Deepak Dixit 
wrote:

> Many Many Congrats Anil, Ashish and Bilgin!
>
> Thanks & Regards
> --
> Deepak Dixit
> www.hotwaxsystems.com
>
> On Wed, Apr 5, 2017 at 12:32 AM, Sharan Foga  wrote:
>
> > Hi Everyone
> >
> > Wow – we have even more good news! Another three people from our
> community
> > have been invited to become members of the Apache Software Foundation.
> They
> > are Anil Patel, Ashish Vijaywargiya and Bilgin Ibryam
> >
> > Many congratulations Anil, Ashish and Bilgin !!!
> >
> > Thanks
> > Sharan
> >
> > On 2017-04-03 11:06 (+0200), "Sharan Foga" wrote:
> > > Hi Everyone
> > >
> > > Please join me in congratulating Michael Brohl and Taher Alkhateeb as
> > being invited to become members of the Apache Software Foundation.
> > >
> > > Congratulations Michael and Taher!
> > >
> > > Thanks
> > > Sharan
> > >
> > >
> >
>
-- 
Thanks & Regards,

*Pradhan Yash Sharma*
*HotWax Systems* | www.hotwaxsystems.com


Re: Welcome Swapnil Shah as a New Committer!

2017-02-14 Thread Yash Sharma
Congratulations Swapnil Shah !

On Tue, Feb 14, 2017 at 6:05 PM Nitesh Goyal 
wrote:

> Congratulations Swapnil!
>
> Regards,
>
> Nitesh Goyal
>
> https://in.linkedin.com/pub/nitesh-goyal/3a/178/b06
>
>
> <https://in.linkedin.com/pub/nitesh-goyal/3a/178/b06>
>
> On Tue, Feb 14, 2017 at 4:30 PM, Sharan Foga  wrote:
>
> > The OFBiz PMC has invited Swapnil Shah to become a new committer and are
> > happy to announce that he has accepted.
> >
> > Swapnil has been involved in OFBiz for a few years and has been active on
> > both the development and user mailing lists responding to some quite
> > technical functional questions.
> >
> > Some of the key factors considered for inviting him were as follows:
> >
> > - He has very good functional knowledge about OFBiz and this is a
> valuable
> > skill that is useful to developers and users
> > - He is polite, positive, friendly and collaborative when dealing the
> > community discussions on the mailings lists or Jira
> > - He has raised Jiras, performed testing on patches and new other
> > functionality
> > - The PMC would like to see a wide range of people from the community
> > (developers and non-developers) recognised for their contributions to the
> > project.
> >
> > Please join me in welcoming and congratulating Swapnil.
> >
> > Thanks
> > Sharan
> >
>
-- 
Thanks & Regards,

*Pradhan Yash Sharma*
*HotWax Systems* | www.hotwaxsystems.com


[jira] [Updated] (OFBIZ-7887) Remove unused variables from java files of order component

2016-07-16 Thread Pradhan Yash Sharma (JIRA)

 [ 
https://issues.apache.org/jira/browse/OFBIZ-7887?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Pradhan Yash Sharma updated OFBIZ-7887:
---
Attachment: OFBIZ-7887.patch

> Remove unused variables from java files of order component
> --
>
> Key: OFBIZ-7887
> URL: https://issues.apache.org/jira/browse/OFBIZ-7887
> Project: OFBiz
>  Issue Type: Sub-task
>  Components: order
>Affects Versions: Trunk
>    Reporter: Pradhan Yash Sharma
>Priority: Minor
> Attachments: OFBIZ-7887.patch
>
>
> Remove unused variables from java files of order component



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (OFBIZ-7887) Remove unused variables from java files of order component

2016-07-16 Thread Pradhan Yash Sharma (JIRA)

[ 
https://issues.apache.org/jira/browse/OFBIZ-7887?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15380817#comment-15380817
 ] 

Pradhan Yash Sharma commented on OFBIZ-7887:


Removed unused variables from java files of order and attached patch for the 
same.

> Remove unused variables from java files of order component
> --
>
> Key: OFBIZ-7887
> URL: https://issues.apache.org/jira/browse/OFBIZ-7887
> Project: OFBiz
>  Issue Type: Sub-task
>  Components: order
>Affects Versions: Trunk
>    Reporter: Pradhan Yash Sharma
>Priority: Minor
> Attachments: OFBIZ-7887.patch
>
>
> Remove unused variables from java files of order component



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Created] (OFBIZ-7887) Remove unused variables from java files of order component

2016-07-16 Thread Pradhan Yash Sharma (JIRA)
Pradhan Yash Sharma created OFBIZ-7887:
--

 Summary: Remove unused variables from java files of order component
 Key: OFBIZ-7887
 URL: https://issues.apache.org/jira/browse/OFBIZ-7887
 Project: OFBiz
  Issue Type: Sub-task
  Components: order
Affects Versions: Trunk
Reporter: Pradhan Yash Sharma
Priority: Minor


Remove unused variables from java files of order component



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (OFBIZ-7886) Remove unused variables from java files of workeffort component

2016-07-16 Thread Pradhan Yash Sharma (JIRA)

 [ 
https://issues.apache.org/jira/browse/OFBIZ-7886?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Pradhan Yash Sharma updated OFBIZ-7886:
---
Attachment: OFBIZ-7886.patch

Removed unused variables from java files of workeffort and attached patch for 
the same.

> Remove unused variables from java files of workeffort component
> ---
>
> Key: OFBIZ-7886
> URL: https://issues.apache.org/jira/browse/OFBIZ-7886
> Project: OFBiz
>  Issue Type: Sub-task
>  Components: workeffort
>Affects Versions: Trunk
>    Reporter: Pradhan Yash Sharma
>Priority: Minor
> Attachments: OFBIZ-7886.patch
>
>
> Remove unused variables from java files of workeffort component



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Created] (OFBIZ-7886) Remove unused variables from java files of workeffort component

2016-07-16 Thread Pradhan Yash Sharma (JIRA)
Pradhan Yash Sharma created OFBIZ-7886:
--

 Summary: Remove unused variables from java files of workeffort 
component
 Key: OFBIZ-7886
 URL: https://issues.apache.org/jira/browse/OFBIZ-7886
 Project: OFBiz
  Issue Type: Sub-task
  Components: workeffort
Affects Versions: Trunk
Reporter: Pradhan Yash Sharma
Priority: Minor


Remove unused variables from java files of workeffort component



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (OFBIZ-7885) Remove unused variables from java files of product component

2016-07-16 Thread Pradhan Yash Sharma (JIRA)

 [ 
https://issues.apache.org/jira/browse/OFBIZ-7885?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Pradhan Yash Sharma updated OFBIZ-7885:
---
Attachment: OFBIZ-7885.patch

Removed unused variables from java files of product and attached patch for the 
same.

> Remove unused variables from java files of product component
> 
>
> Key: OFBIZ-7885
> URL: https://issues.apache.org/jira/browse/OFBIZ-7885
> Project: OFBiz
>  Issue Type: Sub-task
>  Components: product
>Affects Versions: Trunk
>    Reporter: Pradhan Yash Sharma
>Priority: Minor
> Attachments: OFBIZ-7885.patch
>
>
> Remove unused variables from java files of product component.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Created] (OFBIZ-7885) Remove unused variables from java files of product component

2016-07-16 Thread Pradhan Yash Sharma (JIRA)
Pradhan Yash Sharma created OFBIZ-7885:
--

 Summary: Remove unused variables from java files of product 
component
 Key: OFBIZ-7885
 URL: https://issues.apache.org/jira/browse/OFBIZ-7885
 Project: OFBiz
  Issue Type: Sub-task
  Components: product
Affects Versions: Trunk
Reporter: Pradhan Yash Sharma
Priority: Minor


Remove unused variables from java files of product component.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Comment Edited] (OFBIZ-7884) Remove unused variables from java files of content component

2016-07-16 Thread Pradhan Yash Sharma (JIRA)

[ 
https://issues.apache.org/jira/browse/OFBIZ-7884?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15380812#comment-15380812
 ] 

Pradhan Yash Sharma edited comment on OFBIZ-7884 at 7/16/16 2:58 PM:
-

Removed unused variables from java files of content and attached patch for the 
same.


was (Author: pradhanyashsharma):
Removed unused variables from java files of accounting content and attached 
patch for the same.

> Remove unused variables from java files of content component
> 
>
> Key: OFBIZ-7884
> URL: https://issues.apache.org/jira/browse/OFBIZ-7884
> Project: OFBiz
>  Issue Type: Sub-task
>  Components: content
>Affects Versions: Trunk
>    Reporter: Pradhan Yash Sharma
>Priority: Minor
> Attachments: OFBIZ-7884.patch
>
>
> Remove unused variables from java files of content component.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (OFBIZ-7884) Remove unused variables from java files of content component

2016-07-16 Thread Pradhan Yash Sharma (JIRA)

 [ 
https://issues.apache.org/jira/browse/OFBIZ-7884?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Pradhan Yash Sharma updated OFBIZ-7884:
---
Attachment: OFBIZ-7884.patch

Removed unused variables from java files of accounting content and attached 
patch for the same.

> Remove unused variables from java files of content component
> 
>
> Key: OFBIZ-7884
> URL: https://issues.apache.org/jira/browse/OFBIZ-7884
> Project: OFBiz
>  Issue Type: Sub-task
>  Components: content
>Affects Versions: Trunk
>    Reporter: Pradhan Yash Sharma
>Priority: Minor
> Attachments: OFBIZ-7884.patch
>
>
> Remove unused variables from java files of content component.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Created] (OFBIZ-7884) Remove unused variables from java files of content component

2016-07-16 Thread Pradhan Yash Sharma (JIRA)
Pradhan Yash Sharma created OFBIZ-7884:
--

 Summary: Remove unused variables from java files of content 
component
 Key: OFBIZ-7884
 URL: https://issues.apache.org/jira/browse/OFBIZ-7884
 Project: OFBiz
  Issue Type: Sub-task
  Components: content
Affects Versions: Trunk
Reporter: Pradhan Yash Sharma
Priority: Minor


Remove unused variables from java files of content component.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (OFBIZ-7881) Remove unused variables from java files of accounting component

2016-07-16 Thread Pradhan Yash Sharma (JIRA)

 [ 
https://issues.apache.org/jira/browse/OFBIZ-7881?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Pradhan Yash Sharma updated OFBIZ-7881:
---
Assignee: (was: Pradhan Yash Sharma)

> Remove unused variables from java files of accounting component
> ---
>
> Key: OFBIZ-7881
> URL: https://issues.apache.org/jira/browse/OFBIZ-7881
> Project: OFBiz
>  Issue Type: Sub-task
>  Components: accounting
>    Reporter: Pradhan Yash Sharma
>Priority: Minor
> Fix For: Trunk
>
> Attachments: OFBIZ-7881.patch
>
>
> Remove unused variables from java files of accounting component.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (OFBIZ-7881) Remove unused variables from java files of accounting component

2016-07-16 Thread Pradhan Yash Sharma (JIRA)

[ 
https://issues.apache.org/jira/browse/OFBIZ-7881?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15380789#comment-15380789
 ] 

Pradhan Yash Sharma commented on OFBIZ-7881:


Removed unused variables from java files of accounting component and attached 
patch for the same.

> Remove unused variables from java files of accounting component
> ---
>
> Key: OFBIZ-7881
> URL: https://issues.apache.org/jira/browse/OFBIZ-7881
> Project: OFBiz
>  Issue Type: Sub-task
>  Components: accounting
>        Reporter: Pradhan Yash Sharma
>    Assignee: Pradhan Yash Sharma
>Priority: Minor
> Fix For: Trunk
>
> Attachments: OFBIZ-7881.patch
>
>
> Remove unused variables from java files of accounting component.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (OFBIZ-7881) Remove unused variables from java files of accounting component

2016-07-16 Thread Pradhan Yash Sharma (JIRA)

 [ 
https://issues.apache.org/jira/browse/OFBIZ-7881?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Pradhan Yash Sharma updated OFBIZ-7881:
---
Attachment: OFBIZ-7881.patch

> Remove unused variables from java files of accounting component
> ---
>
> Key: OFBIZ-7881
> URL: https://issues.apache.org/jira/browse/OFBIZ-7881
> Project: OFBiz
>  Issue Type: Sub-task
>  Components: accounting
>    Reporter: Pradhan Yash Sharma
>    Assignee: Pradhan Yash Sharma
>Priority: Minor
> Fix For: Trunk
>
> Attachments: OFBIZ-7881.patch
>
>
> Remove unused variables from java files of accounting component.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Created] (OFBIZ-7881) Remove unused variables from java files of accounting component

2016-07-16 Thread Pradhan Yash Sharma (JIRA)
Pradhan Yash Sharma created OFBIZ-7881:
--

 Summary: Remove unused variables from java files of accounting 
component
 Key: OFBIZ-7881
 URL: https://issues.apache.org/jira/browse/OFBIZ-7881
 Project: OFBiz
  Issue Type: Sub-task
  Components: accounting
Reporter: Pradhan Yash Sharma
Assignee: Pradhan Yash Sharma
Priority: Minor
 Fix For: Trunk


Remove unused variables from java files of accounting component.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (OFBIZ-7592) Show price column in supplier product lookup during PO creation

2016-06-24 Thread Pradhan Yash Sharma (JIRA)

 [ 
https://issues.apache.org/jira/browse/OFBIZ-7592?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Pradhan Yash Sharma updated OFBIZ-7592:
---
Attachment: productfeature.patch

Please find patch for the issue.

> Show price column in supplier product lookup during PO creation
> ---
>
> Key: OFBIZ-7592
> URL: https://issues.apache.org/jira/browse/OFBIZ-7592
> Project: OFBiz
>  Issue Type: Improvement
>  Components: order
>Affects Versions: Trunk
>Reporter: Nameet Jain
>Priority: Minor
> Attachments: productfeature.patch
>
>




--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (OFBIZ-5402) Incorrect contact information displayed on purchase order view page

2016-06-18 Thread Pradhan Yash Sharma (JIRA)

[ 
https://issues.apache.org/jira/browse/OFBIZ-5402?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15337925#comment-15337925
 ] 

Pradhan Yash Sharma commented on OFBIZ-5402:


Hello, I was wondering which Contact Mech Purpose Type should be shown near 
Supplier name it could be General Location or Billing Location or some thing 
else.

> Incorrect contact information displayed on purchase order view page
> ---
>
> Key: OFBIZ-5402
> URL: https://issues.apache.org/jira/browse/OFBIZ-5402
> Project: OFBiz
>  Issue Type: Improvement
>  Components: order
>Affects Versions: Trunk
>Reporter: Christian Carlow
>Priority: Trivial
> Attachments: OFBiz-5402-UX-Improvement.png
>
>
> Ship group destinations are listed in the contact information screen on the 
> purchase order view page but the party is set to the supplier.  It seems like 
> the address information listed should relate to the party of the screen, so 
> the supplier contact information should probably appear.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)