# -*- Mode:Python; indent-tabs-mode:nil; tab-width:4 -*-## Copyright 2022 Canonical Ltd.## This program is free software; you can redistribute it and/or# modify it under the terms of the GNU Lesser General Public# License version 3 as published by the Free Software Foundation.## This program is distributed in the hope that it will be useful,# but WITHOUT ANY WARRANTY; without even the implied warranty of# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU# Lesser General Public License for more details.## You should have received a copy of the GNU Lesser General Public License# along with this program. If not, see <http://www.gnu.org/licenses/>."""Implement the plain file source handler."""frompathlibimportPathfromtypingimportAny,Literalfromoverridesimportoverridesfromcraft_parts.dirsimportProjectDirsfrom.baseimportBaseFileSourceModel,FileSourceHandler,get_model_config
[docs]classFileSourceModel(BaseFileSourceModel,frozen=True):# type: ignore[misc]"""Pydantic model for plain file source."""model_config=get_model_config()source_type:Literal["file"]
[docs]@overridesdefprovision(self,dst:Path,keep:bool=False,# noqa: FBT001, FBT002src:Path|None=None,)->None:"""Process the source file to extract its payload."""