com.luntsys.luntbuild.remoting
Interface ILuntbuild


public interface ILuntbuild

This interface is to define general services provided by luntbuild system. Other system interact with luntbuild through this interface

Author:
robin shine

Method Summary
 BuildScheduleFacade getBuildScheduleByName(ViewFacade viewFacade, java.lang.String scheduleName)
          Get build schedule by view and schedule name, if more than one build schedule have the same name, a random build schedule will be returned
 BuildFacade getLastBuild(BuildScheduleFacade buildScheduleFacade)
          Get latest build for specified build schedule
 BuildFacade getLastSuccessBuild(BuildScheduleFacade buildScheduleFacade)
          Get last successful build for specified build schedule
 ProjectFacade getProjectByName(java.lang.String projectName)
          Get project by project name, if more than one project have the same name, a random project will be returned
 ScheduleFacade getScheduleByName(java.lang.String scheduleName)
          Get schedule by schedule name, if more than one schedule have the same name, a random schedule will be returned
 java.lang.String getSystemProperty(java.lang.String propertyName)
          Get luntbuild system property value by specifying property name.
 ViewFacade getViewByName(ProjectFacade projectFacade, java.lang.String viewName)
          Get view by project and view name, if more than one view have the same name, a random view will be returned
 void saveBuildSchedule(BuildScheduleFacade buildScheduleFacade)
          Update properties of a build schedule based on its facade object
 void saveProject(ProjectFacade projectFacade)
          Update properties of a project based on its facade object
 void saveSchedule(ScheduleFacade scheduleFacade)
          Update properties of a schedule based on its facade object
 void saveView(ViewFacade viewFacade)
          Update properties of a view based on its facade object
 java.util.List searchBuilds(SearchCriteria condition, int start, int count)
          Search for builds in the system
 void setSystemProperty(java.lang.String propertyName, java.lang.String propertyValue)
          Set luntbuild system property value.
 void triggerBuild(BuildScheduleFacade buildScheduleFacade, java.lang.String buildAsVersion, java.lang.String buildType, java.lang.String postbuildStrategy, java.lang.String labelStrategy, java.lang.String notifyStrategy)
          Trigger a build within specified build schedule
 

Method Detail

getProjectByName

public ProjectFacade getProjectByName(java.lang.String projectName)
Get project by project name, if more than one project have the same name, a random project will be returned

Parameters:
projectName - name of the returned project
Returns:
one of the project with specified name, or null if no projects have this name

getViewByName

public ViewFacade getViewByName(ProjectFacade projectFacade,
                                java.lang.String viewName)
Get view by project and view name, if more than one view have the same name, a random view will be returned

Parameters:
projectFacade - project facade of the returned view
viewName - name of the returned view
Returns:
one of the view with specified project and name, or null if no views within specified project have the specified name

getBuildScheduleByName

public BuildScheduleFacade getBuildScheduleByName(ViewFacade viewFacade,
                                                  java.lang.String scheduleName)
Get build schedule by view and schedule name, if more than one build schedule have the same name, a random build schedule will be returned

Parameters:
viewFacade - view facade of the returned build schedule
scheduleName - name of the returned build schedule
Returns:
one of the build schedule with specified view and name, or null if no build schedules within specified view have the specified name

getScheduleByName

public ScheduleFacade getScheduleByName(java.lang.String scheduleName)
Get schedule by schedule name, if more than one schedule have the same name, a random schedule will be returned

Parameters:
scheduleName - name of the returned schedule
Returns:
one of the schedule with specified name, or null if no schedules have this name

triggerBuild

public void triggerBuild(BuildScheduleFacade buildScheduleFacade,
                         java.lang.String buildAsVersion,
                         java.lang.String buildType,
                         java.lang.String postbuildStrategy,
                         java.lang.String labelStrategy,
                         java.lang.String notifyStrategy)
Trigger a build within specified build schedule

Parameters:
buildScheduleFacade - the build schedule to trigger a build in, refer to BuildScheduleFacade
buildAsVersion - the version of the new build, or null if use default version
buildType - specifies clean or increment build, or null if use default build type see constant definition for build type in BuildScheduleFacade
postbuildStrategy - post-build strategy of this new build, or null if use default post-build strategy. see constant definitions for post-build strategy in BuildScheduleFacade
labelStrategy - label strategy of this new build, or null if use default lable strategy. see constant definitions for label strategy in BuildScheduleFacade
notifyStrategy - notify strategy of this new build, or null if use default notify strategy. see constant definitions for notify strategy in BuildScheduleFacade

saveProject

public void saveProject(ProjectFacade projectFacade)
Update properties of a project based on its facade object

Parameters:
projectFacade -

saveView

public void saveView(ViewFacade viewFacade)
Update properties of a view based on its facade object

Parameters:
viewFacade -

saveSchedule

public void saveSchedule(ScheduleFacade scheduleFacade)
Update properties of a schedule based on its facade object

Parameters:
scheduleFacade -

saveBuildSchedule

public void saveBuildSchedule(BuildScheduleFacade buildScheduleFacade)
Update properties of a build schedule based on its facade object

Parameters:
buildScheduleFacade -

getSystemProperty

public java.lang.String getSystemProperty(java.lang.String propertyName)
Get luntbuild system property value by specifying property name. Refer to SystemPropertyNames for defined system property names

Parameters:
propertyName -
Returns:
luntbuild system property value

setSystemProperty

public void setSystemProperty(java.lang.String propertyName,
                              java.lang.String propertyValue)
Set luntbuild system property value. Refer to SystemPropertyNames for defined system property names

Parameters:
propertyName -
propertyValue -

searchBuilds

public java.util.List searchBuilds(SearchCriteria condition,
                                   int start,
                                   int count)
Search for builds in the system

Parameters:
condition - the condition matching builds should meet
start - start position of search operation
count - number of builds to retrieve. No limit will be set on number of returned builds if this value equals to 0
Returns:
found builds

getLastBuild

public BuildFacade getLastBuild(BuildScheduleFacade buildScheduleFacade)
Get latest build for specified build schedule

Parameters:
buildScheduleFacade -
Returns:
maybe null if there are not any builds inside this build schedule

getLastSuccessBuild

public BuildFacade getLastSuccessBuild(BuildScheduleFacade buildScheduleFacade)
Get last successful build for specified build schedule

Parameters:
buildScheduleFacade -
Returns:
maybe null if there are not any successful builds inside this build schedule


Copyright © 2004 Luntsys Corp. All Rights Reserved.