diff --git a/src/java/fr/paris/lutece/plugins/releaser/business/Component.java b/src/java/fr/paris/lutece/plugins/releaser/business/Component.java index 6887b82..5b3ce98 100644 --- a/src/java/fr/paris/lutece/plugins/releaser/business/Component.java +++ b/src/java/fr/paris/lutece/plugins/releaser/business/Component.java @@ -125,6 +125,12 @@ public class Component extends AbstractReleaserResource implements RBACResource /** The str scm developer connection. */ private String _strScmDeveloperConnection; + + /** The str scm url. */ + private String _strScmUrl; + + /** The str scm connection. */ + private String _strScmConnection; /** The list of component branches. */ private List _listBranches; @@ -465,6 +471,49 @@ public void setScmDeveloperConnection( String _strScmDeveloperConnection ) { this._strScmDeveloperConnection = _strScmDeveloperConnection; } + + /** + * Gets the scm connection. + * + * @return scm connection url + */ + public String getScmConnection( ) + { + return _strScmConnection; + } + + + /** + * Sets the scm connection. + * + * @param _strScmConnection + * scm connection url + */ + public void setScmConnection( String _strScmConnection ) + { + this._strScmConnection = _strScmConnection; + } + + /** + * Gets the scm url. + * + * @return scm url + */ + public String getScmUrl( ) + { + return _strScmUrl; + } + + /** + * Sets the scm url. + * + * @param _strScmUrl + * scm developer connection url + */ + public void setScmUrl( String _strScmUrl ) + { + this._strScmUrl = _strScmUrl; + } /** * Checks if is snapshot version. @@ -654,17 +703,6 @@ public void setTweetMessage( String _strTweetMessage ) this._strTweetMessage = _strTweetMessage; } - /** - * Gets the scm url. - * - * @return the scm url - */ - @Override - public String getScmUrl( ) - { - // TODO Auto-generated method stub - return getScmDeveloperConnection( ); - } @Override public String getResourceTypeCode( ) diff --git a/src/java/fr/paris/lutece/plugins/releaser/service/ComponentService.java b/src/java/fr/paris/lutece/plugins/releaser/service/ComponentService.java index 2fe991e..cdc190c 100644 --- a/src/java/fr/paris/lutece/plugins/releaser/service/ComponentService.java +++ b/src/java/fr/paris/lutece/plugins/releaser/service/ComponentService.java @@ -436,14 +436,21 @@ public boolean isErrorSnapshotComponentInformations( Component component, String { inputStream = new FileInputStream( strComponentPomPath ); parser.parse( componentPom, inputStream ); + if ( component != null && componentPom != null && component.getArtifactId( ).equals( componentPom.getArtifactId( ) ) - && component.getLastAvailableSnapshotVersion( ).equals( componentPom.getCurrentVersion( ) ) ) + && component.getLastAvailableSnapshotVersion( ).equals( componentPom.getCurrentVersion( ) ) + && componentPom.getScmDeveloperConnection( ) != null + && component.getScmDeveloperConnection().equals(componentPom.getScmDeveloperConnection( ) ) ) + { bError = false; } + + + } catch( FileNotFoundException e ) @@ -454,6 +461,45 @@ public boolean isErrorSnapshotComponentInformations( Component component, String return bError; } + + public boolean isErrorScmMarker( Component component, String strComponentPomPath ) + { + + boolean bError = true; + + PomParser parser = new PomParser( ); + Component componentPom = new Component( ); + + FileInputStream inputStream; + try + { + + inputStream = new FileInputStream( strComponentPomPath ); + parser.parse( componentPom, inputStream ); + String scmUrl = componentPom.getScmDeveloperConnection( ).replaceFirst( "^scm:git:" , "" ); + + if ( componentPom.getScmDeveloperConnection( ) != null + && componentPom.getScmConnection( ).equals(componentPom.getScmDeveloperConnection( ) ) + && componentPom.getScmDeveloperConnection( ).startsWith( "scm:git:" ) + && componentPom.getScmDeveloperConnection( ).endsWith( ".git" ) + && componentPom.getScmUrl( ).equals( scmUrl ) ) + { + + bError = false; + + } + + } + + catch( FileNotFoundException e ) + { + + AppLogService.error( e ); + + } + + return bError; + } /** * Change the next release version diff --git a/src/java/fr/paris/lutece/plugins/releaser/service/SiteService.java b/src/java/fr/paris/lutece/plugins/releaser/service/SiteService.java index 3d84cf6..502f8e8 100644 --- a/src/java/fr/paris/lutece/plugins/releaser/service/SiteService.java +++ b/src/java/fr/paris/lutece/plugins/releaser/service/SiteService.java @@ -66,6 +66,7 @@ import fr.paris.lutece.plugins.releaser.util.pom.PomUpdater; import fr.paris.lutece.plugins.releaser.util.version.Version; import fr.paris.lutece.plugins.releaser.util.version.VersionParsingException; +import fr.paris.lutece.plugins.releaser.web.TestJGitClone; import fr.paris.lutece.portal.business.user.AdminUser; import fr.paris.lutece.portal.service.datastore.DatastoreService; import fr.paris.lutece.portal.service.i18n.I18nService; @@ -76,6 +77,7 @@ import fr.paris.lutece.portal.service.util.AppPropertiesService; import fr.paris.lutece.util.httpaccess.HttpAccessException; + // TODO: Auto-generated Javadoc /** * SiteService. @@ -120,9 +122,13 @@ public class SiteService */ public static Site getSite( int nSiteId, HttpServletRequest request, Locale locale ) { + //TestJGitClone jgitclone = new TestJGitClone(); + TestJGitClone.main(null); Site site = SiteHome.findByPrimaryKey( nSiteId ); String strPom = null; ReleaserUser user = ReleaserUtils.getReleaserUser( request, locale ); + + if ( user != null ) { @@ -160,6 +166,10 @@ private static void initSite( Site site, HttpServletRequest request, Locale loca ReleaserUser user = ReleaserUtils.getReleaserUser( request, locale ); Credential credential = user.getCredential( site.getRepoType( ) ); + + //TestJGitClone jgitclone = new TestJGitClone(); + TestJGitClone.main(null); + // Find last release in the repository String strLastReleaseVersion = CVSFactoryService.getService( site.getRepoType( ) ).getLastRelease( site, credential.getLogin( ), @@ -176,6 +186,8 @@ private static void initSite( Site site, HttpServletRequest request, Locale loca site.setBranchReleaseFrom( GitUtils.DEFAULT_RELEASE_BRANCH ); initComponents( site ); + + } /** diff --git a/src/java/fr/paris/lutece/plugins/releaser/util/pom/PomParser.java b/src/java/fr/paris/lutece/plugins/releaser/util/pom/PomParser.java index 1dd220f..2b272f9 100644 --- a/src/java/fr/paris/lutece/plugins/releaser/util/pom/PomParser.java +++ b/src/java/fr/paris/lutece/plugins/releaser/util/pom/PomParser.java @@ -130,6 +130,8 @@ public void parse( Component component, String strPOM ) if ( model.getScm( ) != null ) { component.setScmDeveloperConnection( model.getScm( ).getDeveloperConnection( ) ); + component.setScmConnection(model.getScm().getConnection()); + component.setScmUrl(model.getScm().getUrl()); component.setBranchReleaseVersion( model.getVersion( ) ); } @@ -162,6 +164,8 @@ public void parse( Component component, InputStream inputStream ) if ( model.getScm( ) != null ) { component.setScmDeveloperConnection( model.getScm( ).getDeveloperConnection( ) ); + component.setScmConnection(model.getScm().getConnection()); + component.setScmUrl(model.getScm().getUrl()); }