@Deprecated
@Restricted(NoExternalUse.class)
@RestrictedSince("3.4.0")
public GitSCMSource(String id, String remote, String credentialsId, String remoteName, String rawRefSpecs, String includes, String excludes, boolean ignoreOnPushNotifications) {
super(id);
this.remote = remote;
this.credentialsId = credentialsId;
List<SCMSourceTrait> traits = new ArrayList<>();
traits.add(new BranchDiscoveryTrait());
if (!DEFAULT_INCLUDES.equals(includes) || !DEFAULT_EXCLUDES.equals(excludes)) {
traits.add(new WildcardSCMHeadFilterTrait(includes, excludes));
}
if (!DEFAULT_REMOTE_NAME.equals(remoteName) && StringUtils.isNotBlank(remoteName)) {
traits.add(new RemoteNameSCMSourceTrait(remoteName));
}
if (ignoreOnPushNotifications) {
traits.add(new IgnoreOnPushNotificationTrait());
}
RefSpecsSCMSourceTrait trait = asRefSpecsSCMSourceTrait(rawRefSpecs, remoteName);
if (trait != null) {
traits.add(trait);
}
setTraits(traits);
}