/// <summary>
/// a package can be published if it's stereotype is present in the list of allowed stereotypes in the settings
/// </summary>
/// <param name="package">the package to publish</param>
/// <returns>whether or not a package can be published</returns>
private bool canBePublished(UML.Classes.Kernel.Package package)
{
return(package != null &&
(package.stereotypes.Any
(x => this.settings.imvertorStereotypes.Any
(y => y.Equals(x.name, StringComparison.InvariantCultureIgnoreCase))) ||
package.taggedValues.Any(x => "imvertor".Equals(x.name, StringComparison.InvariantCultureIgnoreCase) &&
"model".Equals(x.tagValue.ToString(), StringComparison.InvariantCultureIgnoreCase))) &&
EAImvertorJob.getProjectPackage(package) != null);
}