History | Log In     View a printable version of the current page.  
Issue Details (XML | Word | Printable)

Key: QB-3640
Type: Improvement Improvement
Status: Closed Closed
Resolution: Won't Fix
Priority: Major Major
Assignee: Robin Shen
Reporter: Maciej M
Votes: 0
Watchers: 0
Operations

If you were logged in you would be able to see more operations.
QuickBuild

Add QuickBuild Context to API so it could be passed to groovy script

Created: 26/Nov/20 04:26 AM   Updated: 15/Feb/21 02:21 PM
Component/s: None
Affects Version/s: 10.0.24
Fix Version/s: None

Original Estimate: Unknown Remaining Estimate: Unknown Time Spent: Unknown


 Description  « Hide
Hello,

I'm writing new Maven library - similar to this example https://track.pmease.com/browse/QB-3503
I need QuickBuild Context during development, so I could mock QB API and also during runtime it could be resolved in script in QuickBuild

Let's present it on example:

In my IDEA:
--------------------------------------------------------------
It would be perfect to add Maven dependency into my Groovy/Java project like:

        <dependency>
            <groupId>com.pmease.quickbuild</groupId>
            <artifactId>qb-context</artifactId>
            <version>1.0</version>
        </dependency>

FancyClass.java:

--------------------------------------------------------------
package example.for.robin

import com.pmease.quickbuild.Context

public class FancyClass {
    Context qbContext;

    FancyClass(Context context){
        this.qbContext = context;
        dummyVarGet("test");
    }
    
    void dummyVarGet(String varName){
        String varValue = qbContext.vars.getValue(varName)
        System.out.println(varValue);
    }
}
--------------------------------------------------------------


So In QB script field I'd expect something like this:
--------------------------------------------------------------
groovy:

@Grab("example.for.robin:Tool:1.0")
import example.for.robin.FancyClass

QBContext context = QBContext.getContext() // Available in QB API

FancyClass fancyClass = new FancyClass(context)
--------------------------------------------------------------

Best Regards
Maciej


 All   Comments   Work Log   Change History      Sort Order:
Change by Robin Shen [15/Feb/21 02:21 PM]
Field Original Value New Value
Status Open [ 1 ] Closed [ 6 ]
Resolution Won't Fix [ 2 ]